安装和利用john破解linux密码

1. #cd /tmp    

     #wget http://www.openwall.com/john/g/john-1.7.4.2.tar.gz

      #tar -zxvf john-1.7.4.2.tar.gz

     # cd  john-1.7.4.2
     # cd src
     #make linux-x86-any-a.out

或者使用sudo apt-get install john

2:unshadow /etc/passwd /etc/shadow >passwd.txt (注意只有root才能执行unshadow,
                                                                        因为只有root才能读取/etc/shadow。)
3:chmod 600 passwd.txt
4: john passwd.txt

此外,如果已经破解成功,则可以查看john.pot来查看。

#john -show passwd.txt

#john -show -users:yujs passwd.txt
获得指定用户的密码。
John the Ripper的四种破解模式

字典档」破解模式(Wordlist Mode) 
这在John所支援的破解模式中是最简单的一种,你要做的唯一工作就是告诉John字典档在哪(字典档就是文字档,内容每行一个单字代表试验的密码),好让它可以取出破解。在「字典档」破解模式里可以使用「字词变化」功能,来让这些规则自动的套用在每个读入的单字中,以增加破解的机率。 

简单」破解模式(Single Crack) 
「简单」破解模式是专门针对「使用帐号当作密码」的懒人所设计的;所谓「使用帐号当作密码」的意思是,如果一个使用者帐号是「john」,它的密码也取为「john」。在「简单」破解模式里john会拿密码档内的「帐号」栏位等相关资讯来破解密码,并且使用多种「字词变化」的规则套用到的「帐号」内,以增加破解的机率。如帐号「john」,它会尝试用「john」、「john0」、「njoh」、「j0hn」….等规则变化来尝试密码的可能性。 

增强」破解模式(Incremental Mode) 
这是John里面功能最强大的破解模式,它会自动尝试所有可能的字元组合,然后当作密码来破解。这个破解模式所需要的时间非常冗长,因为要尝试组合字元是非常耗费时间的,所以John才会定义一些「字元频率表」(character frequencytables)来帮助破解。简言之这个破解方法就是「暴力法」,把所有可能的密码组合都测试一次,来得到正确的结果。 

外挂模组」破解模式(External Mode) 
这个破解模式是让使用者可以自己用C语言写一些「破解模组程式」,然后挂在John里面来使用。其实所谓的「破解模组程式」就是一些用C语言设计好的副函示,然后它的功能就是产生出一些单字来让John尝试破解。而

在执行John程式时,它在载入这些「破解模组程式」时会自动编译这些C语言副函示然后来使用。 (真伟大,光这点就让笔者佩服五体投地) 

John the Ripper命令列参数说明

【命令列指令】 

john [-命令列参数] [密码档档名] 

【命令列参数】 

参数:-single 
说明:使用「简单」(Single Crack)破解模式解密,主要是根据使用者的「帐号」产生变化来猜测解密,其变化规则记录在JOHN.INI档案的[List.Rules:Single]区域内。 (稍后会再介绍) 


范例:john -single passwd 

参数:-wordfile:[字典档档名] -stdin 

说明:使用「字典档」破解模式解密,由字典档内读取单字来破解;或是可以加上-stdin参数,代表由键盘输入单字来破解。 


范例:john -wordfile:bigdict.dic passwd 

参数:-rules 
说明:在「字典档」破解模式下,开启字词规则变化功能,如「字典档」读入单字cook,则开启字词变化下,程式可能会尝试cook、c00k、cooker、cook0…等其它字词。详细变化规则记录在JOHN.INI档案的[List.Rules:Wordlist]区域内。(稍后会再介绍) 



范例:john -wordfile:bigdict.dic -rules passw 

参数:-incremental[:模式名称](参数也可以简写成-i[:模式名称]) 
说明:使用「增强」破解模式解密,就是组合所有可能的字元当作密码来破解。在JOHN.INI档案内的[Incremental:*****]区域里定义好许多的模式名称,可以指定使用哪一个模式来破解。 (稍后会再介绍) 

范例:john -i:all passwd 

参数:-external:[模组名称] 
说明:使用「外挂模组」破解模式解密,使用者可以自己撰写额外的「破解模组程式」。 「破解模组程式」是记录在JOHN.INI档案内的[List.External:******]区域内。 

范例:john -external:double passwd 

参数:-stdout[:LENGTH] 
说明:这个选项跟破解没有任何关系,只是单纯显示John所产生出来的单字到萤幕上。 

范例:john –i:all –stdout

参数:-restore[:回复档案名称] 
说明:继续上次中断的解密工作。 John在执行破解密码工作时,可以按下<CTRLC>键中断工作,而当前的解密进度情形会被存放在一个名为「restore」的档案内。而使用「-restore」参数,可以从「restore」档案内读取上一次破解时候中断的位置,然后接下去继续破解。 




范例:john –restore 

参数:-session[:记录档档名] 
说明:这个选项是让你设定目前工作记录档(session file)的档名。所谓的工作记录档就是可以用「-restore」参数回复工作的档案。另外,在使用John做多工破解工作时,使用「-session」参数可以为每个工作设定各别的记录档,而不会混在一起。 

范例:john –wordfile:bigdict.dic –session:work1 passwd 

参数:-status[:记录档档名] 
说明:显示工作记录档里面所记录的工作状态。 

范例:john –status:restore 

参数:-makechars:[档名] 
说明:制作「字元频率表」。这个选项会以目前已破解出的密码为基础,来产生「字元频率表」(注:John会把已破解出的密码记录在JOHN.POT档案内,)。如果所指定档名的档案已经存在的话,会被覆写。此选项产生出来的档案,可以用在「增强」破解模式上。 

范例:john –makechars:ownchars 

参数:-show 
说明:显示目前已经破解出的密码。因为JOHN.POT档案内并不储存「帐号」资料,所以使用时你应该同时输入相对应的密码档。 

范例:john –show passwd



参数:-test 
说明:测试目前机器执行John各类型密码破解时的速度。 

范例:john –test



参数:-users:[-]LOGIN|UID [,..] 
说明:只破解某个「帐号」的密码,如只针对root或拥有root权利UID=0的使用者。 (若在LOGIN|UID名称前加上“-”符号则是相反,表示不要破解这个「帐号」的密码) 

范例:john –i:all –users:root passwd

参数:-groups:[-]UID[,..] 
说明:只破解某个「群组」内用户的密码。 (若在UID名称前加上“-”符号则是相反,表示不要破解这个「群组」内用户的密码) 
范例:john –i:all –groups:100 
参数:-shells:[-]SHELL [,..] 
说明:和上面两个参数一样,这个选项是只针对所有可以使用shell的用户进行破解密码工作,对其它用户不予理会。(若在SHELL名称前加上“-”符号则是相反,表示不要破解可以使用这个SHELL的用户的密码)。指定SHELL时,你可以省略绝对路径,如参数「-shells:csh」就会包含「/bin/csh」或「/usr/bin/csh」等路径,但如果你指定的是「-shells:/bin/csh」则只会包含「/bin/csh」这个SHELL名称。 




范例:john –i:all –shells:csh passwd

参数:-salts:[-]COUNT 
说明:只破解「salts」大于「COUNT」的帐号的密码,可以使你得到较佳破解速度(所谓「salts」是指UNIX拿来作为「密码」编码基础的单位)。举例来说,你可以先只破解某部分用户的密码「-salts:2」来获得较佳的速度,然后有时间时才破解剩余用户的密码「-salts:-2」。 

范例:john –i:all –salts:2 passwd

参数:-format:NAME与-savemem:LEVEL 
说明:这两个参数是有关John内部运作的设定,跟破解本身没有直接关系,所以省略不介绍。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值