一个快速HTTP探测工具,可用于信息收集等场景,使用GO编写。更多类似的工具你可以在Hacking Tools里找到。
Status Code
,Content Type
,Location
。
1 |
GO111MODULE=on go get -u github.com/theblackturtle/fprobe |
1 2 3 4 5 6 7 8 9 10 11 12 |
Usage of fprobe: -c int Concurrency (default 50) -i string Input file (default is stdin) (default "-") -l Use ports in the same line (google.com,2087,2086) -p value add additional probe (proto:port) -s skip the default probes (http:80 and https:443) -t int Timeout (seconds) (default 9) -v Turn on verbose |
标准输入
1 |
❯ cat domains.txt | fprobe |
文件输入
1 |
❯ fprobe -i domains.txt |
1 |
❯ cat domains.txt | fprobe -c 200 |
如果要对每个域使用特殊端口,则可以使用该-l
标志。您可以解析Nmap / Masscan输出并将其重新格式化以使用此功能。
输入(domains.txt)
1 2 3 |
google.com,2087,2086,8880,2082,443,80,2052,2096,2083,8080,8443,2095,2053 yahoo.com,2087,2086,8880,2082,443,80,2052,2096,2083,8080,8443,2095,2053 sport.yahoo.com,2086,443,2096,2053,8080,2082,80,2083,8443,2052,2087,2095,8880 |
命令
1 |
❯ cat domains.txt | fprobe -l |
1 |
❯ cat domains.txt | fprobe -t 10 |
1 |
❯ cat domains.txt | fprobe -p http:8080 -p https:8443 |
1 2 3 |
❯ echo 'https://google.com/path1?param=1' | fprobe https://google.com/path1?param=1 |
1 |
❯ cat domains.txt | fprobe -p medium/large/xlarge |
如果您不想探测端口80上的HTTP或端口443上的HTTPS,则可以使用该-s
标志。
1 |
❯ cat domains.txt | fprobe -s |
详细输出一些附加头,诸如JSON格式格式Status Code
,Content Type
,Location
。
1 |
❯ cat domains.txt | fprobe -v |
1 2 |
{"site":"http://google.com","status_code":301,"server":"gws","content_type":"text/html; charset=UTF-8","location":"http://www.google.com/"} {"site":"https://google.com","status_code":301,"server":"gws","content_type":"text/html; charset=UTF-8","location":"https://www.google.com/"} |