John the Ripper

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

John the Ripper
开发者N/A
当前版本1.9.0[1](2019年5月14日 (2019-05-14)
源代码库 编辑维基数据链接
操作系统Cross-platform
类型密码破解
许可协议GNU General Public License
Proprietary (Pro version)
网站www.openwall.com/john/

样本输出

这是在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使用字符频率表来尝试首先包含较为常用的字符纯文本。此方法对于破解未出现在词典单词列表中的密码很有用,但运行时间较长。

参见

参考文献

  1. ^ 存档副本. [2020-06-03]. (原始内容存档于2020-11-08). 
  2. ^ Anonymous. Maximum Linux Security 2. Sams Publishing. 2001: 154. ISBN 0-672-32134-3. 
  3. ^ Password Crackers. Concise Cybersecurity. [2016-12-03]. (原始内容存档于2017-04-04). 
  4. ^ John the Ripper. sectools.org. [2020-06-05]. (原始内容存档于2019-03-15). 

外部链接