shell脚本实现MD5破解的相关小计

分享编写shell脚本暴力破解md5的方法

方法一

单个破解法(以10位数为例)

#!/bin/bash

read -p “please input strings:”
string

for n in {0..33000}

do

Md5=`echo $n |md5sum|cut -c 1-10`

      if [ “${Md5}” == “$string” ]

          
then

               echo “$n is sure”

               exit

          
else

               echo “$n is no”

       
fi

done

但是效率很低,不太建议使用。很费时间,匹配时每个都要匹配一遍,匹配下一个,又要从新开始效率低。

方法二

类似于密码表的对照方法,首先生成密码表,然后在匹配。这样效率大大提升

首先生成密码表,编写脚本,内容如下(总生成了33000个随机数,如果需要,可以自行调节,增加或者减少,同样,随机数位数也可以调整)

#!/bin/bash

 

for i in `seq 1  33000`#可以调整生成数的个数

do

 

    
a=`echo $i|md5sum|cut -c 1-10`#可以调整生成数的位数

    
echo $i $a >> byq.db

 

done

 

生成后可以使用,匹配脚本如下,输入随机字符串即可

#!/bin/bash

read -p “please input some
strings:” n

 

echo `grep $n byq.db`|cut -d ” ”
-f1

 

以上内容仅供参考,比较浅显的破解方法,适合我这种初学的人,若是有更好的方法,欢迎各位大神交流指正!

原创文章,作者:oranix,如若转载,请注明出处:http://www.178linux.com/71773

(2)
oranixoranix
上一篇 2017-03-26 16:31
下一篇 2017-03-26 17:07

相关推荐

  • 8月9日vim作业

    复制/etc/rc.d/init.d/functions文件至/tmp目录;替换/tmp/functions文件中的/etc/sysconfig/init为/var/log; :%s@/etc/sysconfig@/var/log@ 删除/tmp/functions文件中所有以#开头,且#后面至少有一个空白字符的行的行首的#号 :%s@^#\([[:spac…

    Linux干货 2016-08-10
  • RHCE基础实验

    实验:配额实现 1. 启用配额功能 vim /etc/fstab defaults usrquota,grpquota mount -o remount /home 2. 创建配额数据库 quotacheck -cug /home 3. 启用数据库 quotaon /home quotaon -p /home 查看 4. edquota wang setqu…

    Linux干货 2017-05-02
  • 关于 建立私有CA和申请证书

                               建立私有CA和申请证书            …

    系统运维 2016-09-23
  • Ansible实战 lnmp 安装

    网海过客 www.chinasa.net 目录结构 ├── hosts├── roles│   └── lnmp│             ├── files│             │     &…

    Linux干货 2016-07-29
  • 逻辑卷管理

    逻辑卷管理 一 创建逻辑卷 1 准备分区或硬盘 这里使用/dev/sdb、/dev/sdc两块硬盘和/dev/sda9、/dev/sda10两个分区,大小都为1G,磁盘有限,我也不想这么抠的。 添加分区/dev/sda9、 /dev/sda10 [root@centos7 ~]# fdisk /dev/sda Welcome to fdisk (u…

    Linux干货 2017-05-02