Google Project Zeroの研究者らが、Pixel 10デバイスを狙う完全なゼロクリック・エクスプロイト・チェーンを発見し、リモート音声デコーディング・バグがいかに単一の脆弱なビデオドライバを通じて完全なカーネル制御にまで昇格するかを実証しました。
このチェーンはCVE-2025-54957で始まります。これはDolby Unified Decoder (UDC)の重大な欠陥で、以前Pixel 9デバイスを狙うために使用されました。
ターゲットが音声メッセージまたは音声添付ファイル経由で細工されたDolby Digital Plus (DD+) 音声ストリームを受け取ると、デバイスは自動的にこれを処理し、ユーザーの操作はまったく必要ありません。これにより、通常のメディアファイルが静かな攻撃ベクトルに変わります。
Pixel 10では、Project Zeroの研究者Seth Jenkinsが既存のDolby UDCエクスプロイトを適応させ、更新されたライブラリビルド用にオフセットを再計算しました。
主な障害は、Pixel 10がクラシックなスタック保護からReturn Address Pointer Authentication (RET PAC) への切り替えで、これまでの__stack_chk_fail上書きプリミティブを廃止したことでした。
Jenkinsはこれを回避するため、dap_cpdp_initをターゲットにしました。これは初期化関数で1回だけ実行される関数であり、安全に上書きでき、その後の通常のデコーディングに影響しません。
この更新されたエクスプロイトは、2025年12月または2026年1月のAndroidセキュリティパッチを適用していないデバイスでのみ機能します。
Pixel 9では、2段目のエクスプロイトはBigWave AV1ドライバのバグに依存していました。Pixel 10はそのドライバを削除しましたが、Tensor G5チップのChips&Media Wave677DVブロック用の新しい/dev/vpuドライバを導入しました。
BigWaveの背後にある同じ開発チームがこのドライバを保守していることから、自然な監査対象となります。
わずか2時間で、JenkinsとJann Hornの同僚は、VPU mmapハンドラの重大な欠陥を発見しました。
Pixel 10はカーネルを固定の物理アドレスに配置するため、KASLRブルートフォースは不要です。Project Zeroはわずか5行のコードで任意のカーネル読み取り・書き込みプリミティブを構築し、1日以内に完全なエクスプロイトを完成させました。
Jenkinsは2025年11月24日にVPUバグを報告しました。Googleは71日後の2月のPixelセキュリティ情報報告でパッチを配信し、これはJenkinsのAndroidドライババグが初めて90日以内にパッチされたもので、Googleのトリアージパイプラインの測定可能な改善を反映しています。
しかし、この研究は持続的な問題を浮き彫りにしています。浅く、容易に発見可能な脆弱性がベンダーが保守するカーネルドライバに存在し続けているのです。
Project Zeroは、OEMメーカーに対し、そのようなチェーンがエンドユーザーに到達する前に、体系的なセキュアコーディング慣行とプロアクティブなドライバ監査への投資を促しています。
翻訳元: https://cyberpress.org/zero-click-exploit-chain-for-pixel-10/