
CVE-2025-2783 のフルチェーン RCE エクスプロイト。Chromium Ipcz サンドボックスエスケープの脆弱性。Windows システム(Chrome v134 まで)向けに、スレッドハイジャック、V8 フック、シェルコード実行を実装します。
このリポジトリには、CVE-2025-2783 のフルチェーンエクスプロイト実装が含まれています。この脆弱性は Chromium の Ipcz 通信レイヤーに存在し、攻撃者が制限されたレンダラープロセスからサンドボックス回避と任意のコード実行を達成することを可能にします。このエクスプロイトは 134.0.6998.177 までのバージョンをサポートしています。
https://github.com/user-attachments/assets/a3e2bf34-739c-4db7-9101-0f4d48987ad0
src/: コアエクスプロイト実装。CVE-2025-2783 のための Ipcz ハイジャックロジック、V8 フック、およびスレッドハイジャック実行フローが含まれています。demo/: フルチェーンのデモンストレーション環境。HTML ファイルを介して V8 型混乱(Type Confusion)の脆弱性をトリガーし、src/ からコンパイルされたバイナリペイロードをロードして、レンダラープロセスからシェルコード実行までのチェーン全体を完成させます。third_party/ipcz (Chromium の Ipcz トランスポートプロトコル実装)RelayMessage を処理する際に、プロセス間ハンドルのソースと権限の検証が不十分です。V8Console::Debug をフックして demo/ 環境の JavaScript からのシグナルを傍受し、ArrayBuffer からセカンドステージのシェルコードを安全に抽出します。OnAcceptRelayedMessage をフックし、偽装されたリレーリクエスト (Message ID: 0x69) を構築して、CVE-2025-2783 を介して高権限ハンドルを取得します。SetThreadContext を使用してレジスタ状態を強制的に変更します。VirtualAlloc、ReadProcessMemory、CreateThread を順次呼び出して、シェルコードを実行します。src/)このコードは Chromium の内部 ipcz および mojo ライブラリに深く依存しているため、src/ ディレクトリを Chromium ソースツリーに統合し、GN と Ninja を使用してビルドし、すべての内部依存関係が正しくリンクされるようにすることを強くお勧めします。
demo/)src/ からのバイナリアーティファクトが準備されていることを確認します (demo/ ディレクトリには、事前にコンパイルされた payload.bin と shellcode.bin がすでに提供されています)。demo/ ディレクトリで python -m http.server を実行し、ブラウザで http://127.0.0.1:8000/exp.html にアクセスします。このリポジトリは学術およびセキュリティ研究の目的のみに提供されます。著者は、このコードの使用によって生じたいかなる損失や法的責任も負いません。テストは認可された環境でのみ実施してください。