
ドメインのリストを受け取り、動作している http および https サーバーを調査します。
▶ go install github.com/tomnomnom/httprobe@latest
httprobe は stdin から改行区切りのドメインを受け取ります:
▶ cat recon/example/domains.txt
example.com
example.edu
example.net
▶ cat recon/example/domains.txt | httprobe
http://example.com
http://example.net
http://example.edu
https://example.com
https://example.edu
https://example.net
デフォルトでは、httprobe はポート 80 の HTTP とポート 443 の HTTPS をチェックします。-p フラグでプロトコルとポートのペアを指定すると、追加のプローブを追加できます:
▶ cat domains.txt | httprobe -p http:81 -p https:8443
-c フラグで並行処理レベルを設定できます:
▶ cat domains.txt | httprobe -c 50
-t フラグを使用して、タイムアウトをミリ秒単位で指定すると変更できます:
▶ cat domains.txt | httprobe -t 20000
ポート 80 の HTTP やポート 443 の HTTPS をプローブしたくない場合は、-s フラグを使用できます。必要なプローブは -p フラグで指定する必要があります:
▶ cat domains.txt | httprobe -s -p https:8443
HTTPS が動作している場合、HTTP のチェックを気にしないこともあります。--prefer-https フラグでこれを行えます:
▶ cat domains.txt | httprobe --prefer-https
docker コンテナをビルドします:
▶ docker build -t httprobe .
コンテナを実行し、ファイルの内容をコンテナ内のプロセスの stdin に渡します。-i は、stdin をコンテナ内の httprobe バイナリに正しくマッピングするために必要です。
▶ cat domains.txt | docker run -i httprobe <args>