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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-12295-UXXS-in-my-wasm — Firefoxのcontent→parent srcdoc偽装(N-day、bug 2040160):非about:srcdoc URI上でSrcdocDataを持つ偽造PDocumentChannel → 攻撃者HTMLが被害者オリジンで配信される(UXSS)、侵害されたcontentプロセスからのmojo-port送信パスインジェクション経由 | Kitploit
ツール/GitHubGitHub/sneakynachos/cve-2026-12295-uxxs-in-my-wasm
脆弱性分析エクスプロイトウェブアプリケーション悪用論文と研究ペイロード開発
GitHubsneakynachos/cve-2026-12295-uxxs-in-my-wasm

CVE-2026-12295-UXXS-in-my-wasm

Firefoxのcontent→parent srcdoc偽装(N-day、bug 2040160):非about:srcdoc URI上でSrcdocDataを持つ偽造PDocumentChannel → 攻撃者HTMLが被害者オリジンで配信される(UXSS)、侵害されたcontentプロセスからのmojo-port送信パスインジェクション経由

リポジトリを見る
12日前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-12295 — 非about:srcdoc URI上のsrcdocデータ(Firefox UXSS)

概念実証:侵害されたコンテンツプロセスが、nsDocShellLoadState に任意の URI とともに SrcdocData を保持する PDocumentChannel ロードを偽造します。脆弱なビルドでは、攻撃者のHTMLが被害者のオリジンでドキュメントとして配信されます — 同一オリジン読み取り+外部送信(UXSS)。

対象:Firefox 149.0a1 nightly @ 2fbc0748c4(脆弱、修正前)、macOS arm64。 Firefox 152で修正 — bug 2040160、コミット 54dc16d08771「非about:srcdoc URIロードでのsrcdocデータを拒否」。

バグ

親プロセスは、content→parent IPDLメッセージから nsDocShellLoadState をデシリアライズします。脆弱なコンストラクタは、コンテンツトリガーのロードに対して javascript: のみを拒否していました。SrcdocData は検証されていませんでした。ロード状態が ではないURIとともにsrcdocデータを保持する場合、docshellはsrcdoc HTMLを配信する入力ストリームチャネルを構築し、結果のドキュメントはそのURIのオリジンを取得します。

about:srcdoc
そのURIで

修正では、!mSrcdocData.IsVoid() && !mURI->SchemeIs("view-source") && !NS_IsAboutSrcdoc(mURI) の場合に nsDocShellLoadState IPDLコンストラクタで FatalError を追加し、nsDocShell と Document::StartDocumentLoad に強化アサートを追加します。

関連バグ:CVE-2026-74939(RemoteTypeOverride)— 同じコンストラクタ、同じ搬送メッセージ、同じ配信機構(../poc-cve-2026-74939 を参照)。このPoCは、別のフィールドを反転させてその偽造を再利用します。RemoteTypeOverride は不要です。

デモ

  • 攻撃者ページ srcdoc.html が http://127.0.0.1:8778(オリジンA、wasm-bytes.js のステージ1 wasmプリミティブを介して侵害済み)。
  • PNecko::PDocumentChannel コンストラクタを偽造:URI = http://localhost:8778/nav.html(オリジンB)、SrcdocData = <攻撃者HTML>、同一プロセスの about:blank ポップアップのトップレベル BrowsingContext — 実際のmojo送信パス(operator new → IPC::Message コンストラクタ → Pickle::WriteBytes → MessageChannel::Send)を通じて配信。
  • 親はロードを受け入れ、ポップアップを webIsolated=http://localhost にプロセス切り替えし、docshellは私たちのHTMLをオリジンBのドキュメントとして配信します。
  • ペイロードは /secret.txt をフェッチし(B上で同一オリジン — Aからの実際のクロスオリジンフェッチはCORSでブロックされる)、それをAに外部送信します。

証拠(./irun 実行後の /tmp/srv.log):

root@kitploit:~
REQ_GET /secret.txt
REQ_GET /exfil?d=flag%7Bsrcdoc-crossed-origins-2040160%7D

ファイル

ファイル目的
srcdoc.htmlPoCページ、侵害されたコンテンツプロセス内で実行
forge.py偽造メッセージを構築(自己検証)→ forge.bin/forge.json
wasm-bytes.jsステージ1プリミティブ:任意読み書き、funcref呼び出し(CVE-2026-2796)
mdrive2.pyNightlyを起動・駆動するmarionetteハーネス
irun計装実行:親へのlldbアタッチ+MOZ_LOG/srv.log証拠
profile.user.jsFirefoxプロファイル設定(fission有効、ダンプ有効)
parse_dc.pyキャプチャしたDocumentChannelメッセージのバイト完全パーサー
captured-messages/dc_1.bin実際にキャプチャしたメッセージ、偽造テンプレートとして使用
nav.html、secret.txtデモ用の被害者ページフィクスチャ+シークレット

実行

前提条件:/Users/sid/gecko-2766/obj-browser の脆弱なNightlyビルド、psutilを含む .venv、およびこのディレクトリを配信する 0.0.0.0:8778 のWebサーバー(例:python3 /tmp/srv.py、/tmp/srv.log にログ記録)。

root@kitploit:~
python3 forge.py     # forge.bin/forge.jsonを構築(自己検証)
./irun               # 起動+注入+証拠収集

注:送信後、コンテンツプロセスはティアダウン時にSIGSEGVする可能性があります(偽オブジェクト上のGC)。すべての証拠はその前に出力されます。

参照

  • Mozilla bug 2040160 — 修正コミット 54dc16d08771(MFSA 2026-57、Firefox 152)
  • CVE-2026-74939 — 関連するロード状態の偽造(RemoteTypeOverride)
  • CVE-2026-2796 — プリミティブを提供するステージ1コンテンツRCE
ツールをダウンロード