ホームへ戻る

AI 安全

root権限があればPixel Cameraのハードウェア鍵で偽造画像に署名可能、C2PA検証も通過

セキュリティ研究者はKeystorkを使ってカメラアプリになりすまし、Android StrongBoxに任意のAI画像向けの有効なContent Credentialsを生成させた。この攻撃では秘密鍵をエクスポートする必要はない。明らかになったのは、署名側が侵害されると正規の鍵が悪用され得るという弱点であり、C2PAの署名アルゴリズムが破られたわけではない。

Unknown authorUnknown author · Public domain · Image source
zh-Hant

セキュリティ研究者のDavid Buchananは、Android C2PAカメラに対する概念実証を公開した。まずCVE-2026-43499を悪用し、bootloaderがロックされ、最新のセキュリティアップデートが適用済みと表示されるPixelでroot権限を取得する。続いて、自作のKeystorkサービスをPixel Cameraになりすまさせ、そのAndroid KeyStore権限を利用した。研究者は、AI生成画像に有効な署名と証明書チェーンを付与することに成功し、検証ツールはそのコンテンツをカメラで撮影された未編集の画像として表示した。

重要なのは、StrongBoxやTitan M2から秘密鍵を抽出したわけではない点だ。ハードウェア鍵は引き続きセキュアエレメント内に保持されるが、root権限を得たプロセスは認可済みアプリケーションになりすまし、任意のC2PA manifestへの署名をセキュアエレメントに要求できる。Buchananが公開したKeystorkはクライアント/サーバーアーキテクチャを採用しており、root化されたデバイス上のdaemonが任意のKeyStore操作を代理する。さらに、Pixel Cameraで「任意の画像に署名」するPoCも公開した。同氏によると、この経路はPixel 8aとPixel 9aでテスト済みだという。

C2PA仕様自体が証明するのは、ある鍵が特定の声明に署名したことと、署名後にコンテンツが改ざんされていないことだけだ。一方、Android attestationのドラフトは、StrongBoxの証明書チェーン、デバイスの状態、アプリケーションのIDに基づき、署名プロセスが信頼できると推定する。OSが実行中に権限昇格されても、bootやバージョンの測定値が変化しない場合、検証側は署名要求が実際にはなりすましプロセスから送られたことを検知できない。

これは、すべてのC2PAファイルや専用カメラハードウェアを偽造できるという意味でも、暗号署名が無効になったという意味でもない。影響を受けるのは、Android Key AttestationまたはPlay Integrityを利用して「本物のカメラ」であることを保証する実装だ。ソフトウェアの脆弱性は修正できるが、研究者はメモリ故障注入によってroot権限を取得する経路も実証しており、Googleはハードウェア攻撃に関する報告を実質的に修正不可能と分類したという。導入事業者はContent Credentialsを真正性の証明ではなく来歴を示すシグナルとして扱い、短期間だけ有効な鍵、リアルタイムの完全性チェック、失効照会、画像処理パイプライン全体を保護された実行環境へ移すといった今後の設計に注目すべきだ。

出典

  1. C2PA Cameras Do Not Survive Contact With Reality
  2. Attestation in the C2PA Framework
  3. Root-My-Pixel: Jailbreak supported Google Pixel phones with CVE-2026-43499