WEB登录密码爆破方式有很多,比如Burpsuite等,本次介绍利用Hydra爆破的方式

0x01 Hydra简介

Hydra,俗称九头蛇,是由著名的黑客组织THC开发的一款开源暴力破解、验证性质的工具,支持多种服务协议的账号和密码进行爆破,包括Web登录、数据库、SSH、FTP等服务,支持Linux、Windows、Mac平台安装。

0x02 基础参数

1
2
3
4
5
6
7
8
9
10
11
12
-l:    指定单个用户名, 适合在知道用户名的情况下爆破密码时使用
-L: 指定多个用户名, 参数值为存储用户名的文件(字典)的路径(建议为绝对路径)
-p: 指定单个密码, 适合在知道密码的情况下爆破用户名时使用
-P: 指定多个密码, 参数值为存储密码的文件( 字典) 的路径(建议为绝对路径)
-C: 当用户名和密码存储到一个文件时使用此参数。注意: 文件(字典) 存储的格式必须为" 用户名:密码" 的格式
-M: 指定多个攻击目标, 此参数为存储攻击目标的文件路径( 建议为绝对路径) 。注意: 列表文件存储格式必须为" 地址:端口"
-f: 在使用-M参数以后,找到第一对登录名或者密码的时候中止破解
-s: 指定端口, 适用于攻击目标端囗非默认的情况, 例如http 服务使用非80 端口
-t: 指定爆破时的任务数量( 可以理解为线程数),默认为16
-v/-V: 显示爆破的详细信息
-w: 设置最大超时的时间,单位秒,默认是30s
-o: 将破解成功的结果输出到文件中

0x03 使用方法

1
2
3
4
hydra -L <user.txt> -P <passwd.txt> xxxxxx -s port http-post-form "/login:username=^USER^&password=^PASS^:error"

例:
hydra -L user.txt -P passwd.txt report.solarlab.htb -s 6791 http-post-form "/login:username=^USER^&password=^PASS^:#ff1919"

最后面的”/login:username=^USER^&password=^PASS^:error”由三部分组成,第一部分为登录页面所在的目录,如果为根目录就直接写”/“;

第二部分username=^USER^&password=^PASS^对应前面指定的账号密码,username和password为在登录时post请求中携带的参数,在post提交时hydra会自动把^USER^和^PASS^替换为相应的账号密码;

image

第三部分error是当登录不成功时页面出现的元素,比如在solarlab靶机中页面登录失败就会有红色字体,其余情况不存在,那么我就可以把error元素替换为”#ff1919”。

image

执行爆破,成功拿到正确账号密码

image