セキュリティ研究企業Paradigm Shiftが、AppleのA12・A13チップに存在するBootROM脆弱性と、それを悪用する実証コード「usbliter8」を公開しました。対象はiPhone XSからiPhone 11シリーズまでの計6世代におよぶモデル群で、BootROMはチップ製造時に焼き込まれるコードのため、ソフトウェア更新で修正できず、対象端末は生涯にわたって脆弱なままとなります。
checkm8の系譜を継ぐ「usbliter8」
BootROM(SecureROM)はiPhoneの電源投入時に最初に実行されるコードで、チップに直接書き込まれているため後から書き換えることができません。この種の公開済みBootROMエクスプロイトとしては、2019年に登場した「checkm8」が知られており、iPhone 4SからiPhone Xまでが対象でした。今回のusbliter8はその系譜を引き継ぎ、次世代チップであるA12・A13を搭載したiPhone XS〜iPhone 11シリーズへと対象を広げる形となります。
慣例として、侵害された端末のUSBシリアル番号には「PWND」という文字列が注入されます。これはcheckm8以前から続く合図で、usbliter8でも踏襲されています。
脆弱性の正体——USBコントローラのバッファ操作
エクスプロイトは、Appleチップに内蔵されたUSBコントローラのバグを突きます。起動時にUSBデータを受信する際、コントローラは受信パケットをメモリバッファに格納しますが、Paradigm Shiftによれば、異常に小さなパケットを特定のシーケンスで送り込むことで、内部のハードウェアポインタを「後ろ向きに」歩かせることが可能だといいます。これにより、本来書き込まれてはならない領域へのデータ書き込みが成立します。
研究チームは、これがAppleのソフトウェアではなくUSBコントローラのハードウェア自体のバグであると見ているようです。
なぜA12・A13だけが対象なのか
| チップ | 対象/対象外 | 理由 |
|---|---|---|
| A11(iPhone X) | 対象外 | USBドライバがパケットごとにポインタを手動リセット |
| A12 | 対象(容易) | コード実行が比較的単純に成立 |
| A13 | 対象(困難) | PACがメモリ改ざんを検出・ブロック |
| A14以降 | 対象外 | BootROMレベルでメモリ保護機能が正しく設定されている |
A13ではAppleがPointer Authentication Codes(PAC)と呼ばれるセキュリティ機能を導入しており、特定の種類のメモリ改ざんを検出・ブロックします。Paradigm Shiftによれば、A13でPACを回避するには長い多段階のプロセスが必要だったといいます。
再起動しても消えない——usbliter8が端末に残すもの
プロセッサの制御を奪った後、usbliter8はカスタムハンドラをインストールし、端末を再起動しても残存する仕組みを構築します。追加される機能は次の2点です。
- 端末のセキュリティ設定を一時的に引き下げる
- 検証チェックなしで未署名ソフトウェアを起動する
Paradigm Shiftは、usbliter8がSecure Enclaveに直接影響するわけではないとしつつも、この種のBootROM侵害はSecure Enclaveを攻撃するためのより広範な経路を開くと述べています。
該当端末ユーザーが取るべき判断
ハードウェアレベルの脆弱性のため、Apple側でのソフトウェア修正は不可能です。iPhone XS〜iPhone 11シリーズを業務用途や機微情報の管理に使っているユーザーは、次のような運用面での対策を検討する価値があります。
- 端末を物理的に他者へ預けない(修理時はApple正規プロバイダを利用する)
- USB接続は信頼できる純正・認証済み充電器とケーブル以外で行わない
- 空港・カフェ・ホテル等の公共USB充電ステーションを避け、ACコンセントから自前のアダプタで給電する
- 不明なPCやキオスク端末へのUSB接続は控えることで、接触機会を大幅に削減できます
買い換えを検討中であれば、A14以降を搭載した端末は本脆弱性の対象外である点が判断材料になります。Paradigm Shiftは公開前にApple Product Securityへ報告し、Appleと協調的開示の手続きを行ったとされています。実証コードの全体は同社サイト(ps.tc)で公開されています。
iPhone以外にも広がる影響範囲——iPad・Apple Watch・Apple TVも対象
usbliter8の影響はiPhone XS〜11シリーズだけにとどまりません。AppleInsiderの報道によれば、A12・A13系SoCを搭載した複数のiPadモデルや、S4・S5チップを採用したApple Watchも本脆弱性の対象に含まれています。
A12世代で対象となる主な非iPhoneデバイス
- iPad Air(第3世代)
- iPad mini(第5世代)
- iPad(第8世代)
- Apple TV 4K(第2世代)
- Apple Watch Series 4(S4搭載)
- Apple Watch Series 5/SE(S5搭載)
またA13搭載モデルとしては第2世代iPhone SEも対象に挙げられています。Cybersecurity Newsによると、根本原因はAppleが自社SoCに統合しているSynopsys製DWC2 USBコントローラのバグであり、同コントローラを共用する複数のApple製品ラインに波及した形となっています。
物理アクセス前提という制約と、フォレンジック領域への波及
9to5Macは、usbliter8の悪用にはDFUモード経由のUSB物理接続が必須であると報じています。リモートからの即時悪用には繋がらない一方で、過去のcheckm8がたどった経路を見ると、その意味合いは無視できません。
Cellebriteなどの商用フォレンジックベンダーは、checkm8をiOS端末からの論理ファイルシステム抽出に活用してきた経緯があり、法執行機関にとってBootROMエクスプロイトはデータ取得の有力な手段でした。usbliter8の登場により、これまでcheckm8の射程外だったA12・A13世代の押収端末についても、同様のフォレンジック手法が適用可能となる可能性があります。
Law enforcement uses physical access to attach commercial forensic tools which perform exploitation and data extraction on mobile devices.
ElcomSoftの解説では、近年のロックダウンモードなどiOS側のセキュリティ機能がUSB経由のフォレンジック手法の有効性を制限しつつあるとも指摘されており、ハードウェアの脆弱性とソフトウェア側の防御がせめぎ合う構図となっています。
Q&A
Q. iOSをアップデートすれば修正されますか? いいえ。BootROMはチップに焼き込まれているコードのため、ソフトウェア更新では修正できません。対象端末は生涯にわたって脆弱なままとなります。
Q. リモートで攻撃される危険はありますか? usbliter8はUSB経由でデータを送り込むことで成立するエクスプロイトで、物理的なUSB接続が攻撃の前提となります。そのため純粋なリモート(ネットワーク経由)からの即時悪用リスクは限定的ですが、空港・ホテルの公共USB充電ポート、修理業者経由、貸与・盗難端末などを通じた接触機会には注意が必要です。短時間でも他人のUSBポートやケーブルに接続する場面は実質的な攻撃面となります。
Q. Secure Enclaveに保存された生体認証データは漏れますか? Paradigm Shiftは、usbliter8がSecure Enclaveに直接影響するものではないとしています。ただし、BootROM侵害はSecure Enclaveを狙うより広範な攻撃の足がかりになり得るとも述べられています。