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

相关推荐

  • 第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。     who | cut -d ' ' -f 1 | uniq 2、取出最后登录到当前系统的用户的相关信息。    egrep "^$(who | tail -1 | cut -d ' …

    Linux干货 2016-12-19
  • N26-第十三周

    1、建立samba共享,共享目录为/data,要求:(描述完整的过程)  1)共享名为shared,工作组为magedu;  2)添加组develop,添加用户gentoo,centos和ubuntu,其中gentoo和centos以develop为附加组,ubuntu不属于develop组;密码均为用户名;  3)添加samb…

    Linux干货 2017-06-01
  • 常见RAID总结

    RAID浅析 目录索引 一、定义 二、特点 三、常用RAID级别      四、RAID实现方式 五、实际环境测试 一、定义: 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意。 独立磁盘冗余阵列(RAID,redundant array…

    Linux干货 2016-04-12
  • linux运维

    linux运维大纲,学习路线图

    Linux干货 2017-10-21
  • 用户相关文件简介

    2016/10/23 总结关于用户和组相关的配置文件 Linux系统主要有4个文件与用户和组的配置有关, 主要为/etc/passwd  /etc/shadow   /etc/group  /etc/gshadow 首先来解释一下什么是用户,什么是组 用户:      管理员用户&nbsp…

    Linux干货 2016-10-24