破解Linux的用户密码:John 【跨平台的密码解密工具】
root@only:~# unshadow /etc/passwd /etc/shadow > ~/file_to_crack
root@only:~# john --wordlist=/usr/share/john/password.lst ~/file_to_crack
rm -rf /root/.john/john.pot
unshadow p s >file
john --wordlist=zidian.txt file
john -w:zidian.txt file
p—— root❌0:0:root:/root:/bin/bash
s—— root:
1
1
1flPjKUKk$FRforz6oUD084UzrDXBsS1:16993:0:99999:7:::
file——root:
1
1
1flPjKUKk$FRforz6oUD084UzrDXBsS1:0:0:root:/root:/bin/bash
使用方法
用法:命令行方式:john [-功能选项] [密码文件名] 功能选项(所有的选项均对大小写不敏感,而且也不需要全部输入,只要在保证不与其他参数冲突的前提下输入即可,如-restore参数只要输入-res即可):
-pwfile:[,…]
用于指定存放密文所在的文件名,(可以输入多个,文件名“,”分隔,也可以使用*或者这两个通配符引用一批文件)。也可以不使用此参数,将文件名放在命令行的最后即可。
-wordfile:<字典文件名>-stdin
指定的用于解密用的字典文件名。你也可以使用STDIO来输入,就是在键盘中输入。
-rules
在解密过程中使用单词规则变化功能。如将尝试cool单词的其他可能,如COOLER、Cool等,详细规则可以在JOHN.INI文件中的[List.Rules:Wordlist]部分查到,我们在下面详细解释。
-incremental[:<模式名称>]
使用遍历模式,就是组合密码的所有可能情况,同样可以在JOHN.INI文件中的[Incremental]部分查到,我们在下面详细解释。
-single
使用单一模式进行解密,主要是根据用户名产生变化来猜测解密,可以消灭笨蛋用户。其组合规则可以在JOHN.INI文件中的[List.Rules:Single]部分查到。
-external:<模式名称>
使用自定义的扩展解密模式,你可以在john.ini中定义自己需要的密码组合方式。JOHN也在INI文件中给出了几个示例,在INI文件的[List.External]中所定义的自订破解功能。
-restore[:<文件名>]
继续上次的破解工作,JOHN被中断后,当前的解密进度情况被存放在RESTORE文件中,你可以拷贝这个文件到一个新的文件中。如果参数后不带文件名,JOHN默认使用RESTORE文件。
-makechars:<文件名>
制作一个字符表,你所指定的文件如果存在,则将会被覆盖。JOHN尝试使用内在规则在相应密匙空间中生成一个最有可能击中的密码组合,它会参考在JOHN.POT文件中已经存在的密匙。
-show
显示已经破解出的密码,因为JOHN.POT文件中并不包含用户名,同时你应该输入相应的包含密码的文件名,JOHN会输出已经被解密的用户连同密码的详细表格。