Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Http11Probe — HTTP/1.1サーバーをRFC 9110/9112要件、スマグリングベクター、および不正な入力処理に対してテストするオープンなテストプラットフォームです。フレームワークを追加すると、自動的にコンプライアンス結果が得られます。 | Kitploit
ツール/GitHubGitHub/mda2av/http11probe
脆弱性分析APIセキュリティテストウェブセキュリティファジング設定ミス
GitHubmda2av/http11probe

Http11Probe

HTTP/1.1サーバーをRFC 9110/9112要件、スマグリングベクター、および不正な入力処理に対してテストするオープンなテストプラットフォームです。フレームワークを追加すると、自動的にコンプライアンス結果が得られます。

リポジトリを見る
2410358日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
ウェブサイト
共有

Http11Probe

Http11Probeは、HTTP/1.1サーバー向けのコンプライアンスおよびセキュリティテスターです。生のTCPソケットを介して不正な形式、曖昧、または過大なリクエストをサーバーに送信し、RFC 9110およびRFC 9112が実際に要求する内容に対してどのように応答するかを確認します。これらは、裸のLF改行、廃止された行折り畳み、CL/TEリクエストスマグリング、チャンクフレーミングのトリック、過大なヘッダー、NULバイトなど、厳格なパーサーと寛容なパーサーが意見を異にし始める厄介なケースです。

同じ215のテストが、Nginx、Apache、EnvoyからKestrel、Gin、Actix、そしてNode、Bun、Denoの組み込みサーバーまで、12言語で書かれた42のリファレンスサーバーに対して実行されます。すべての結果は、仕様のMUST/SHOULD/MAYの文言に照らして採点され、Pass、Fail、またはWarnとしてマークされます。Warnは、RFCが厳格な動作と寛容な動作の両方を許可しているため、どちらも間違いではないことを意味するだけです。

完全なドキュメント、RFC引用付きのテストごとの用語集、およびすべてのサーバーのライブ結果マトリックスは、http-probe.comで確認できます。

使用方法

プローブはターゲット非依存です。--host:--portで既にリッスンしているHTTP/1.1サーバーをテストし、フレームワークを選択するフラグはありません。まずサーバーを起動し(またはprobe-local.shに起動させて)、プローブをそれに向けます。

dotnet run --project src/Http11Probe.Cli -- --host localhost --port 8080

オプション

フラグ説明デフォルト
--hostターゲットのホスト名またはIPアドレスlocalhost
--portターゲットのポート番号8080
--categoryこのカテゴリのテストのみを実行(Compliance、Smuggling、MalformedInput、Normalization、Cookies、Capabilities)すべて
--test特定のテストIDのみを実行、大文字小文字を区別しない(繰り返し可能)すべて
--timeoutテストごとの接続および読み取りタイムアウト(秒)5
--outputJSON結果をファイルに書き込むなし
--verbose、-v各テストの生のサーバー応答を出力オフ

例

dotnet run --project src/Http11Probe.Cli -- --host localhost --port 8080 --output results.json

特定のテストを実行:

dotnet run --project src/Http11Probe.Cli -- --test SMUG-CL-TE-BOTH --test SMUG-DUPLICATE-CL

各テストが完了すると結果がコンソールにストリーミングされ、最後にサマリーが表示されます:

Score: 97/97  19 warnings  (146 tests, 35.5s)

バンドルされたサーバーをローカルでプローブする

プローブはリクエストを送信するだけで、サーバーを起動しません。src/Servers/の下にあるバンドルされたサーバーの1つをプローブするには、scripts/probe-local.shを使用します。これはCIパイプラインと同じことを行います:サーバーのDockerイメージをビルドし、--network hostで実行し、起動を待ち、プローブし、その後削除します。

# src/Servers/ 下のディレクトリ名で1つのサーバーをプローブ、例:ActixServer
scripts/probe-local.sh --server ActixServer

# すべてのバンドルされたサーバーをプローブ
scripts/probe-local.sh --all

--serverの値はディレクトリ名(ActixServer)であり、表示名(Actix)ではありません。Dockerデーモンにrootが必要な場合は、--docker-sudoを追加して、スクリプト全体をsudoで実行する必要がないようにします:

scripts/probe-local.sh --server ActixServer --docker-sudo

スクリプトオプション

フラグ説明
--server <Dir>src/Servers/下のディレクトリ名で単一のサーバーをプローブ(例:NginxServer)
--allsrc/Servers/*/probe.json下のすべてのサーバーをプローブ
--port <Port>ターゲットポート(デフォルト:8080)
--skip-builddotnet buildをスキップ(Releaseビルドが既に存在することを前提とする)
--verboseCLIに--verboseを渡す
--docker-sudosudo経由でDockerコマンドを実行(sudoなしでスクリプトを実行可能)
-h、--helpヘルプを表示

probe-<ServerDir>.json(サーバーごとに1つ)、およびローカルレンダリング用のprobe-data.jsとdocs/static/probe/data.jsを書き込みます。jq、docker、curl、python3、および.NET 10 SDKが必要です。

サーバーを手動でプローブする

probe-local.shは単なる便利なラッパーです。手動で行いたい場合、たとえば複数のプローブ実行にわたってサーバーを起動したままにする場合は、自分でコンテナをビルドして実行し、プローブをそれに向けます。これらはDockerビルドコンテキストであるため、リポジトリルートから実行してください:

docker build -t probe-actix -f src/Servers/ActixServer/Dockerfile .
docker run -d --name probe-target --network host probe-actix
dotnet run --project src/Http11Probe.Cli -- --host localhost --port 8080
docker rm -f probe-target

既に実行中の任意のHTTP/1.1サーバーにプローブを向けることもできます:

dotnet run --project src/Http11Probe.Cli -- --host localhost --port 9000

ビルド

.NET 10 SDKが必要です。

dotnet build Http11Probe.slnx

CI

Probeワークフローは、プルリクエストとworkflow_dispatchで実行されます。各サーバーのDockerイメージをビルドし、プローブし、比較表をPRコメントとして投稿します。

ツールをダウンロード