弱口令猜测工具-John The Ripper

时间:2024-03-14 08:02:07

John the Ripper免费的开源软件,是一个快速的密码**工具,用于在已知密文的情况下尝试**出明文的**密码软件,支持目前大多数的加密算法,如DES、MD4、MD5等。它支持多种不同类型的系统架构,包括Unix、Linux、Windows、DOS模式、BeOS和OpenVMS,主要目的是**不够牢固的Unix/Linux系统密码。目前的最新版本是John the Ripper 1.8.0版,针对Windows平台的最新免费版为John the Ripper 1.7.9版。

John是Kali Linux的十大安全工具,在Ubuntu上,可以通过软件包管理器( synaptic package manager )来安装。john the Ripper主要读取linux文件下的/etc/shadow文件。

安装John the Ripper

下载: wget http://www.openwall.com/john/j/john-1.8.0.tar.gz

解压: tar xvf john-1.8.0.tar.gz -C ./        使用tar xvf john-1.8.0.tar.gz -C ./ 命令将源码压缩包解压到当前目录

进入指定目录:cd /john-1.8.0/run/src        切换到john-1.8.0目录里,可以看到手册文档(doc),运行程序(run),源码文件(src),进入到源码文件里

安装编译环境: yum -y install gcc gcc-c++       在编译安装之前,使用yum命令安装的前提是要搭建好yum仓库

编译:make clean linux-x86-64        完成之后,在run目录下会生成一个名为john的可执行程序

复制shadow文件: cp /etc/shadow   ./mima

执行john程序:./john ./mima   进行弱口令分析

john**模式:

【字典档】**模式(wordlist Mod)

命令:./john -w:password.txt passwd1.txt         password.txt是密码字典    passwd1.txt是需要**的文件

【简单】**模式(single *****)

命令:./john -single passwd1.txt

john是单线程任务,如果中途切断了**,需要删除john.rec文件。

命令:rm ./john.rec

john**出来的密码存储在john.pot文件中

查看命令:cat ./john.pot

/etc/shadow文件解读:

/etc/passwd中一个用户对应一条记录,记录着这个用户的基本属性。该文件对所有用户可读。

/etc/shadow文件是passwd文件的一个影子,/etc/shadow文件中的记录行与/etc/passwd中的一一对应,它由pwconv命令根据/etc/passwd中的数据自动产生。但是/etc/shadow文件只有系统管理员才能够进行修改和查看。

/etc/shadow的截图:

弱口令猜测工具-John The Ripper

账户名:账户名与/etc/passwd里面的账户名是一一对应的关系。

密码:这里可以看到3类,分别是奇奇怪怪的字符串、*和!!其中,奇奇怪怪的字符串就是加密过的密码文件。星号代表帐号被锁定,双叹号表示这个密码已经过期了。奇奇怪怪的字符串是以$6$开头的,表明是用SHA-512加密的,$1$ 表明是用MD5加密的、$2$ 是用Blowfish加密的、$5$是用 SHA-256加密的。

修改日期:这个是表明上一次修改密码的日期与1970-1-1相距的天数密码不可改的天数:假如这个数字是8,则8天内不可改密码,如果是0,则随时可以改。

密码需要修改的期限:如果是99999则永远不用改。如果是其其他数字比如12345,那么必须在距离1970-1-1的12345天内修改密码,否则密码失效。

修改期限前N天发出警告:比如你在第五条规定今年6月20号规定密码必须被修改,系统会从距离6-20号的N天前向对应的用户发出警告。

密码过期的宽限:假设这个数字被设定为M,那么帐号过期的M天内修改密码是可以修改的,改了之后账户可以继续使用。

帐号失效日期:假设这个日期为X,与第三条一样,X表示的日期依然是1970-1-1相距的天数,过了X之后,帐号失效。

保留:被保留项,暂时还没有被用上。

参考地址:http://blog.51cto.com/13728740/2137550