使用JohntheRipper破解sha512加密的shadow文件密码

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

使⽤JohntheRipper破解sha512加密的shadow⽂件密码John the Ripper
shadow⽂件解析
⽂件的格式为:
{⽤户名}:{加密后的⼝令密码}:{⼝令最后修改时间距原点(1970-1-1)的天数}:{⼝令最⼩修改间隔(防⽌修改⼝令,如果时限未到,将恢复⾄旧⼝令):{⼝令最⼤修改间隔}:{⼝令失效前的警告天数}:{账户不活动天数}:{账号失效天数}:{保留}
其中{加密后的⼝令密码}的格式为 $id$salt$encrypted
id为1时,采⽤md5算法加密
id为5时,采⽤SHA256算法加密
id为6时,采⽤SHA512算法加密
salt为盐值,是对密码进⾏hash的⼀个⼲扰值
encrypted为散列值
下载安装
tar -xvf john-1.9.0.tar.gz
cd john-1.9.0/src/
make #找到属于⾃⼰的系统
make clean linux-x86-64 #正常linux64位系统就是这个
root:$6$RaPWxCGV$Z54bUhH9xccb9X580RP/cIgUVp3u6vKM2jJCaHme.fav0VnDs7UolXznMkPNAUu/dOhEDrdEmyTDNf1tIBMR./:17770:0:99999:7:::
进⼊run⽬录:
默认这些⽂件:
复制shadow密⽂到⼀个⽂件中ppp,⽤./john ppp命令即可,出来后⽤./john --show ppp查看密码:
john的所有参数:
[root@iZb3kuz33l2fzfZ run]# ./john
John the Ripper password cracker, version 1.9.0
Copyright (c) 1996-2019 by Solar Designer
Homepage: /john/
Usage: john [OPTIONS] [PASSWORD-FILES]
--single "single crack" mode
--wordlist=FILE --stdin wordlist mode, read words from FILE or stdin
--rules enable word mangling rules for wordlist mode
--incremental[=MODE] "incremental" mode [using section MODE]
--external=MODE external mode or word filter
--stdout[=LENGTH] just output candidate passwords [cut at LENGTH]
--restore[=NAME] restore an interrupted session [called NAME]
--session=NAME give a new session the NAME
--status[=NAME] print status of a session [called NAME]
--make-charset=FILE make a charset, FILE will be overwritten
--show show cracked passwords
--test[=TIME] run tests and benchmarks for TIME seconds each
--users=[-]LOGIN|UID[,..] [do not] load this (these) user(s) only
--groups=[-]GID[,..] load users [not] of this (these) group(s) only
--shells=[-]SHELL[,..] load users with[out] this (these) shell(s) only
--salts=[-]N load salts with[out] at least N passwords only
--save-memory=LEVEL enable memory saving, at LEVEL 1..3
--node=MIN[-MAX]/TOTAL this node's number range out of TOTAL count
--fork=N fork N processes
--format=NAME force hash type NAME: descrypt/bsdicrypt/md5crypt/
bcrypt/LM/AFS/tripcode/dummy/crypt
可以指定⾃⼰的密码本
--wordlist=mima.txt
测试本机的破解速度
-test
做个测试
新建⼀个⽤户abc,密码123456,指定⼀个简单的密码本mima.txt,删除历史john.log⽂件
mima.txt:
abc
abcd
abcde
123456
123
1234
12345
abc⽤户的shadow密⽂单独保存到abc⽂件中:
abc:$6$.rsMQzX5$31imN2bMPitKad5kTfJxk8.yCMos0ocAG9rfJna/hv9KaDzCXTqvM57v1/Zk/v7SbFqvemhdijVdTqtE4Y3RX1:18813:0:99999:7:::使⽤下⾯命令指定mima.txt去破解abc⽤户
./john --wordlist=mima.txt pwd/abc
⼏秒钟很快就出来了,毕竟字典那么短。

解出密码后有个标记,就是会更新⽂件john.pot和john.log
看下john.log⽂件
再看下john.pot⽂件,--show参数就是从这⾥取解密好的明⽂
PS:⽤云服务器跑的可以使⽤screen保持会话,不间断的跑,还可以随时进去查看进度!参考:。

相关文档
最新文档