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

相关推荐

  • ​linux文件类型及颜色标识整理

          linux文件类型及颜色标识整理                      &…

    Linux干货 2016-10-17
  • 啊 逗比呀!

    提示符,nano编辑,rz | sz命令,Sublime

    2017-11-19
  • LVM——如何让你的磁盘空间可大可小

    逻辑卷管理器(LVM) 允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小 允许在多个物理设备间重新组织文件系统          将设备指定为物理卷          用一个或者多个物理卷来创…

    Linux干货 2016-08-29
  • 文件系统磁盘管理上

    磁盘:主要作用用于存储数据 早期一块硬盘共有256个盘面,每个盘面有1024个磁道,每个磁道有63个扇区,每个扇区的大小是512byte 硬盘的命名: 早期IDE硬盘标记为hd scsi、usb、sas标记为sd 引用设备的方式 设备文件名 标卷 UUID 硬盘分区: 第0个磁道的第0个扇区存放的是磁盘的信息 MBR:Master Boot Record 主…

    Linux干货 2016-08-30
  • Linux系统程序包的安装–RPM

           我们知道在操作系统上使用的程序都是有程序员通过开发工具得来的,程序员直接编写的纯文本的文件,我们称之为源代码,由于计算机识别的是二进制程序,因此在完成源代码编写之后,就必须要经过编译,使之成为操作系统可以“看得懂”的二进制程序,这里的编译是通过编译器来进行的操作,编译器的功能就是将源代码程序“转换”为二进…

    2017-04-23
  • vfork 挂掉的一个问题

    在知乎上,有个人问了这样的一个问题——为什么vfork的子进程里用return,整个程序会挂掉,而且exit()不会?并给出了如下的代码,下面的代码一运行就挂掉了,但如果把子进程的return改成exit(0)就没事。 我受邀后本来不想回答这个问题的,因为这个问题明显就是RTFM的事,后来,发现这个问题放在那里好长时间,而挂在下面的几个答案又跑偏得比较严重,…

    Linux干货 2016-08-15