使用John the Ripper破解sha512加密的shadow文件密码


John the Ripper

shadow文件解析

文件的格式为:
{用户名}:{加密后的口令密码}:{口令最后修改时间距原点(1970-1-1)的天数}:{口令最小修改间隔(防止修改口令,如果时限未到,将恢复至旧口令):{口令最大修改间隔}:{口令失效前的警告天数}:{账户不活动天数}:{账号失效天数}:{保留}

其中{加密后的口令密码}的格式为 $id$salt$encrypted

id为1时,采用md5算法加密
id为5时,采用SHA256算法加密
id为6时,采用SHA512算法加密
salt为盐值,是对密码进行hash的一个干扰值
encrypted为散列值

下载安装

wget https://www.openwall.com/john/k/john-1.9.0.tar.gz #下载安装包 (官网:John the Ripper password cracker

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: http://www.openwall.com/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保持会话,不间断的跑,还可以随时进去查看进度!

 

 

参考:

/etc/shadow文件破解,密码破解,md5,SHA256,SHA512破解_NetRookieX的博客-CSDN博客_sha512解密 

利用John the Ripper破解密码 - 逍遥人y - 博客园 

著名密码破解利器John the Ripper使用方法详解_不断攀登-CSDN博客 

安全工具——John the Ripper - 先知社区 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM