Linux John密码破解


    Join是根据/etc/shadow来破解密码的,最新版本 john-1.7.8,经常用来验证密码的强度,是否容易被破解等等。

下载Join,解压在root目录下 /root/john-1.7.8/run 

      配置文件是john.conf , 破解成功后密码在jhon.pot中,只是密码。


1 进入/root/john-1.7.8/run目录,用jhon自带的工具unshadow读取/etc/shadow
  ./unshadow /etc/passwd > /root/john-1.7.8/run/passwd.txt
  eg: 如果是root用户可以直接cat /etc/shadow > /root/john-1.7.8/run/passwd.txt
  
2 第一步用Single Crack 模式破解
  Single Crack 
  专门针对使用账号做密码的人,他会尝试用户名的变体,在john.conf中的[List.Rules:Single]中定义规则
  ./john --single passwd.txt
  如果破解成功则可以查看jhon.pot,或者使用:
  ./jhon --show passwd.txt 查看密码和用户
  
3 第二步用Wordlist Mode模式破解
  Wordlist Mode是一种比较简单的模式,只要确定字典档在哪里即可,在jhon.conf配置文件中有默认的字典档‘Wordlist = $JOHN/password.lst’ 即run目录下的password.lst文件,Wordlist Mode规则在jhon.conf中的[List.Rules:Wordlist]模块定义,在[List.Rules:Wordlist]下面还有一个[List.Rules:NT]模块是定义有关rules的变体规则。
  ./jhon --wordlist=password.lst passwd.txt
  或者 ./jhon --wordlist=password.lst --rules passwd.txt
  
4 第四步用Incremental Mode破解
  Incremental 是功能最强的模式,他会穷举所有的组合,然后作为密码来破解,非常耗时,在配置文件中有[Incremental:All],[Incremental:Alpha],[Incremental:Digits],[Incremental:Alnum],[Incremental:LanMan]等模块。每个模块名在run下都有对应的date文件。
  ./jhon --incremental=All  passwd.txt
  
5 第五步用External Mode破解
  External
  让使用者可以自己编写C语言的破解模式,在jhon.conf中已经自带了一些破解模式程式。
  
  
参数解释
--stdout             输出结果到屏幕
--restore            从上次解密中断的地方继续执行,ctrl+c 中断执行,当前的状态会被存放在一个名为restore的文档内,使用--restore可以从restore内读取上次中断的位置,然后继续破解下去
--session            设定当前记录档的名称
--make-charset        字元频率表,他会以破解出来的密码为基础来产生字元频率表,可用于Incremental模式
--show               显示已经破解密码,因为john.POT并不存储账号信息,使用show的时候应该输入相关的passwd文件
--test               测试机器执行各种类型密码的破解速度
--users               只破解某个账号的密码,可以是用户名或者UID号码,前面加‘-’表示不破解相关用户密码
--groups              只破解某个组内的用户密码,前面加上‘-’表示不破解某个组内用户的密码
--shells               之破解使用某种类型shell的用户,前面加上‘-’表示不破解
--salts                只破解salts大于count的密码,salts是unix用来作为密码编码的基础单位
--format                预定义密码破解的类型 DES/BSDI/MD5/BF/AFS/LM/
 
  

你可能感兴趣的:(Linux John密码破解)