CVE-2025-55182 Proof of Concept の解説

Security

概要

本リポジトリは「CVE-2025-55182」を再現するためのProof of Concept をまとめたものです。対象は react-server-dom-webpack@19.0.0 で、認証前(pre-auth)に発生するプロトタイプ汚染を悪用してサーバー側で任意のコード実行(RCE)を誘発します。リポジトリには脆弱性の有無を確認するためのシェルスクリプトと、概念検証用の Python スクリプトが含まれます。研究・検証目的で作成されており、脆弱な環境の診断や対策検討に役立ちますが、悪用や未承諾の攻撃に使うことは厳禁です(約300字)。

GitHub

リポジトリの統計情報

  • スター数: 20
  • フォーク数: 7
  • ウォッチャー数: 20
  • コミット数: 5
  • ファイル数: 3
  • メインの言語: Python

主な特徴

  • react-server-dom-webpack@19.0.0 に関するPre-auth RCEのPoCを収録
  • 検出用のシェルスクリプトと検証用の Python スクリプトを同梱
  • セキュリティ研究向けの簡潔な構成で、影響範囲確認に適する
  • 実行前に環境を隔離し、実運用環境では実行しない旨の注意喚起

技術的なポイント

本件は「プロトタイプ汚染(prototype pollution)」というクラスの脆弱性を起点にしています。プロトタイプ汚染は、JavaScript のオブジェクト継承モデルを悪用し、Object.prototype に不正なプロパティを埋め込むことでアプリケーションの挙動を広範に変更し得る問題です。サーバーサイドで React Server Components を取り扱う際、サーバー側のシリアライズ/デシリアライズやストリーミング処理において信頼できない入力が不適切に扱われると、プロトタイプ汚染が伝播し、最終的に安全でないコードパスを通じて任意の処理が実行されるリスクがあります。

このリポジトリは当該問題を再現するための最小構成で、検出用スクリプトは脆弱性の有無を調べる自動化されたチェックを提供し、Python の検証スクリプトは影響を観察するための概念実証を行います。ただし、PoC の目的は脆弱性の確認と理解であり、詳細な悪用手順や攻撃ベクターを拡散するためのものではありません。対策としては、該当ライブラリを公式に修正されたバージョンへ速やかに更新すること、外部入力の厳格なサニタイズやデシリアライズの制限、ランタイムでの権限分離(最小権限実行)や監査ログの強化が有効です。加えて、依存関係の定期的なスキャンと脆弱性情報の監視、そして責任ある開示プロセスに従った検証が推奨されます(約700字)。

プロジェクトの構成

主要なファイルとディレクトリ:

  • README.md: file
  • check-vulnerability.sh: file
  • exploit.py: file

まとめ

脆弱性の理解と対策検討に有用だが、実行は隔離環境で行い速やかに修正済みへ更新すべき。

リポジトリ情報:

READMEの抜粋:

CVE-2025-55182 Proof of Concept

Critical Pre-Authentication Remote Code Execution in React Server Components

A complete proof-of-concept demonstrating CVE-2025-55182, a critical vulnerability in react-server-dom-webpack@19.0.0 that allows unauthenticated attackers to execute arbitrary code via prototype chain pollution.

Security Research [![Python 3.8+](https:/…