John破解Linux密码

这几天因为一个项目需要破解linux密码,之前就做过,但是没有记录,这次又忘了,简单记录下

http://www.openwall.com/john/

到这里下载john linux\windows\mac都可以的,但是一定要注意下载社区版的普通版本密文识别度不高

0x01 准备

linux直接编译安装好John

破解

unshadow /etc/passwd /etc/shadow > my_pass

将密码和用户名相对应起来,这是我的理解了

然后直接

john my_pass

当然也可以用你自己的字典

john --wordlist=<filepath> my_pass

其他命令

john 其他命令附录:

命令格式: john [-功能选项] [密码文件名]

功能选项
-single
使用单一模式进行解密。

-wordfile:<字典文件名> -stdin
指定解密字典文件。

-rules
打开字典模式的词汇表切分规则。

-incremental:<模式名称>
使用遍历模式,就是组合密码的所有可能情况。

-external:<模式名称>
使用自定义的扩展解密模式,定义的自订破解功能。

-stdout :<模式名称>
不进行破解,仅仅把生成的、要测试是否为口令的词汇输出到标准输出上。

-restore:<文件名>
恢复JOHN被中断破解过程,当前解密进度情况被存放在RESTORE文件中。

-makechars:<文件名>
制作一个字符表,你所指定的文件如果存在,则将会被覆盖。

-show
显示已经破解出的密码。

-test
测试当前机器运行JOHN的解密速度。

-users:[,..]
只破解某类型的用户或者属于某个组的用户。

-shells:[!][,..]
该选项可以选择对所有可以使用shell的用户进行解密,对其他他用户不予理睬。“!”就是表示不要某些类型的用户。

-groups=[-]GID[,..]
对指定用户组的账户进行破解,减号表示反向操作,说明对列出组之外的账户进行破解。

-list
在解密过程中在屏幕上列出所有正在尝试使用的密码。

format=NAME
指定密文格式名称,为DES/BSDI/MD5/BF/AFS/LM之一。

-save-memory=LEVEL
设置内存节省模式,当内存不多时选用这个选项。LEVEL取值在1~3之间。

发表评论