弊誌はアフィリエイト広告を利用しています。

Qualcommブートローダーに署名未検証の脆弱性、メーカーの解錠手続きを完全迂回

Qualcommの脆弱性でSnapdragon端末のBL解錠が可能に

 「セキュアブート」が署名を見ていなかった。

 Android端末のブートローダーアンロックは、カスタムROMやroot化を目指すユーザーの登竜門です。特にXiaomiは近年、解錠手続きを厳格化し待機期間を長く設けるなど、ハードルを積み上げてきました。そのXiaomiの牙城を、Qualcommのブートローダーに潜む脆弱性が根底から揺さぶっています。Android Authorityが伝えています。

 「Qualcomm GBL Exploit」と呼ばれるこの脆弱性チェーンは、Android 16で導入された新ブートローダーアーキテクチャ「GBL(Generic Bootloader Library)」を標的にしたものです。GBLは起動プロセスの標準化とアップデート対応を目的とした仕組みで、Qualcommの「ABL(Android Bootloader)」がefispパーティションからGBLをUEFIアプリとしてロードします。

 問題の核心はシンプルです。ABLはefispパーティション上のUEFIアプリの「存在」だけを確認し、正規のGBLかどうかの「署名検証」をしていませんでした。署名なしの任意コードを置けば、ABLはそのまま実行してしまいます。

 攻撃チェーンはもう1つの欠陥も組み合わせます。fastbootコマンド「fastboot oem set-gpu-preemption」がパラメータを無検証で受け入れるため、「androidboot.selinux=permissive」を注入可能です。SELinuxがPermissiveモードになれば、本来ブロックされるシステムレベルの操作が素通りになります。

 この2つを掛け合わせると、カスタムUEFIアプリ経由でRPMB(Replay Protected Memory Block)上の「is_unlocked」フラグを直接書き換えられます。メーカー正規の解錠手続きを完全にバイパスする手法です。

 Xiaomi端末ではさらに、Hyper OSの「MQSAS」アプリが持つシステム権限を悪用し、efispへカスタムUEFIアプリを書き込む追加経路も確認されています。Xiaomi 17シリーズ、Xiaomi 17 Ultra、Redmi K90 Pro Max、POCO F8 Ultraで実際に解錠が成功。OnePlus 15でも同様の報告があります。

 影響はSnapdragon 8 Elite Gen 5搭載のAndroid 16端末に広く及びますが、Samsungは独自の「S-Boot」を採用しているため例外です。

 GitHubでは概念実証コードが公開済みで718スターを獲得するなど注目度は高いものの、作者は「TEEに問題が生じる可能性がある」と警告しています。指紋認証のキャリブレーションデータ喪失などの副作用も報告されており、XDA Forumsでは関連スレッドがフォーラムルール抵触の懸念で一時閉鎖される一幕もありました。

 対策は動き始めています。Qualcommは問題のfastbootコマンドの入力検証を修正するパッチをコミット済み。Xiaomiも中国向けHyper OS 3.0.304.0で対策を施した模様ですが、GBL本体の署名検証がどこまで根本修正されたか、OEM各社への展開状況は不透明なままです。

 発見者の帰属をめぐる議論も起きています。XDA上で「Littlenine」氏と中国プラットフォーム上の開発者との間で優先権の応酬があり、責任ある開示のあり方にも一石を投じています。

 Qualcommのブートローダーが署名未検証のままUEFIアプリを実行していた事実は、「セキュアブート」という言葉の重みをあらためて問い直すものです。パッチは出ましたが、修正が数多の端末に届くまでの道のりはとてつもない長さかもしれません。

Xiaomi製品をオンラインで購入 [AD]
すまほん!!を購読しませんか?

Twitterでも最新更新を配信・通知しています

フォローする 再度表示しない