安装和利用john破解linux密码

 作者:Komy

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.pot档案还有另一个功能, 就是让 John 不要重覆跑你已经破解过的帐号, 如果你使用 John 再跑一次曾经跑过的密码档, 相同的帐号不会再跑过一次, 而是直接显示出你曾经跑出的密码。如果你想要看你已经破解过的密码, 你可以使用 ‘-show’ 这个功能.在破解的时候, 你可以按下 Enter 来观看目前破解的状态,或是按下 Ctrl+C 来中断目前的破解工作, 这样程式会自动将目前破解到的位置, 储存在一个档案之中~/restore为内定的档名), 另外, 如果你是按了两下 Ctrl+C 来中断的话, John 就会直接中断而不会将目前破解进度储存了. 这个破解进度档每十分钟也会自动的储存, 以必免你的机器在破解中当机而功亏一溃. (这是个不错的设计, 当然 Jack 里也有这项功能)命令列的功能选项。一般来说密码要么是很简单的,要么很复杂。

#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内部运作的设定,跟破解本身没有直接关系,所以省略不介绍。

其他参考:http://hi.baidu.com/deathshadow/blog/item/4103343f38cb00c77d1e7195.html

收集字典:

E:\tools\john>dir *.pot
驱动器 E 中的卷没有标签。
卷的序列号是 5C03-8E69

E:\tools\john 的目录

2010-07-13  12:54    <DIR>          .
2010-07-13  12:54    <DIR>          ..
2010-07-13  01:44       415,235,507 john.pot
1 个文件    415,235,507 字节
2 个目录 43,195,133,952 可用字节


















本文转sinojelly51CTO博客,原文链接:http://blog.51cto.com/pnig0s1992/354048,如需转载请自行联系原作者

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值