跳转至

爆破工具

Hydra

简历

Hydra是一款非常强大的暴力破解工具,它是由著名的黑客组织THC开发的一款开源暴力破解工具。Hydra是一个验证性质的工具,主要目的是:展示安全研究人员从远程获取一个系统认证权限。

目前该工具支持以下协议的爆破:


AFP,Cisco AAA,Cisco身份验证,Cisco启用,CVS,Firebird,FTP,HTTP-FORM-GET,HTTP-FORM-POST,HTTP-GET,HTTP-HEAD,HTTP-PROXY,HTTPS-FORM- GET,HTTPS-FORM-POST,HTTPS-GET,HTTPS-HEAD,HTTP-Proxy,ICQ,IMAP,IRC,LDAP,MS-SQL,MYSQL,NCP,NNTP,Oracle Listener,Oracle SID,Oracle,PC-Anywhere, PCNFS,POP3,POSTGRES,RDP,Rexec,Rlogin,Rsh,SAP / R3,SIP,SMB,SMTP,SMTP枚举,SNMP,SOCKS5,SSH(v1和v2),Subversion,Teamspeak(TS2),Telnet,VMware-Auth ,VNC和XMPP。


对于 HTTP,POP3,IMAP和SMTP,支持几种登录机制,如普通和MD5摘要等。

使用说明

Text Only
语法:Hydra 参数 IP 服务(总体)

参数

Bash
-l login 小写,指定用户名进行破解
-L file 大写,指定用户的用户名字典
-p pass 小写,用于指定密码破解,很少使用,一般采用密码字典。
-P file 大写,用于指定密码字典。
-e ns 额外的选项,n:空密码试探,s:使用指定账户和密码试探
-M file 指定目标ip列表文件,批量破解。
-o file 指定结果输出文件
-f 找到第一对登录名或者密码的时候中止破解。
-t tasks 同时运行的线程数,默认是16
-w time 设置最大超时时间,单位
-v / -V 显示详细过程
-R 恢复爆破(如果破解中断了,下次执行 hydra -R /path/to/hydra.restore 就可以继续任务。)
-x 自定义密码。

服务

Bash
service:指定服务名,支持的服务跟协议有:telnet,ftp,pop3等等。
注意:
1.自己创建字典,然后放在当前的目录下或者指定目录。
2.参数可以统一放在最后,格式比如hydra ip 服务 参数。
3.如果能确定用户名一项时候,比如web登录破解,直接用 -l就可以,然后剩余时间破解密码。
4.缺点,如果目标网站登录时候需要验证码就无法破解。
5.man hydra最万能。
6.或者hydra -U http-form等查看具体帮助。

Fcrackzip

介绍

fcrackzip 是一款专门破解zip类型压缩文件密码的工具,工具小巧方便、破解速度快,能使用字典和指定字符集破解,适用于linux、mac osx 系统

选项

Bash
          [-b|--brute-force]            use brute force algorithm 暴破
          [-D|--dictionary]             use a dictionary 字典模式
          [-B|--benchmark]              execute a small benchmark 速度测试
          [-c|--charset characterset]   use characters from charset 指定字符类型(数字,字母,混合等)
          [-h|--help]                   show this message   显示消息
          [--version]                   show the version of this program   显示该程序的版本
          [-V|--validate]               sanity-check the algortihm     理智-检查算法?(直接google翻译出来的)
          [-v|--verbose]                be more verbose   更加冗余
          [-p|--init-password string]   use string as initial password/file 指定开始字符(比如要只记得密码是5开头的6位纯数字,可以指定从5000000开始破解,节约时间)
          [-l|--length min-max]         check password with length min to max (指定密码长度区间)
          [-u|--use-unzip]              use unzip to weed out wrong passwords  (这个选项很很重要,很重要)
          [-m|--method num]             use method number "num" (see below) (指定破解类型)
          [-2|--modulo r/m]             only calculcate 1/m of the password  只计算 1/m 的密码

John

介绍

john 是一款大受欢迎的、免费的开源软件、基于字典的密码破解工具。用于在已知密文的情况下尝试破解出明文的破解密码软件,支持目前大多数的加密算法,如 DES 、 MD4 、 MD5 等。 John 支持字典破解方式和暴力破解方式。它支持多种不同类型的系统架构,包括 Unix 、 Linux 、 Windows 、 DOS 模式、 BeOS 和 OpenVMS ,主要目的是破解不够牢固的 Unix/Linux 系统密码。

常用选项

CSS
具体的其他选项可通过john --help查看,这列举常用的几个:

1.--single 简单破解模式,也是默认的执行模式,就是根据用户和家目录名进行一些简单的变形猜解
2.--incremental 逐个遍历模式,其实跟hashcat的increment模式是一样的,直到尝试完所有可能的组合
3.--wordlist 纯字典模式,后面跟上字典的路径即可
4.--show 显示已经破解出来的hash及所对应的明文密码
5.--users 只破解指定用户的hash,可以是用户名或者对应的uid
6.--groups 只破解指定用户组的hash,可以是组名或者对应的gid
7.--shells 只破解指定shell的hash,可以用逗号分隔多个shell程序

eg:

以下是以破解linux用户密码为例,在此之前我们需要将用户/组及密码配置文件合并成一个另一个文件,我是保存在了桌面下

Bash
unshadow /etc/passwd /etc/shadow > hash.txt
unshadow /etc/group /etc/gshadow >> gshash.txt
JavaScript
实际破解中推荐的爆破顺序,为了尽量节省爆破时间,可以自行尝试: 
single模式 -> wordlist模式 -> incremental模式 -> 默认模式

默认模式是先尝试single然后是incremental,直到所有的规则都结束

命令:john --user=ww passwd_shadow

指定了破解的用户名,默认破解所有用户密码


0x01 粗暴简单的爆破模式——single


Bash
john --single --user=ww passwd_shadow

0x06基于纯字典的爆破模式——wordlist


Bash
# 需要提前建立一个字典文件pass.txt
john --wordlist=pass.txt --user=ww passwd_shadow

0x07逐个遍历的爆破模式——incremental


破解模式的具体方法

Bash
破解模式的具体方法      破解的密码长度       所包含的字符
Incremental:all         0-8                  All 95 printable ASCII characters
Incremental:all15       0-5                  All 95 printable ASCII characters
Incremental:all6        6                    All 95 printable ASCII characters
Incremental:all7        7                    All 95 printable ASCII characters
Incremental:all8        8                    All 95 printable ASCII characters
Incremental:alpha       1-8                  A-Z     纯大写字母
Incremental:digits      1-8                  0-9     纯数字
Incremental:lanman      0-7         A-Z, 0-9, and some special characters   大写字母,数字加一些特殊字符
Bash
#以数字类型举例: 
john --incremental:digits --users=ww passwd_shadow

SSH2john

(3条消息) 【笔记】ssh端口通过私钥认证爆破_ssh2john_Day_0713的博客-CSDN博客

zip2john

Bash
zip2john {ZIP_FILE}

用于将zip转换为john格式,便于john破解

Bash
zip2join {ZIP_FIlE}
# 得到zip文件hash
join {HASH_FILE} --wordlist={LIST_FILE}

hashcat

Hashcat号称宇宙最强密码破解工具,其是一款开源软件,有针对Windows、Mac和Linux的版本,支持CPU、GPU、APU、DSP和FPGA等多种计算核心,支持多种hash散列算法,支持对rar、office、pdf、windows账户、wifi等多种密码的破解

Bash
hashcat -m 1700 -a 3 ee26b0dd4af7e749aa1a8ee3c10ae9923f618980772e473f8819a5d4940e0db27ac185f8a0e1d5f84f88bc887fd67b143732c304cc5fa9ad8e6f57f50028a8ff ?l?l?l?l --force
or
hashcat -m 1700 -a 3 sha512.hash ?l?l?l?l --force
# sha512-hash存储要破解的hash

可以看到破解出来为test

Bash
hashcat -m 1700 -a 3 sha512.hash ?l?l?l?l --force --show

--show可以查看已经爆破出来的密码

blasting

https://github.com/gubeihc/blasting

工具主要是为了方便在面对web后台进行爆破测试的时候,用户名和密码是加密的情况下 如果单纯分析js来进行爆破测试时间成本会比较多,

这里呢就采用模拟浏览器通过调用js来直接写入账号密码进行请求,来快速达到测试效果。