高速なマルチプローブHTTPツールキット。偵察と情報収集のためのツール。TLS、CSP、ヘッダー、技術スタック、CDNをプローブします。マッチャー、フィルター、JSON出力に対応し、自動セキュリティテストが可能です。
機能 • インストール • 使用方法 • ドキュメント • 注意事項 • Discordに参加
httpx は、retryablehttp ライブラリを使用して複数のプローブを実行できる、高速で多目的なHTTPツールキットです。スレッド数を増やしても結果の信頼性を維持するように設計されています。
| プローブ | デフォルトチェック | プローブ | デフォルトチェック |
|---|---|---|---|
| URL | true | IP | true |
| Title | true | CNAME | true |
| Status Code | true | Raw HTTP | false |
| Content Length | true | HTTP2 | false |
| TLS Certificate | true | HTTP Pipeline | false |
| CSP Header | true | Virtual host | false |
| Line Count | true | Word Count | true |
| Location Header | true | CDN | false |
| Web Server | true | Paths | false |
| Web Socket | true | Ports | false |
| Response Time | true | Request Method | true |
| Favicon Hash | false | Probe Status | false |
| Body Hash | true | Header Hash | true |
| Redirect chain | false | URL Scheme | true |
| JARM Hash | false | ASN | false |
httpx のインストールには go >=1.25.0 が必要です。以下のコマンドを実行してリポジトリを取得してください:
go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest
httpxのインストールについて詳しくは、https://docs.projectdiscovery.io/tools/httpx/install を参照してください。
| ❗ 免責事項 |
|---|
| このプロジェクトは活発に開発中です。リリース時には互換性を壊す変更が発生する可能性があります。アップデート前に変更履歴を確認してください。 |
| このプロジェクトは主にスタンドアロンCLIツールとして構築されました。サービスとして実行するとセキュリティリスクが生じる可能性があります。 注意して使用し、追加のセキュリティ対策を講じることを推奨します。 |
httpx -h
これによりツールのヘルプが表示されます。以下はサポートされているすべてのスイッチです。
httpx は、retryablehttp ライブラリを使用して複数のプローブを実行できる高速で多目的なHTTPツールキットです。
使用方法:
./httpx [フラグ]
フラグ:
INPUT:
-l, -list string 処理するホストのリストを含む入力ファイル
-rr, -request string 生のリクエストを含むファイル
-u, -target string[] プローブするターゲットホストを入力
-im, -input-mode string 入力ファイルのモード (burp)
PROBES:
-sc, -status-code 応答のステータスコードを表示
-cl, -content-length 応答のコンテンツ長を表示
-ct, -content-type 応答のコンテンツタイプを表示
-location 応答のリダイレクト先を表示
-favicon '/favicon.ico' ファイルの mmh3 ハッシュを表示
-hash string 応答本文のハッシュを表示 (対応: md5,mmh3,simhash,sha1,sha256,sha512)
-jarm JARM フィンガープリントハッシュを表示
-rt, -response-time 応答時間を表示
-lc, -line-count 応答本文の行数を表示
-wc, -word-count 応答本文の単語数を表示
-title ページタイトルを表示
-bp, -body-preview 応答本文の最初のN文字を表示 (デフォルト 100)
-server, -web-server サーバー名を表示
-td, -tech-detect Wappalyzerデータセットに基づいて使用中のテクノロジーを表示
-cff, -custom-fingerprint-file string テクノロジー検出用のカスタムフィンガープリントファイルのパス
-method HTTPリクエストメソッドを表示
-ws, -websocket WebSocketを使用しているサーバーを表示
-ip ホストのIPアドレスを表示
-cname ホストのCNAMEを表示
-extract-fqdn, -efqdn jsonl/csv出力で応答本文とヘッダーからドメインとサブドメインを抽出
-asn ホストのASN情報を表示
-cdn 使用中のCDN/WAFを表示 (デフォルト true)
-probe プローブの状態を表示
HEADLESS:
-ss, -screenshot ヘッドレスブラウザを使用してページのスクリーンショットを保存
-system-chrome スクリーンショットにローカルインストール済みChromeを使用
-ho, -headless-options string[] 追加オプションでヘッドレスChromeを起動
-esb, -exclude-screenshot-bytes JSON出力からスクリーンショットのバイト列を除外
-ehb, -exclude-headless-body JSON出力からヘッドレスヘッダーを除外
-no-screenshot-full-page 全ページスクリーンショットの保存を無効化
-st, -screenshot-timeout value スクリーンショットのタイムアウト (秒) (デフォルト 10s)
-sid, -screenshot-idle value スクリーンショット撮影前のアイドル時間 (秒) (デフォルト 1s)
-jsc, -javascript-code string[] ナビゲーション後にJavaScriptコードを実行
MATCHERS:
-mc, -match-code string 指定されたステータスコードと一致する応答 (-mc 200,302)
-ml, -match-length string 指定されたコンテンツ長と一致する応答 (-ml 100,102)
-mlc, -match-line-count string 指定された行数と一致する応答本文 (-mlc 423,532)
-mwc, -match-word-count string 指定された単語数と一致する応答本文 (-mwc 43,55)
-mfc, -match-favicon string[] 指定されたファビコンハッシュと一致する応答 (-mfc 1494302000)
-ms, -match-string string[] 指定された文字列と一致する応答 (-ms admin)
-mr, -match-regex string[] 指定された正規表現と一致する応答 (-mr admin)
-mcdn, -match-cdn string[] 指定されたCDNプロバイダーと一致するホスト (cloudfront, fastly, google など)
-mrt, -match-response-time string 指定された応答時間 (秒) と一致する応答 (-mrt '< 1')
-mdc, -match-condition string DSL式条件と一致する応答
EXTRACTOR:
-er, -extract-regex string[] 一致した正規表現の応答内容を表示
-ep, -extract-preset string[] 事前定義された正規表現 (url,ipv4,mail) と一致した応答内容を表示