John the Ripper

John The Ripper是一个免费的密码破解工具。它最初为Unix操作系统开发，但可以在十五种不同的平台上运行（其中十一种是特殊体系结构的Unix，以及DOS，Win32，BeOS和OpenVMS版本）。它是最常用的密码测试和破解程序之一，因为它将许多密码破解程序组合到一个软件包中，可以自动检测密码的雜湊值类型，并包括可自定义的破解程序。它可以针对各种加密的密码格式运行（这包括了各种基于DES，MD5或Blowfish加密的Unix版本，Kerberos AFS和Windows NT/2000/XP/2003中最常见的几种加密密码雜湊值类型）。其他模块扩展了其功能，以扩展在基于MD4的密码雜湊值和存储在LDAP、MySQL等中的密码破解功能。

样本输出 

这是在Debian Linux环境下的样本输出:

$ cat pass.txt
user:AZl.zWwxIh15Q
$ john -w:password.lst pass.txt
Loaded 1 password hash (Traditional DES [24/32 4K])
example         (user)
guesses: 1  time: 0:00:00:00 100%  c/s: 752  trying: 12345 - pookie

第一行的命令是显示pass.txt中的内容。下一行是这个文件的内容，即用户AZl和用户关联的雜湊值zWwxIh15Q。第三行使用了-w参数运行John The Ripper的命令。password.lst是一个文本文件的名称，该文件充满了程序将对雜湊值进行处理的单词，pass.txt是我们希望John处理的文件。

然后我们看到了John The Ripper的输出结果。加载了1个密码雜湊值（我们在cat命令中看到的密码）以及John The Ripprt猜测的雜湊值类型（为传统DES）。 我们还看到，尝试需要在0的时间进行一次猜测，猜测率为100％。

攻击类型 

John The Ripper可以使用的模式中，其中一种是字典攻击。它通常从文件获取文本字符串样本通常从文件（称为单词列表，其中包含在词典中找到的单词或之前破解的真实密码），以与检查的密码相同的格式对其进行加密（包括加密算法和密钥），并将输出与加密的字符串进行比较。它还可以对字典单词进行各种修改，并尝试这些修改。这些更改中的许多更改也用在John The Ripper的单一攻击模式中，该模式修改了关联的纯文本（例如带有加密密码的用户名），并根据雜湊值检查了变化。

John The Ripper还提供了暴力模式。在这种模式的攻击中，程序将遍历所有可能是密钥的纯文本，对每个纯文本进行雜湊運算，然后将其与输入雜湊值进行比较。John The Ripper使用字符频率表来尝试首先包含较为常用的字符纯文本。此方法对于破解未出现在词典单词列表中的密码很有用，但运行时间较长。

参见 

暴力搜索 
蛮力攻击
黑客 (计算机安全)

参考文献

外部链接 

密码破解软件
自由安全软件
跨平台軟體
密码分析软件