Hydra介绍:
一款非常流行的网络密码破解工具,用于执行暴力破解或字典攻击。它支持多种协议和服务,如 HTTP、FTP、SSH、MySQL 等,广泛应用于网络渗透测试和安全审计中。
目前该工具支持以下协议的爆破:ftp
,ssh
,telnet
,smtp
,smtp-enum
,imap
,pop3
,smb
,rdp
,vnc
,ldap
,mssql
,mysql
,postgres
,oracle-listener
,oracle-sid
,oracle
,rexec
,rlogin
,rsh
,teamspeak
,http-get
,http-post
,http-head
,http-get-form
,http-post-form
,http-proxy
,https-get
,https-post
,https-head
,https-get-form
,https-post-form
,https-proxy
,snmp
,sip
,redis
,mongodb
,cvs
,svn
,vmauthd
,nntp
,pcanywhere
,x11
,ncp
kali中自带有Hydra, sudo hydra -help查看指令
当然想要自己下载本机电脑的也可以在github下载
https://github.com/vanhauser-thc/thc-hydra
Hydra命令格式:
hydra [选项] [目标IP] [协议]使用语法:hydra 参数 IP地址 服务名
帮助命令:hydra -h
常用命令:hydra [-l 用户名|–L 用户名文件路径] [-p 密码|–P 密码文件路径] [-t 线程数] [–vV 显示详细信息] [–o 输出文件路径] [–f 找到密码就停止] [–e ns 空密码和指定密码试探] [ip|-M ip列表文件路径]
-l
:指定用户名,例如-l admin
-L
:从文件中读取多个用户名,例如-L userlist.txt
-p
:指定密码,例如-p password123
-P
:从文件中读取多个密码,例如-P passlist.txt(密码包)
-t
:指定线程数,默认是 16,例如-t 8
-s
:指定端口,例如-s 8080
-o
:输出结果到文件,例如-o results.txt
-f
:在破解成功后停止攻击-v
:详细模式,可以输出更多的调试信息
当然,在kali的 /usr/share/wordlists/dirb 目录里有自带的密码字典
catala.txt | 项目配置字典 |
common.txt | 公共字典 |
euskera.txt | 数据目录字典 |
spanish.txt | 方法名或库目录 |
indexes.txt | 首页字典 |
FTP(端口号21)
FTP(File Transfer Protocol)是一个用于在网络上进行文件传输的协议。它广泛用于服务器与客户端之间传输文件,可以通过明文传输用户名和密码。
FTP用于文件的上传和下载,文件的管理,FTP支持匿名访问与双向数据传输,多种模式传输。、SSH(端口号22)
SSH(Secure Shell)协议是一种用于在不安全网络中为计算机系统提供安全远程登录和其他安全网络服务的协议。与 FTP 不同,SSH 提供加密的数据传输,保证了数据的安全性。
SSH可用于安全的远程登陆,数据的传输,端口的转发,隧道加密,身份验证等。
DRP(端口号3389)
DRP(Distributed Relational Protocol,分布式关系协议)并不是一个常见或广泛使用的网络协议,可能是某些领域或系统中定义的专有协议。
Telnet(端口号23)
早期的网络协议,用于在局域网或互联网中实现远程登录和通信
Telnet主要用于远程登录,命令行控制,明文传输并且支持多种的网络设备,如路由器,交换机等。
Hydra对SSH爆破测试
hydra -L user.txt -P pass.txt -s 2222 <ip>
-L user.txt
:指定包含用户名的文件。-P pass.txt
:指定包含密码的文件。- <ip> :指定目标主机的 IP 地址。
- -s :指定端口22
当然为了加速爆破过程,你可以调整线程数,默认线程数是 16:
hydra -L user.txt -P pass.txt -t 16 <ip>
将结果输出到文件中,以便后续分析:
hydra -L user.txt -P pass.txt -o results.txt <ip>
-o results.txt
:将结果保存到 results.txt
文件中。
其余的端口协议都是以上的过程,修改端口即可