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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2025-55182 — CVE-2025-55182を調査・トリアージするための軽量なGoツールキットとDocker化されたNext.jsラボ | Kitploit
ツール/GitHubGitHub/r4j3sh-com/cve-2025-55182
脆弱性分析エクスプロイトウェブアプリケーション悪用侵入検知学習と教育ラボと実践
GitHubr4j3sh-com/cve-2025-55182

CVE-2025-55182

CVE-2025-55182を調査・トリアージするための軽量なGoツールキットとDocker化されたNext.jsラボ

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

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有

CVE-2025-55182 ツールキット & ラボ (教育目的のみ)

軽量な Go ツールキットと、CVE-2025-55182 を調査・トリアージするためのDocker化されたNext.jsラボです。教育および正規のテスト目的に限ります。

特徴

  • 根本原因の解説、ビジュアル、ラボ: React2Shell_Deconstructing_a_Perfect_10_RCE.pdf と攻撃経路図を参照してください

React2Shell: 重大な脆弱性の構造

  • 単一バイナリにサブコマンドを内蔵:
    • checker: 高速な並行インベントリスキャン(単一ターゲット、ファイル、または標準入力)、RSC露出のヒューリスティック診断、ターゲットごとのJSON出力、最終サマリー、オプションの -only-vuln、-no-progress、カスタム -ua。
    • poc: エクスプロイト形式のRSCマルチパートリクエストを送信し、返されたダイジェストを表示します。-c でカスタムコマンドを指定可能(デフォルトは id)。
  • 並行制御 (-c)、タイムアウト、進行状況の統計。
  • 柔軟なターゲット入力: -target、-list、または -stdin。スキームがない場合に自動で https:// を先頭に追加。
  • ラボ環境 (vulnlab/) は Next.js 15.5.6/React 19 を使用し、安全な再現のため Dockerfile と docker-compose.yml は localhost:3000 に固定されています。

ビルド

root@kitploit:~
cd checker
GOCACHE=/tmp/go-cache go build -o CVE-2025-55182 ./cmd/CVE-2025-55182

環境でキャッシュの権限問題が発生する場合は、GOCACHE を設定してください。

使い方

root@kitploit:~
# Scanner
./CVE-2025-55182 checker -target https://example.com
./CVE-2025-55182 checker -list ../targets.txt -c 50 -only-vuln
cat ../targets.txt | ./CVE-2025-55182 checker -stdin -no-progress

# PoC (exploit-style request)
./CVE-2025-55182 poc -target http://localhost:3000
./CVE-2025-55182 poc -target http://localhost:3000 -c "whoami"

根本原因(なぜ悪用可能なのか)

CVE-2025-55182 は、React Server Components が Flight ペイロードからモジュールをロードする際の安全でないデシリアライゼーションのバグです。react-server-dom-webpack では、ヘルパー requireModule(metadata) がモジュールを取得し、moduleExports[metadata[2]] を返します。ブラケットアクセスはプロトタイプチェーンを辿るため、攻撃者が制御する $1:constructor:constructor のような参照は、エクスポートされた関数からその constructor(グローバルの Function コンストラクタ)へと昇り、任意のJSを実行できます。Flight プロトコルにより、攻撃者はこれらのコロン区切りのプロパティパスを供給でき、モジュールローダーをリモートコード実行のガジェットに変えることができます。

ラボ (vulnlab/)

root@kitploit:~
cd vulnlab
docker compose build
docker compose up
# App listens on 127.0.0.1:3000 inside the container; runs as non-root user.
  • Dockerfile は Next.js アプリ(Node 20 Alpine)をビルドし、依存関係をインストールしてビルドし、非 root の nextjs ユーザーとして実行します。
  • docker-compose.yml はデフォルトでローカルのみのテスト向けに 127.0.0.1:3000:3000 をバインドします。

検出ルール

Snort / Suricata (サーバーへのHTTP)

root@kitploit:~
alert http any any -> $LAN_NETWORK any (
    msg:"Potential Next.js React2Shell / CVE-2025-66478 attempt";
    flow:to_server,established;
    content:"Next-Action"; http_header; nocase;
    content:"multipart/form-data"; http_header; nocase;
    pcre:"/Content-Disposition:\s*form-data;\s*name=\"0\"/s";
    pcre:"/\"status\"\s*:\s*\"resolved_model\"/s";
    pcre:"/\"then\"\s*:\s*\"\$1:__proto__:then\"/s";
    classtype:web-application-attack;
    sid:6655001;
    rev:1;
)

クエリ(脆弱なReact RSCパッケージ)

root@kitploit:~
{
  "queries": {
    "detect_rev2shell_react_server_components": {
      "query": "SELECT name, version, path FROM npm_packages WHERE (name='react-server-dom-parcel' AND (version='19.0.0' OR (version >= '19.1.0' AND version < '19.1.2') OR version='19.2.0')) OR (name='react-server-dom-turbopack' AND (version='19.0.0' OR (version >= '19.1.0' AND version < '19.1.2') OR version='19.2.0')) OR (name='react-server-dom-webpack' AND (version='19.0.0' OR (version >= '19.1.0' AND version < '19.1.2') OR version='19.2.0'));",
      "interval": 3600,
      "description": "Detects vulnerable versions of React Server Components packages (react-server-dom-*) affected by CVE-2025-55182 / CVE-2025-66478 / React2Shell.",
      "platform": "linux,windows,macos",
      "version": "1.0"
    }
  }
}

安全性と倫理

  • 教育、防御、および許可を得たテスト専用に提供されています。
  • 所有していない、または明示的な許可を得ていないシステムを対象にしないでください。
ツールをダウンロード