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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
react2shell-scanner — React Server Components における CVE-2025-55182 (React2Shell) RCE 脆弱性を検出します。高速かつ正確、誤検知ゼロのスキャナーです。 | Kitploit
ツール/GitHubGitHub/nxgn-kd01/react2shell-scanner
脆弱性スキャナーコード分析エクスプロイトウェブアプリケーション悪用DevSecOpsサプライチェーンセキュリティ
GitHubnxgn-kd01/react2shell-scanner

react2shell-scanner

React Server Components における CVE-2025-55182 (React2Shell) RCE 脆弱性を検出します。高速かつ正確、誤検知ゼロのスキャナーです。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

🚨 React2Shell スキャナー

React Server Components における CVSS 10.0 の RCE。あなたの React 19 アプリは脆弱ですか?

CVE-2025-55182(React2Shell)向けの高速かつ高精度なスキャナーです。実環境で悪用されている重大なリモートコード実行の脆弱性を検出します。インテリジェントな Server Components 検出により誤検知ゼロを実現します。

CVSS Score License: MIT GitHub Issues GitHub Stars PRs Welcome

🚨 React2Shell(CVE-2025-55182)について

React2Shell は、React Server Components における**最大深刻度(CVSS 10.0)**の脆弱性であり、認証なしのリモートコード実行を可能にします。攻撃者は、Server Function エンドポイントへの巧妙に細工された HTTP リクエストを通じてこれを悪用できます。

重要な事実:

  • 影響を受ける: React 19.x、Next.js 14〜16.x、react-router、waku、@parcel/rsc、expo
  • 攻撃ベクトル: ネットワーク(認証不要)
  • 影響: サーバー完全侵害(RCE)
  • 公開日: 2025年12月3日
  • 悪用可能性: デフォルト構成ではほぼ100%の成功率
  • 関連 CVE: CVE-2025-55184(DoS)、CVE-2025-55183(ソースコード公開)、CVE-2025-67779
  • ⚠️ 重要な注意: 脆弱なのは React 19.x のみです。React 18.x 以前は影響を受けません。

    ⚡ クイックスタート(30秒)

    root@kitploit:~
    # Option A: Node.js scanner (recommended - cross-platform, no dependencies)
    npx react2shell-scanner /path/to/your/project
    
    # Option B: Direct download and run
    curl -sSL https://raw.githubusercontent.com/nxgn-kd01/react2shell-scanner/main/scan.js > scan.js
    node scan.js /path/to/your/project
    
    # Option C: Clone and run
    git clone https://github.com/nxgn-kd01/react2shell-scanner.git
    cd react2shell-scanner
    node scan.js /path/to/your/project
    

    数秒で結果が得られます: 🚨 脆弱 | ⚠️ 警告 | ✅ 安全

    📋 このスキャナーのチェック内容

    このツールはインテリジェントな脆弱性検出を実行します。

    1. React バージョン分析 🔴 重大

    • 脆弱な React 19.0.0、19.1.0、19.1.1、19.2.0 を検出
    • React 18.x アプリが安全であることを確認(誤検知を防止)
    • react-server-dom-* パッケージを識別

    2. フレームワーク構成チェック 🟡 警告

    • Next.js 14.x-canary から 16.x のバージョンをスキャン
    • react-router、waku、@parcel/rsc、@vitejs/plugin-rsc、rwsdk、expo を検出
    • 必要な箇所で React 19 の依存関係を検証
    • 静的エクスポートモードを検出(Server Components 無効 = 安全)

    3. Server Function 検出 🔍 詳細分析

    • ソースファイル内の 'use server' ディレクティブをスキャン
    • Server Functions を含むファイルを識別
    • 実際に Server Components を使用するプロジェクトのみをフラグ付け
    • 注記: 動的にインポートされた Server Functions は手動レビューが必要です

    4. スマートな誤検知防止 ✅ 精度

    • React 19 + Server Components + 'use server' ディレクティブを持つアプリのみをフラグ付け
    • エッジケースに関するコンテキストを提供
    • プロジェクトが脆弱であるかどうかの理由を説明

    5. マルチプロジェクトスキャン 📁 スケール

    • 再帰的なディレクトリスキャン
    • npm、yarn、pnpm プロジェクトを検出
    • プロジェクト固有の修正コマンドを生成

    🎯 スキャナー機能

    プロパティ値
    CVE IDCVE-2025-55182
    名前React2Shell
    CVSS スコア10.0(CRITICAL)
    CVSS ベクトルAV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
    攻撃ベクトルネットワーク
    認証不要
    影響システム完全侵害

    影響を受けるバージョン

    React:

    • 19.0.0、19.1.0、19.1.1、19.2.0

    React Server DOM パッケージ:

    • react-server-dom-webpack 19.0.0 - 19.2.0
    • react-server-dom-parcel 19.0.0 - 19.2.0
    • react-server-dom-turbopack 19.0.0 - 19.2.0

    Next.js:

    • 14.0.0 から 14.2.34
    • 14.3.0-canary.0 から 14.3.0-canary.87
    • 15.0.0 から 15.0.6
    • 15.1.0 から 15.1.8
    • 15.2.0 から 15.2.5
    • 15.3.0 から 15.3.5
    • 15.4.0 から 15.4.7
    • 15.5.0 から 15.5.6
    • 16.0.0 から 16.0.9

    影響を受ける追加フレームワーク(React 公式アドバイザリによる):

    • react-router 7.0.0 - 7.1.3
    • waku 0.21.0 - 0.21.5
    • @parcel/rsc 2.12.0 - 2.13.2
    • @vitejs/plugin-rsc 0.1.0 - 0.2.0
    • rwsdk(Redwood SDK)0.1.0 - 0.4.0
    • expo 52.0.0 - 52.0.9

    パッチ適用済みバージョン

    React: 19.2.1 以降

    Next.js:

    • 14.2.35+、14.3.0-canary.88+
    • 15.0.7+、15.1.9+、15.2.6+、15.3.6+、15.4.8+、15.5.7+
    • 16.0.10+

    その他のフレームワーク:

    • react-router: 7.1.4+
    • waku: 0.21.6+
    • @parcel/rsc: 2.13.3+
    • @vitejs/plugin-rsc: 0.2.1+
    • rwsdk: 0.4.1+
    • expo: 52.0.10+

    🚀 はじめに

    前提条件

    Node.js スキャナー(推奨):

    • Node.js 12+(クロスプラットフォーム、依存関係なし)

    Bash スキャナー:

    • Bash 3.2+(macOS/Linux)
    • jq(JSON プロセッサ)
    root@kitploit:~
    # Install jq (if using Bash scanner)
    # macOS
    brew install jq
    
    # Ubuntu/Debian
    sudo apt-get install jq
    
    # RHEL/CentOS
    sudo yum install jq
    

    ステップ1: スキャナーを入手する

    オプション A: クローン(ユーザーに推奨)

    root@kitploit:~
    # Clone the repository
    git clone https://github.com/nxgn-kd01/react2shell-scanner.git
    cd react2shell-scanner
    
    # Make scripts executable
    chmod +x scan.sh scan.js
    

    オプション B: フォーク(コントリビューターに推奨)

    root@kitploit:~
    # Fork on GitHub (click "Fork" button on repository page)
    # Then clone your fork
    git clone https://github.com/YOUR_USERNAME/react2shell-scanner.git
    cd react2shell-scanner
    
    # Make scripts executable
    chmod +x scan.sh scan.js
    
    # Add upstream remote to stay updated
    git remote add upstream https://github.com/nxgn-kd01/react2shell-scanner.git
    

    オプション C: 直接ダウンロード

    root@kitploit:~
    # Node.js version (recommended - cross-platform)
    curl -O https://raw.githubusercontent.com/nxgn-kd01/react2shell-scanner/main/scan.js
    chmod +x scan.js
    
    # Bash version (Unix/Linux/macOS only)
    curl -O https://raw.githubusercontent.com/nxgn-kd01/react2shell-scanner/main/scan.sh
    chmod +x scan.sh
    

    💻 使用方法

    ステップ2: スキャナーを実行する

    🔍 現在のディレクトリをスキャン:

    root@kitploit:~
    # Using Node.js (recommended)
    node scan.js
    
    # Using Bash
    ./scan.sh
    

    📁 特定のプロジェクトをスキャン:

    root@kitploit:~
    node scan.js /path/to/project
    ./scan.sh /path/to/project
    

    🗂️ 再帰スキャン(すべてのサブディレクトリ):

    root@kitploit:~
    node scan.js -r
    ./scan.sh -r
    

    詳細オプション

    JSON 出力(自動化用):

    root@kitploit:~
    node scan.js --json
    ./scan.sh --json
    

    CI/CD モード(脆弱な場合、コード 1 で終了):

    root@kitploit:~
    node scan.js --ci
    ./scan.sh --ci
    

    詳細出力:

    root@kitploit:~
    node scan.js -v
    ./scan.sh -v
    

    オプションの組み合わせ:

    root@kitploit:~
    node scan.js /path/to/projects -r --json --ci
    ./scan.sh /path/to/projects -r --json --ci
    

    コマンドラインオプション

    オプション説明
    -r, --recursiveNode.js プロジェクトのすべてのサブディレクトリをスキャン
    -v, --verbose詳細な出力を表示
    --json結果を JSON として出力
    --ci脆弱性が見つかった場合、コード 1 で終了(CI/CD 用)
    -h, --helpヘルプメッセージを表示

    終了コード

    コード意味
    0脆弱性が見つかりませんでした
    1脆弱性が見つかりました(--ci フラグ使用時)
    2スキャンエラーが発生しました

    使用例

    例1: 単一プロジェクトをスキャン

    root@kitploit:~
    $ node scan.js ~/my-react-app
    
    ╔════════════════════════════════════════════════════════════╗
    ║  CVE-2025-55182 Scanner (React2Shell)                      ║
    ╚════════════════════════════════════════════════════════════╝
    
    Severity: CRITICAL (CVSS 10.0)
    Description: Unauthenticated RCE in React Server Components
    
    Scan Summary:
      Total projects: 1
      Vulnerable: 1
      Safe: 0
    
    ⚠ VULNERABLE PROJECTS FOUND:
    
    1. /Users/user/my-react-app
       └─ react 19.0.0 → 19.2.1
       └─ next 15.0.3 → 15.0.5
    
       Fix command:
       $ cd /Users/user/my-react-app
       $ npm install [email protected] [email protected]
    

    例2: JSON 出力付き再帰スキャン

    root@kitploit:~
    $ node scan.js ~/projects -r --json > results.json
    
    root@kitploit:~
    {
      "vulnerability": "CVE-2025-55182",
      "severity": "CRITICAL",
      "cvss": 10.0,
      "scanned": 5,
      "vulnerable": 2,
      "results": [
        {
          "path": "/Users/user/projects/app1",
          "vulnerable": true,
          "packages": [
            {
              "name": "react",
              "version": "19.0.0",
              "fixVersion": "19.2.1"
            }
          ],
          "packageManager": "npm",
          "fixCommands": [
            "cd /Users/user/projects/app1",
            "npm install [email protected]"
          ]
        }
      ]
    }
    

    例3: CI/CD 統合

    .github/workflows/security-scan.yml

    root@kitploit:~
    name: CVE-2025-55182 Security Scan
    
    on: [push, pull_request]
    
    jobs:
      scan:
        runs-on: ubuntu-latest
        steps:
          - uses: actions/checkout@v3
    
          - name: Set up Node.js
            uses: actions/setup-node@v3
            with:
              node-version: '18'
    
          - name: Download CVE-2025-55182 Scanner
            run: |
              curl -O https://raw.githubusercontent.com/nxgn-kd01/cve-2025-55182-scanner/main/scan.js
              chmod +x scan.js
    
          - name: Scan for vulnerabilities
            run: node scan.js --ci
    

    GitLab CI(.gitlab-ci.yml)

    root@kitploit:~
    security-scan:
      stage: test
      image: node:18
      script:
        - curl -O https://raw.githubusercontent.com/nxgn-kd01/cve-2025-55182-scanner/main/scan.js
        - chmod +x scan.js
        - node scan.js --ci
      allow_failure: false
    

    動作の仕組み

    スキャナーは以下のチェックを実行します:

    1. Node.js プロジェクトを特定 - package.json ファイルを見つける
    2. 依存関係を解析 - dependencies と devDependencies の両方から
    3. バージョンを既知の脆弱バージョンと照合:
      • React 19.0.0、19.1.0、19.1.1、19.2.0
      • React Server DOM パッケージ(同バージョン)
      • Next.js のバージョン範囲(14.3.x、15.x、16.x)
    4. Server Functions をスキャン - ソースファイル内の 'use server' ディレクティブを探す
    5. 実際の脆弱性を検証 - 以下をチェック:
      • React バージョン(影響を受けるのは React 19 のみ - React 18 は安全)
      • 構成(静的エクスポートは Server Components を使用しない)
      • 'use server' ディレクティブの存在(Server Functions の使用を示す)
    6. パッケージマネージャーを検出(npm、yarn、または pnpm)
    7. 修正コマンドを生成 - 適切なアップグレード構文付き
    8. 結果を報告 - 人間が読める形式または JSON 形式で

    精度機能

    スキャナーには誤検知を防ぐためのインテリジェントな検出機能が含まれています:

    • React バージョンチェック: React 19 が存在する場合のみ Next.js アプリをフラグ付け(React 18 は安全)
    • 静的エクスポート検出: output: 'export' を使用するプロジェクトは安全である可能性が高いとマーク
    • Server Function 検出: ソースファイル内の 'use server' ディレクティブをスキャンして、実際の Server Component の使用を確認
    • コンテキストに応じた警告: プロジェクトが脆弱であるかどうかの理由を説明
    • 保守的なアプローチ: 手動レビューが必要なエッジケース(例: 動的にインポートされた Server Functions)について警告

    出力例:

    root@kitploit:~
    ✓ No vulnerable projects found
    
    ℹ Projects with analysis notes:
    
    1. /path/to/project
       ℹ Next.js ^15.1.3 is in vulnerable range, but using React 18 (safe - only React 19 affected)
    
    2. /path/to/another-project
       ℹ Next.js 16.0.5 with React 19 detected, but no 'use server' directives found (likely safe).
         Note: dynamically imported Server Functions require manual review.
    

    修復手順

    ステップ1: スキャナーを実行する

    root@kitploit:~
    node scan.js -r
    

    ステップ2: 修正コマンドを適用する

    各脆弱なプロジェクトについて、提案された修正コマンドを実行します:

    root@kitploit:~
    cd /path/to/project
    npm install [email protected] [email protected]  # Example
    

    または yarn を使用する場合:

    root@kitploit:~
    yarn upgrade [email protected] [email protected]
    

    または pnpm を使用する場合:

    root@kitploit:~
    pnpm update [email protected] [email protected]
    

    ステップ3: アプリケーションをテストする

    root@kitploit:~
    npm test
    npm run build
    

    ステップ4: 修正を検証する

    root@kitploit:~
    node scan.js --ci
    

    ❓ よくある質問(FAQ)

    Q: 推移的依存関係もスキャンしますか?

    A: 現在、スキャナーは package.json 内の直接依存関係をチェックします。深い依存関係スキャンには、このツールと組み合わせて npm audit または yarn audit を使用してください。

    Q: React 18 を使用していますが、影響を受けますか?

    A: いいえ、React 18 は影響を受けません ✅

    CVE-2025-55182 は React 19.x の Server Components にのみ影響します。スキャナーは、脆弱な範囲内にある Next.js 15.x または 16.x を使用している場合でも、React 18 アプリを安全として正しく識別します。

    Q: 自動ビルドパイプラインで使用できますか?

    A: はい! --ci フラグを使用すると、脆弱性が見つかった場合にスキャナーがコード 1 で終了し、パイプラインが失敗します。上記の CI/CD 統合の例を参照してください。

    Q: すぐにアップグレードできない場合はどうすればよいですか?

    A: 一時的な緩和策(アップグレードが唯一の決定的な修正です):

    1. ⛔ アプリケーションで Server Components を無効にする
    2. 🛡️ 疑わしい RSC ペイロードをブロックする WAF ルールを追加する
    3. 📊 悪用の試みがないかログを監視する
    4. ⏰ 緊急アップグレードの時間枠を計画する

    ⚠️ 重要: これらは一時的な対策にすぎません。できるだけ早くパッチ適用済みバージョンにアップグレードしてください。

    Q: このスキャナーの精度はどのくらいですか?

    A: インテリジェントな誤検知防止機能により非常に高精度です:

    • ✅ 公式 CVE アドバイザリとの正確なバージョン一致をチェック
    • ✅ React 19 の依存関係を検証(React 18 の誤検知を防止)
    • ✅ 静的エクスポート構成を検出
    • ✅ 'use server' ディレクティブをスキャンして実際の脆弱性を確認
    • ✅ エッジケースに対するコンテキストに応じた警告を提供

    Q: 動的にインポートされた Server Functions についてはどうですか?

    A: スキャナーはソースファイル内の 'use server' ディレクティブを検出します。ただし、動的にインポートされた Server Functions(import() で実行時に読み込まれるもの)は静的に検出されない場合があります。スキャナーが「'use server' ディレクティブが見つかりませんでした」と報告しても、Server Functions に動的インポートを使用している場合は、それらのファイルを手動でレビューしてください。スキャナーにはこの点を思い出させる注記が含まれます。

    コントリビューション

    コントリビューションを歓迎します! お気軽に issue またはプルリクエストを送信してください。

    テストの実行

    root@kitploit:~
    # Test on sample projects
    ./test-scanner.sh
    

    サポート対象フレームワーク

    このスキャナーは、React 公式アドバイザリに従って、RSC を有効にしたすべての主要フレームワークを検出します:

    • ✅ React / react-server-dom-*
    • ✅ Next.js
    • ✅ react-router(RSC API 対応)
    • ✅ waku
    • ✅ @parcel/rsc
    • ✅ @vitejs/plugin-rsc
    • ✅ rwsdk(Redwood SDK)
    • ✅ expo

    追加のフレームワークについては、issue を開くか PR を送信してください。

    参考情報

    • React 公式ブログ: 重大なセキュリティ脆弱性
    • NVD CVE-2025-55182
    • Wiz Research: React2Shell 分析
    • Microsoft: CVE-2025-55182 への防御
    • AWS: China-nexus グループが React2Shell を悪用
    • Datadog Security Labs: CVE-2025-55182 RCE 分析
    • Tenable: CVE-2025-55182 FAQ

    ライセンス

    MIT ライセンス - 詳細は LICENSE ファイルを参照してください

    免責事項

    このツールは、脆弱なプロジェクトの特定を支援するためにコミュニティへ現状のまま(as-is)提供されます。本番環境にデプロイする前に、スキャナー結果を常に検証し、更新を安全な環境でテストしてください。

    サポート

    このツールが役立つと思われた場合は、以下をお願いします:

    • ⭐ このリポジトリにスターを付ける
    • 🐛 問題を報告する
    • 🔄 チームと共有する
    • 🤝 改善に貢献する

    安全を確保し、依存関係を最新の状態に保ってください!

    ツールをダウンロード