
React2Shell (CVE-2025-55182) のオリジナル概念実証エクスプロイト。Webpackチャンク解析の脆弱性を介したNext.jsアプリケーションでのリモートコード実行を実証。
公開 PoC が出回っており、Google のスキャナ が私が提出したオリジナルの PoC の変種を使用しているため、ようやく責任ある形で React2Shell 向けのオリジナル PoC を公開できる時期になりました。
このリポジトリには 3 つの PoC が含まれています:
00-very-first-rce-poc - 私が RCE 用に開発に成功した最初の PoC。Webpack を使用する Next.js サイトの開発ビルドでのみ直接動作します。01-submitted-poc.js (メイン) - Meta に提出したそのままの PoC。はるかにシンプルで効果的02-meow-rce-poc - Meta への最初の開示の直前、11 月 29 日にハッシュ化されて Sylvie によって証拠として投稿された PoC他の多くの人々が自分たちの PoC を説明していますが、ここに私の非常に簡潔な説明を示します:
$@x を使用すると Chunk にアクセスできますthen を仕込みます.then 関数を持つあらゆるもの)Chunk オブジェクトを制御しながら、パーサーに再び入ります_response に何かを仕込んでおくと、このときに 多数の ガジェットにアクセスできます私の PoC の then には奇妙な仕掛けがあるのに気付くかもしれません。これは、複数のチャンクを「チェーン」するために使用していた便利なプリミティブで、resolve を Array.map に渡すことで、$0 で定義された別のチャンクに「ホップ」できるようにしていました。
出回っている公開の再現 PoC はこれをやっていません。単一のジャンプだけを行う場合には必要ないからです。再現 PoC が、それ以外は私のものと同じ _formData ガジェットを使用していたのは嬉しかったですが、00- PoC は、あえて読もうとするなら、とんでもない展開です :)
近日公開予定。