「AndroidのOTA復号化に成功」の書き込みから得られるセキュリティの教訓

2025年5月13日
CyberThreat Research Lab
「AndroidのOTA復号化に成功」の書き込みから得られるセキュリティの教訓

By Jason Yuan (Engineer, Automotive)

10年以上にわたり、OTA(Over-The-Air)アップデートは車両のライフサイクルを通じてその機能を安全に、そして最新の状態に維持するために欠かせないものとなっています。OTAは、フリート規模で修正プログラムを効率的に配信する手段です。しかし、車両の安全性を維持するためのものにもかかわらず、攻撃対象も拡大しています。

この記事では、リサーチャーが車載インフォテインメント(IVI)システム用の正規のAndroid OTAアップデートを解読し、コードベース全体を公開してサイレント・ペイロード・インジェクションの可能性を示した最近の投稿事例(※中国語サイト) を検証します。このプロセスを理解することは、検証制御を強化し、アップデートが侵害された場合の実際の影響範囲を評価するのに役立ちます。

安全なOTAアップデートが重要な理由

OTAアップデートは、インフォテインメントからパワートレインに至る電子制御ユニット(ECU)へのリモートパッチを可能にし、自動車メーカー(OEM)が車両ソフトウェアを維持・強化する方法を変革しました。OTA配信は、リコールコストを大幅に削減し、機能展開を加速し、UN-R156ISO 24089のような進化する規制の要件に応えます。OTAアップデートへの依存が高まるにつれ、OEMは、すべてのアップデートが確実に配信され、完全性が検証され、安全にロールバックできることを保証しなければなりません。そのためには、ハードウェアクリティカルなサブシステムと同等のエンジニアリングの厳密さとテスト規律でアップデートチャネルを扱う必要があります。

攻撃の連鎖

この投稿を行ったリサーチャーは、完全なシステムアップデートを行うことなく、OTAパッケージから目的のAPK(Android package kit)ファイルを直接抽出したいと考えていました。しかし、OTAパッケージをダウンロードしたところ、それが暗号化されていることにすぐ気づきました。そこで、復号化メカニズムがアップデータ自体に組み込まれているに違いないと推測し、オンボードのアップデートアプリをリバースエンジニアリングする作戦に出ました。

アプリをリバースエンジニアリングしたところ、リサーチャーは、静的トークンと埋め込みシードという2つのハードコードされた値を組み合わせて、アップデートパッケージの解読に必要なAES(Advanced Encryption Standard)キーと初期化ベクトル(IV)を生成するネイティブ関数を発見しました。

AndroidのネイティブライブラリをエミュレートするオープンソースのフレームワークであるUnidbgでこの鍵生成ルーチンをエミュレートすることで、リサーチャーはコアペイロードのロックを解除するために必要な暗号化パラメータを正確に復元しました。そこから、標準的なsparseimageとAPKツールを使う事で、アプリケーションの完全なソースコードが暴露されました。

この攻撃を可能にした重大な原因は、復号化ロジックと定数がバイナリに直接ハードコードされており、難読化処理が施されていなかったという設計上の欠陥でした。この欠陥は、ダウンロードされたアップデートのロックを解除する鍵を攻撃者に与えてしまいます。

Figure 1. Attack chain used to decrypt the OTA update

図1. OTAアップデートの解読に使用された攻撃チェーン

この攻撃の軽減策としてOEMが取れる方策は、アップデートバイナリからハードコードされた秘密情報を削除し、鍵の導出を安全なハードウェアモジュールに移行し、重要なアップデータ・コンポーネントにコードの難読化または暗号化を採用して、リバース・エンジニアに対するハードルを上げることです。

フリート全体への影響

攻撃者がOTAパッケージをソースコードに変換すると、パワートレインのロジックからテレマティクス通信に至るまで、コアシステム機能を即座に把握することができます。例えば、ソフトウェアスタック全体に非純正ソフトウェアが混入可能になってしまうことにより、改造されたIVIアプリケーションや遠隔監視やリモート操作に関わる重要な車載モジュールを介してセンサーデータの改ざんなどのハッキングが可能になります。多くのOEMは、複数のプラットフォームや年式にまたがって同じアップデート方式を再利用しているため、単一の OTAパッケージを侵害すれば、脆弱性は瞬く間にフリート全体に広がり、ひとつの侵害がエクスプロイト(脆弱性悪用)の連鎖反応に変わる可能性があります。

安全なOTAアップデートの鍵

ここでの教訓は、OTAアップデートを避けるべきだということではありません。リモートアップデートがなければ、現代のコンプライアンス目標を達成することは不可能です。むしろ、すべてのビルドやアップデートは、偽造不可能な信頼の連鎖を通過させるべきで、車両内の各システム(つまり各ECU)が実行時にもこの信頼を検証し、強化するようでなければなりません。

OEMは、アップデートの整合性をリアルタイムで監視するために継続的な遠隔測定を実施し、サードパーティのコンポーネントと暗号化の完全性を検証するために包括的なソフトウェアインベントリ(ソースコード管理)を維持し、アップデートパイプライン全体の頻繁な攻撃的テストを実施する必要があります。車両セキュリティ・オペレーション・センター(VSOC)に整合性アラートとテスト結果を統合することで、改ざんを迅速に特定して是正し、車両のライフサイクル全体を通じて車両ソフトウェアを安全に保つことができます。

車両のSDV(ソフトウェア・デファインド・ビークル)化が進むにつれて、OTAアップデートは車両のセキュリティにとってより重要になると同時に、攻撃者にとってもターゲットとしてより魅力的なものとなっていきます。開発から配備に至るまで、OTAエコシステムのあらゆる層を強化することは、現在および将来の脅威から車両を保護するために不可欠なものとなっていくでしょう。

リソースからもっと知る

自動車サイバーセキュリティの理解を深める

  • 2025年に向けたギアチェンジ:次世代の自動車サイバーセキュリティにおける課題
    ブログ
    2025年6月2日
    AI、EV、SDV が自動車業界を変革する中、サイバー脅威も同様に進化しています。VicOne の 2025 年の自動車サイバーセキュリティレポートを参考にし、この記事では、業界の脅威の展望に関する重要な洞察と、自動車メーカーが先手を打つために必要な戦略の概要をご紹介します。
    続きを読む
  • シングルSTM32ボードを使用したRAMNの再現
    ブログ
    2025年5月26日
    たった1枚のSTM32ボードを使用して、本格的なRAMN(Resistant Automotive Miniature Network)のコア機能を再現することは、高度なインビークル・ネットワーキングに取り組むための実用的でコスト効率の高い方法です。このハンズオンガイドでは、エンジニアやリサーチャーが最小限のハードウェアで弾力性のある車載通信システムを試作できるように、ステップ・バイ・ステップのセットアップを実行します。
    続きを読む
  • 見えない脆弱性がもたらすリコールリスク:より安全なSDVのための戦略
    ブログ
    2025年5月21日
    従来の脆弱性管理プラットフォームには、増加するゼロデイ脆弱性のリスクについては見落としてしまうセキュリティ上のギャップがどうしても生まれてしまっていました。VicOneの脆弱性&SBOM管理ツール、xZETAがどのように脆弱性の可視性を高め、新たな脅威に先手を打つことを支援できるかを紹介します。
    続きを読む
  • LockBitランサムウェアグループのデータ流出:自動車のサイバーセキュリティへの示唆
    ブログ
    2025年5月21日
    最近起きたLockBit(ロックビット)ランサムウェアグループの内部データ流出により、グループのチャットのやり取りが公開され、被害者がどのように標的とされ、恐喝されたかを知る貴重な内部情報が得られました。攻撃された被害者の中には、自動車関連企業の名前が目立ちます。その主な調査結果を紹介し、LockBit攻撃や類似のインシデントを阻止するために自動車関連企業が講じることのできる実践的な対策を概説します。
    続きを読む
ブログを読む

自動車業界のお客さまのサイバーセキュリティを加速させるために

デモの依頼