什么是MD5
一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于加密数据。在生活中的各个领域都有所使用。如我们平时各大网站注册的账号和密码,其中密码就是通过MD5加密的方式储存在数据库中。反向行之,如果我知道了MD5值,那能否知道所对用的密码呢?答案是确定的,我们一起看看吧。
在kali中生成某组数值的md5值
执行命令
echo bbskali | md5sum
这样我们便生成了bbskali
的md5值。
效果如下:
如上我们得到了对应的md5值为c4da3fa052d104d8fbb410ae8751466d
同样,怎么通过md5值获取到相应的密文呢?
办法比较多,我们可以通过一些在线的md5解密网站来完成,但本文将介绍一款由python写的小脚本,轻松解决上诉问题。
安装与使用
git clone https://github.com/s0md3v/Hash-Buster/
cd Hash-Buster
python3 hash.py -s md5值
注意:python2 不兼容,请改用 python3 运行,当然你也可以直接编译安装make install
详情可以看看作者的介绍。
优点
优点:
- 自动哈希类型识别
- 支持
MD5
、SHA1
、SHA256
、SHA384
、SHA512
- 可以从文件中提取和破解哈希
- 可以递归地从目录中找到哈希值
多线程
其他
破解单个哈希
python3 hash.py -s <hash>
从目录中查找哈希
只需指定一个目录,Hash Buster 就会遍历其中存在的所有文件和目录,寻找哈希值。
python3 hash.py -d /root/Documents