Guide for John the Ripper
文章前言
在我们的渗透测试中或多或少都会涉及到密码的破解,本篇文章将对John的常用用法进行简单的介绍~
工具简介
John the Ripper是目前最受欢迎的密码测试和破解程序之一,它主要用于在已知密文的情况下尝试破解出明文,支持目前大多数的加密算法,如DES、MD4、MD5、SHA-1等,John the Ripper最初是为UNIX操作系统开发的,后来也相继为其他平台开发,目前支持包括Unix、Linux、Windows、DOS模式、BeOS和OpenVMS等多种平台。
基本使用
John the Ripper已预安装在了Kali中,本文涉及的破解皆在Kali中进行~
帮助信息
我们可以在Kali 终端输入"john"直接运行该工具并查看其相关参数说明:
john
配置文件
john.conf是john默认破解规则的配置文件,用户可自行设置每种模式下的具体破解规则,一般特殊的需求,我们是很少改配置的,有兴趣可以自我看一下:
/usr/share/john/john.conf
内置应用
john内置了一些应用用于辅助破解一些文件格式的密码散列,这些辅助实用程序可以通过以下命令查看:
locate *2john
破解模式
John the Ripper以四种不同的方式破解密码:
- Wordlist mode:有规则及无规则的字典破解模式
- Single crack mode:最简单的咨讯(源自登录名、"GECOS"、"Full Name"等字段)来进行破解的工作, 速度最快
- Incremental mode:增强破解模式也被为"暴力法",这将尝试所有可能的字元组合
- External mode:用户可以自我定义破解模式
纤细的介绍可以移步:https://www.openwall.com/john/doc/MODES.shtml
用户凭证1
下面介绍两种用于破解Linux用户凭证的方法,在此之前我们需要先创建一个用户——Al1ex/123456
方法1:直接破解
首先查看shadow文件,获取用户Al1ex的凭据并将其保存到一个文本文件中,这里将其命名为crack.txt
cat /etc/shadow
之后使用John直接进行破解
john crack.txt
方法2:批量破解
对于第二种方法我们将破解所有用户的凭据,要做到这一点我们将不得不使用John the ripper的一种叫做"unshadow"的工具,通过该工具来组合/etc/passwd和/etc/shadow文件,以便john可以使用它们来破解它们:
unshadow /etc/passwd /etc/shadow > crack.txt
之后使用John来破解所有用户的用户凭证
john crack.txt
当然你也可以通过参数"--wordlist"来指定字典路径(可以是自我前期信息收集阶段构建的字典也可以是John自带的字典)
john --wordlist=/usr/share/john/password.lst crack.txt
用户凭证2
下面介绍对于Windows的身份凭证的破解方法~
首先,我们需要通过reg的save选项将注册表中的SAM、System文件导出到本地磁盘(需要管理员权限哦)
reg save hklm\sam sam.hive
reg save hklm\system system.hive
之后在Kali中使用samdump执行以下命令将哈希提取到 hash.txt 文件中
samdump2 system.hive sam.hive > hash.txt
之后使用John进行破解
john -format=NT hash.txt #破解,使用john自带的密码字典
之后可以通过以下命令来查看指定格式的破解结果
john --show -format=NT hash.txt
中断/恢复
当John the Ripper正在破解一些密码时,我们可以中断或暂停破解,并在方便的时候恢复或重新开始破解,您可以通过按"q"或crtl+c来中断cracking
crtl+C
要恢复破解过程,我们可以使用John the Ripper的–restore选项即可
john --restore
加密破解
下面我们使用John the Ripper来解密常见的加密密文,关于John the Ripper支持的破解加密类型可以执行以下命令来查看:
john --list=formats
MD4
要解密md4加密,我们将使用rockyou作为单词列表并破解密码,如下所示:
john --wordlist=/usr/share/wordlists/rockyou.txt --format=raw-md4 crack.txt
MD5
要解密md5加密,我们将使用rockyou作为单词列表并破解密码,如下所示:
john --format=Raw-MD5 rack.txt#rack.txt格式
usernaem:passwordHash
SHA1
要解密sha1加密,我们可以使用rockyou作为字典列表并破解密码,如下所示:
john --wordlist=/usr/share/wordlists/rockyou.txt --format=raw-sha1 crack.txt
SHA256
为了解密sha256加密,我们将使用rockyou作为单词列表并破解密码,如下所示:
john --wordlist=/usr/share/wordlists/rockyou.txt --format=raw-sha256 crack.txt
SHA512
为了解密sha256加密,我们将使用rockyou作为单词列表并破解密码,如下所示:
john --wordlist=/usr/share/wordlists/rockyou.txt --format=raw-sha256 crack.txt
RIPEMD128
要解密ripemd128加密,我们将使用rockyou作为单词列表并破解密码,如下所示:
john --wordlist=/usr/share/wordlists/rockyou.txt --format=ripemd-128 crack.txt
RIPEMD160
要解密ripemd160加密,我们将使用rockyou作为单词列表并破解密码,如下所示:
john --wordlist=/usr/share/wordlists/rockyou.txt --format=ripemd-160 crack.txt
Whirlpool
要解密whirlpool加密,我们将使用rockyou作为单词列表并破解密码,如下所示:
john --wordlist=/usr/share/wordlists/rockyou.txt --format=whirlpool crack.txt
RAR Password
下面我们将破解一些压缩文件,为此我们必须创建一个要压缩的文件,所以让我们使用echo命令来完成:
echo Hacking.in > file.txt
John the Ripper可以破解rar文件密码,为了测试密码的破解,首先让我们创建一个压缩的加密rar文件
rar a -hpabc123 file.rar file.txt#参数说明
a = Add files to archive
hp[password] = Encrypt both file data and headers
当您尝试打开文件时,会出现以下提示
现在john不能直接破解这个密钥,首先我们必须改变它的格式,这可以使用一个名为"rar2john"的john实用程序来完成
rar2john file.rar > crack.txt
现在使用jhon来进行破解:
john --wordlist=/usr/share/wordlists/rockyou.txt crack.txt
ZIP Password
John the Ripper可以破解zip文件密码,为了测试密码的破解,首先让我们创建一个压缩的加密zip文件
zip -er file.zip file.txt#参数说明:
e = Encrypt
r = Recurse into directories
以上的操作会把我们的file.txt压缩和加密成file.zip,因此当您试图打开文件时,您将会看到以下提示:
现在john不能直接破解这个密钥,首先我们必须改变它的格式,这可以使用一个名为"zip2john"的john实用程序来完成
zip2john file.zip > crack.txt
现在让我们用John the Ripper来破解:
john --wordlist=/usr/share/wordlists/rockyou.txt crack.txt
7-Zip Password
John the Ripper可以破解7-zip文件密码,为了测试密码的破解,首先让我们创建一个压缩的加密7z文件
7z a -mhe file.7z file.txt -p"password"#参数说明:
a = Add files to archive
m = Set compression Method
h = Calculate hash values for files
e = Encrypt file
p = set Password
这将把我们的file.txt压缩和加密成一个file.7z,当您试图打开文件时,您将会收到以下提示
现在john不能直接破解这个密钥,我们需要改变它的格式,这可以使用一个名为"7z2john"的john实用程序来完成,这不是内置的实用程序,可以从这里下载:
https://github.com/truongkma/ctf-tools/blob/master/John/run/7z2john.py
python 7z2john.py file.7z > crack.txt
现在让我们用John the Ripper来破解这个hash:
john -wordlist=pass.txt crack.txt
PuTTY Password
John the Ripper可以破解RSA加密中创建的putty私钥,为了测试私钥的破解,首先我们必须创建一组新的私钥,为了做到这一点,我们将使用一个随putty一起提供服务的工具——"putty密钥生成器"
点击"generate"生成密钥后,我们会看到一个窗口,我们将在其中输入密钥密码
输入密码后,单击保存私钥,在生成的传输密码会以.ppk文件的形式保存,之后复制ppk文件到kali linux,现在john不能直接破解这个密钥,首先我们必须改变它的格式,这可以使用一个名为"putty2john"的john实用程序来完成:
putty2john file.ppk > crack.txt
之后使用john进行破解
john crack.txt
Keepass2 Crack
John the Rippe可以破解keeppass2 key,为了测试密钥的破解,首先我们必须创建一组新的密钥,为此我们将使用一个名为"kpcli"的实用程序并通过该程序的命令"Save as"创建一个数据库文件,并将该数据库文件命名为al1ex.kdb:
john不能直接破解这个密钥,首先我们必须改变它的格式,这可以使用一个名为"keepass2john"的john实用程序来完成:
keepass2john al1ex.kdb > crack.txt
现在使用John the Ripper来破解这个密码:
john --wordlist=/usr/share/wordlists/rockyou.txt crack.txt
Other Password
a、mssql 2012系列数据库用户hash:
john --wordlist=weakpass.txt --format=mssql12 hash.txt
b、mysql 系列数据库用户hash:
john --wordlist=weakpass.txt --format=mysql-sha1 hash.txt
c、oracle 11g 数据库用户hash
john --wordlist=weakpass.txt --format=oracle11 hash.txt
相关链接
https://github.com/openwall/john
https://openwall.info/wiki/john/johnny
https://www.openwall.com/lists/john-users/
https://www.jisuan.mobi/index.php?tag=hash
https://countuponsecurity.files.wordpress.com/2016/09/jtr-cheat-sheet.pdf
Guide for John the Ripper相关推荐
- John the Ripper
John the Ripper John the Ripper(简称John)是一款著名的密码破解工具.它主要针对各种Hash加密的密文.它不同于Rainbow Table方式.它采用实时运算的方式和 ...
- John the Ripper 密码破解者
John the Ripper
- 利用 John the Ripper 破解用户登录密码
一.什么是 John the Ripper ? 看到这个标题,想必大家都很好奇,John the Ripper 是个什么东西呢?如果直译其名字的话就是: John 的撕裂者(工具). 相比大家都会觉得 ...
- John the Ripper 著名密码破解工具
著名密码破解工具 John the Ripper 发布了 1.9.0-jumbo-1 版本. John the Ripper 是一款速度很快的密码破解工具,目前可用于 Unix.macOS.Windo ...
- Ubuntu中使用john the ripper口令破解
一 创建新用户 登录到root用户,如果已有root用户可跳过本步骤(如果你之前有设置过root用户,那就通过以下命令更改密码) sudo passwd root 然后登陆root su root ...
- Linux小白想成为007,先会用“John the Ripper工具”
内容预知 1. John the Ripper工具的简介 2. Linux中软件的下载方法 3. John the Ripper工具从下载到使用过程 3.1 安装软件包 3.2 准备破译的文件 3.3 ...
- 密码破解工具John the Ripper使用说明
John the Ripper John 包描述 John the Ripper 既功能丰富又运行快速. 它在一个程序中结合了几种破解模式,并且可以根据您的特定需求进行全面地配置(你甚至可以使用支持C ...
- John the Ripper编译安装及使用
在现如今的Internet环境里,过于简单的口令.密码是服务器的最大风险.尽管都知道要设置一个长且复杂的口令密码会更安全,但仍有部分用户图省事而采用简单.便于记忆的口令密码字串.对于任何一个肩负安全责 ...
- john the ripper跑多核多cpu
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 普通的j ...
最新文章
- img标签 文件不存在_HTML常用标签
- C语言中嵌入正则表达式
- CSS3无前缀脚本prefixfree.js及Animatable介绍
- Mac 编译报错 symbol(s) not found for
- Oracle11g创建表空间语句
- requestfacade 这个是什么类?_Java 的大 Class 到底是什么?
- delphi控件切图界面闪烁_DirectUI用户手册.pdf
- python内置类型和类_python – 内置类型和用户定义之间的不一致
- Linux下svn 安装搭建配置流程
- 二叉搜索树c++_LeetCode98验证二叉搜索树
- 特斯拉最强自动驾驶系统登场,实测视频火热出炉
- python学习:Python 包
- SQL Server内部的内存管理
- linux-getch函数
- 浅谈Java程序员的黄金五年,如何实现快速进阶
- 苹果电脑上好用的五个文档文本编辑工具
- 计算机系统导论与计算机导论,计算机系统导论之学习心得
- PDF文件太大,如何将它压缩得更小一点?
- openmodelica安装
- 站长开源工具箱V2.0网站源码