Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
MadeYouReset_Tester — A Python script that checks if a web server is vulnerable to MadeYouReset (CVE-2025-8671) — an HTTP/2 DoS attack that bypasses Rapid Reset mitigations by tricking the server into resetting its own streams. It probes the target by sending a malformed WINDOW_UPDATE frame and inspects whether the server responds. | Kitploit
ツール/GitHubGitHub/ayushghatkar8080/madeyoureset_tester
脆弱性分析エクスプロイトウェブセキュリティネットワークセキュリティペネトレーションテスト
GitHubayushghatkar8080/madeyoureset_tester

MadeYouReset_Tester

リポジトリを見る
413ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →

概要

A Python script that checks if a web server is vulnerable to MadeYouReset (CVE-2025-8671) — an HTTP/2 DoS attack that bypasses Rapid Reset mitigations by tricking the server into resetting its own streams. It probes the target by sending a malformed WINDOW_UPDATE frame and inspects whether the server responds.

共有

MadeYouReset チェッカー

ウェブサーバーが MadeYouReset HTTP/2 サービス拒否脆弱性(CVE-2025-8671、CVSS 7.5 High)に対して潜在的に脆弱かどうかを検出する軽量な Python スクリプトです。


背景

MadeYouReset は、2025年8月にテルアビブ大学と Imperva の研究者によって公開された HTTP/2 DoS 脆弱性です。これは、多くの一般的なサーバー実装における HTTP/2 ストリームアカウンティングと内部バックエンド処理の不一致を悪用します。

この攻撃は、故意に不正な HTTP/2 制御フレーム(例:increment=0 の WINDOW_UPDATE。これは RFC 9113 §6.9.1 で不正とされています)を送信し、サーバー自身に RST_STREAM フレームを発行させます。サーバーはプロトコルレベルではストリームを閉じたものとして扱いながら、バックエンドでリクエストの処理を続行するため、攻撃者は MAX_CONCURRENT_STREAMS 制限を回避し、クライアント側の RST_STREAM を1つも送信することなくサーバーリソースを枯渇させることができます。

これにより、以前の Rapid Reset 攻撃(CVE-2023-44487)に対して導入された緩和策をバイパスします。

既知の影響を受けるソフトウェア:

製品CVE
Apache Tomcat 9.x / 10.x / 11.xCVE-2025-48989
Netty < 4.1.124.Final / 4.2.4.FinalCVE-2025-55163
F5 BIG-IPCVE-2025-54500
IBM WebSphere Application Server LibertyCVE-2025-36047
Varnish、Fastly、Jetty、SUSE、Wind RiverCVE-2025-8671

チェッカーの動作仕組み

  1. 対象ホストへの TCP 接続を開きます。
  2. ALPN を介して h2 をネゴシエートする TLS ハンドシェイクを実行します。
  3. HTTP/2 クライアントプリアンブルと SETTINGS フレームを送信します。
  4. HEADERS フレームでリクエストストリームを開きます。
  5. 開いているストリーム上で不正な WINDOW_UPDATE フレーム(increment=0)を送信します。
  6. サーバーの応答を分析します。
    • ストリーム上の RST_STREAM(GOAWAY なし) → 脆弱である可能性が高い。
    • GOAWAY → 正しい RFC 動作。修正されている可能性が高い。
    • 応答なし / 不明瞭 → 手動でのフォローアップを推奨。

このスクリプトは読み取り専用の受動的プローブを実行します。サーバーを悪用したり負荷テストを試みたりすることはありません。


必要条件

  • Python 3.7+
  • 外部パッケージ不要 — 標準ライブラリのみ。

インストール

root@kitploit:~
git clone https://github.com/ayushghatkar8080/MadeYouReset_Tester.git
cd MadeYouReset_Tester
# pip install は不要 — 依存関係なし

使用法

root@kitploit:~
python3 main.py <url> [OPTIONS]

オプション

フラグデフォルト説明
--timeout SECONDS8ソケット読み取りタイムアウト
--no-colorオフANSI カラー出力を無効化

例

root@kitploit:~
# 基本的なチェック
python3 main.py https://example.com

# カスタムポートと長めのタイムアウト
python3 main.py https://example.com:8443 --timeout 15

# CI 向け(カラーなし)
python3 main.py https://example.com --no-color

終了コード

コード意味
0脆弱ではない — サーバーが GOAWAY で応答(正しい RFC 動作)
1脆弱である可能性が高い — サーバーがストリーム上で RST_STREAM を送信したが GOAWAY なし
2不明瞭 — HTTP/2 なし、接続エラー、またはあいまいな応答

終了コードにより、CI パイプラインや自動化スクリプトへの統合が容易になります。


出力例

root@kitploit:~
========================================================
  MadeYouReset (CVE-2025-8671) チェッカー
========================================================
  ターゲット : https://vulnerable-server.example.com
  ホスト     : vulnerable-server.example.com:443
  パス       : /
  タイムアウト : 8.0s
────────────────────────────────────────────────────────

[*] vulnerable-server.example.com:443 に接続中...
  ✓ TCP 接続確立

[*] TLS ハンドシェイクを実行中 (ALPN: h2, http/1.1) ...
  → ネゴシエートされたプロトコル : h2
  ✓ ALPN 経由で HTTP/2 (h2) をネゴシエート

[*] HTTP/2 クライアントプリアンブルを送信中 ...
  ✓ プリアンブル + SETTINGS 送信

[*] サーバーの SETTINGS を待機中 ...
  ← Frame type=0x04 stream=0 length=18
  ✓ サーバー SETTINGS 受信
  ✓ SETTINGS ACK 送信

[*] HTTP/2 ストリーム 1 を開く (HEADERS フレーム) ...
  ✓ ストリーム 1 で HEADERS 送信

[*] ストリーム 1 で不正な WINDOW_UPDATE (increment=0) を送信中 ...
    RFC 9113 §6.9.1: increment=0 はストリームレベルの FLOW_CONTROL_ERROR
  ✓ 不正な WINDOW_UPDATE 送信

[*] サーバー応答を分析中 (タイムアウト=8.0s) ...
  ← RST_STREAM  stream=1  error_code=0x00000003

────────────────────────────────────────────────────────
  結果
────────────────────────────────────────────────────────
  [脆弱である可能性が高い]
  サーバーはストリーム 1 で RST_STREAM で応答
  (error_code=0x00000003) しましたが、GOAWAY は送信しませんでした。

  推奨する対応:
  • パッチ: Apache Tomcat ≥10.1.44/11.0.10/9.0.108、
           Netty ≥4.1.124.Final / 4.2.4.Final、
           および CVE-2025-8671 に関連する他のベンダー勧告。
  • 暫定措置: HTTP/2 を無効化するか、HTTP/2 フレームを
             転送前に検証する WAF/プロキシを導入。
========================================================

修復

アクション詳細
パッチ適用HTTP/2 スタック用の最新ベンダーアップデートを適用(上の表を参照)
HTTP/2 の無効化暫定的な緩和策として HTTP/1.1 にフォールバック
WAF / プロキシエッジで HTTP/2 フレームを検証するリバースプロキシまたは WAF を導入
レート制限クライアントごとの接続上限と RST_STREAM レート制限を適用

免責事項

このツールは許可されたセキュリティテストおよび調査のみを目的としています。
所有していない、または明示的な書面によるテスト許可を得ていないシステムに対してこのスクリプトを実行しないでください。
著者は誤用に対する一切の責任を負いません。


参考文献

  • CERT/CC VU#767506
  • Netty セキュリティ勧告 — GHSA-prj3-ccx8-p6x4
  • Jetty セキュリティ勧告 — GHSA-mmxm-8w33-wc4h
  • NVD — CVE-2025-8671
  • RFC 9113 — HTTP/2 §6.9.1 フロー制御
ツールをダウンロード