Md5密文破解(解密)可以说是网络攻击中的一个必不可少的环节,是黑客工具中的一个重要“辅助工具”。md5解密主要用于网络攻击,在对网站等进行入侵过程,有可能获得管理员或者其他用户的账号和密码值(md5加密后的值)。获得的密码值有两种情况,一种是明文,另外一种就是对明文进行了加密。如果密码值是加密的,这个时候就需要对密码值进行判断,如果是采取md5加密,则可以通过MD5Crack3等软件进行破解。王小云教授的md5密码碰撞破解算法没有公布,因此目前Md5解密方式主要采取暴力破解, 即软件通过算法生成字典,然后使用md5函数加密该字典中的值形成密文,接着跟需要破解的密文进行比较,如果相同则认为破解成功。目前网上有很多网站提供md5加密或者加密值查询,将加密后的md5值,输入到网站中,如果网站数据库中存在该md5,则该值对应的md5加密前的值就为密码。本案例介绍如何使用MD5Crack3以及一些在线的网站来进行破解;MD5Crack3是阿呆写的一款md5密码破解软件,其网站地址:http://www.adintr.com/subject/mdcrk/index.htm,目前已经发布了MD5Crack4.0版本,也可以到我的blog(http://simeon.blog.51cto.com/18680/144558)去下载。
Md5密文破解(解密)可以说是网络攻击中的一个必不可少的环节,是黑客工具中的一个重要“辅助工具”。md5解密主要用于网络攻击,在对网站等进行入侵过程,有可能获得管理员或者其他用户的账号和密码值(md5加密后的值)。获得的密码值有两种情况,一种是明文,另外一种就是对明文进行了加密。如果密码值是加密的,这个时候就需要对密码值进行判断,如果是采取md5加密,则可以通过MD5Crack4等软件进行破解。王小云教授的md5密码碰撞破解算法没有公布,因此目前Md5解密方式主要采取暴力破解, 即软件通过算法生成字典,然后使用md5函数加密该字典中的值形成密文,接着跟需要破解的密文进行比较,如果相同则认为破解成功。目前网上有很多网站提供md5加密或者加密值查询,将加密后的md5值,输入到网站中,如果网站数据库中存在该md5,则该值对应的md5加密前的值就为密码。
在浏览器中输入地址“http://www.cmd5.com/”,在输入框中输入想要加密的原始密码,然后单击“md5加密或解密”按钮即可,如图1 所示,原始密码为“goodman88”,加密后的密码值为:
MD5(goodman88,32) = d5a8e0b115259023faa219f5b53ca522
MD5(goodman88,16) = 15259023faa219f5
图1 md5加密
作为实验数据,我们在生成一组生日的md5密码如下:
MD5(19801230,32) = 2540bb62336a8eb3ebc1e42ee44c8e3d
MD5(19801230,16) = 336a8eb3ebc1e42e
通过cmd5网站破解md5密码
在cmd5网站的输入框中输入刚才加密后的md5 32值“d5a8e0b115259023faa219f5b53ca522”,然后单击“md5加密或解密”按钮即可,如图2 所示,未能成功破解。
图2 通过cmd5网站未能破解md5密码
将第二个生日加密后的md5值“2540bb62336a8eb3ebc1e42ee44c8e3d”,放入cmd5网站进行破解,很快其结果就出来了,如图3 所示。
图3 破解简单的数字密码
一些在线网站提供的md5密码破解只能破解已经收录和一些简单的密码,对于稍微复杂一点的密码,都不容易被破解;而且对一些稍微有点难度的md5密码值,如果数据库中有,在线网站是要求付费的,例如用一个复杂一点的md5值进行破解,如图4 所示,提示找到,但是要求进行付费。
图4 要求付费才能查看md5密码值
(1)再次生成md5密码值
再在cmd5网站生成原密码为“jimmychu246”的md5密码值为:
MD5(jimmychu246,32) = 437f4fffb6b2e5aaca9fd1712b8ad282
MD5(jimmychu246,16) = b6b2e5aaca9fd171
直接运行md5crack4,运行界面如图5 示
图5 md5crack4程序主界面
(2)在md5crack4中验证md5值
将需要破解的md5值(437f4fffb6b2e5aaca9fd1712b8ad282)粘贴到“破解单个密文(Single Cryptograph)”输入框中,如图6 所示,如果该md5值是正确的,则会在“破解单个密文”输入框下方显示黑色的“有效(valid)”两个字,否则显示“valid”为灰色
图6 在md5crack4中验证md5值
(3)使用字典进行破解
在“字符设置(Plaintext Setting)”中选择“字典(Dictionary)”,并在“N0.1”、“N0.2”以及“N0.3”中选择三个不同的字典,选择完毕后,单击“Start”按钮开始md5破解,破解结束后会给出相应的提示,如图7 所示,在本案例中使用字典破解成功,在Result中显示破解的密码为“jimmychu246”。
图7 使用字典进行破解
(4)“使用字符集(Char Muster)”中的数字进行破解
将上面生成的数字md5值“336a8eb3ebc1e42e”放入单一md5密码破解输入框中,选中“Char Muster”后,依次可以选择“Number”、“lowercase”、“majuscule”、“special char”以及“custom”进行破解,在本例中使用数字进行破击,因此 “最小长度(Min Length)”中设置为“1”,“最大长度(Max Length)”中设置为“8”,然后单击“开始”按钮,使用数字进行md5破解,尝试破解密码位数从1~9999999之间的所有数字组合,如图8 所示,其密码值破解成功,破解结果为“336a8eb3ebc1e42e — [19801230]”。
图8 使用数字进行破解