一个快速、多线程、递归的 HTTP/2 网络目录暴力扫描器,基于 hyper,灵感来源于 Gobuster。
需要 Python 3.6。
你只需安装一个依赖项。如果你没有 hyper,请运行:
pip3 install -r requirements.txt
usage: h2buster.py [-h] -w wordlist -u target [-c connections=8]
[-t threads=20] [-m http_method=HEAD]
[-r directory_depth=2] [-hd header_list]
[-x extension_list] [-b http_code_list] [-l] [-vr] [-wc]
[-rb] [-nc]
h2buster: an HTTP/2 web directory brute-force scanner.
arguments:
-h, --help show this help message and exit
-w wordlist Directory wordlist
-u target Target URL/IP address ([scheme://]host[:port]).
Default port is 443 and HTTPS enabled. To specify
otherwise, use ':port' and/or 'http://' (port will
default to 80 then).
-c connections=8 Number of HTTP/2 connections.
-t threads=20 Number of threads per connection.
-m http_method=HEAD HTTP request method. Allowed values are GET, HEAD.
-r directory_depth=2 Maximum recursive directory depth. Minimum is 1,
unlimited is 0.
-hd header_list List of headers in the format
'header->value|header->value...'. For example: -hd
'user-agent->Mozilla/5.0|accept-encoding->gzip,
deflate, br'.
-x extension_list List of file extensions to check separated by a
vertical bar (|). For example, -x '.php|.js|blank|/'.
The 'blank' keyword signifies no file extension.
Default extensions are '/', 'blank', '.html', '.php'
-b http_code_list List of blacklisted response codes separated by a
vertical bar (|). Directories with these response
codes will not be shown in the output. Default is 404.
-l Flag: show response length in output. This overrides
the request method to GET.
-vr Flag: force TLS certificate verification.
-wc Flag: request a random path and analyze response to
detect false positives (wildcard processing).
-rb Flag: scan for a robots.txt file. If found, a prompt
will be displayed asking whether to use the results.
-nc Flag: disable colored output text.
$ python3 h2buster.py -w test/small.txt -u www.google.com -c4 -t15 -m GET -x 'blank|/' -r1 -hd 'user-agent->h2buster' -b '404|301'
这将扫描 www.google.com,使用 4 个连接,每个连接 15 个线程,对输入词表 small.txt 执行 GET 请求。词表中的每个条目将按原样发送,同时也会附加一个斜杠 (/) 发送。发现的目录不会递归扫描(深度为 1)。字符串 h2buster 将作为用户代理发送。响应码 404 和 301 不会在输出中显示。
查看 TODO 文件以了解需要开发的功能列表。