ソフトウェア・インテグリティ

 

自動車のキーレスエントリーシステムに対する攻撃の分析

キーレスエントリーシステムの利便性にはセキュリティの低下という代償がつきものです。主なキーフォブ・ハッキングが発生するしくみと、これを防止するために予防的なセキュリティ対策が重要である理由を説明します。

キーフォブ・ハッキングの分析 | シノプシス

車載システムの接続機能の増加と車載ソフトウェアの大規模化・複雑化に伴い、最近の自動車はサイバーセキュリティ攻撃の影響を受けやすくなっています。長年にわたり、セキュリティ研究者が車載システムのさまざまな脆弱性を発見したことで、自動車のサイバーセキュリティの必要性に対する意識が高まりました。一例として、2020年11月、ベルギーのルーヴェン大学のLennert Wouters氏が発見したTesla Model Xキーレスエントリーシステムの一連の脆弱性の公表が挙げられます。

キーフォブ・ハッキングの攻撃手順

Tesla Model Xキーレスエントリーシステムのハッキング手順を図1に示します。図中の数字は各手順を示しています。ターゲット車両はロックされており、ターゲット・キーフォブは車両から離れた場所にあります。

キーフォブハッキングの手順 | シノプシス

図1. 攻撃用デバイス、ターゲットとなるキーフォブ、ターゲットとなる車両が関与する攻撃手順。

攻撃者は、改竄したボディ・コントロール・モジュール(BCM)、改竄したキーフォブ、Raspberry Piで構成される攻撃用デバイスを準備して使用します。改竄には、Raspberry Pi上で実行され、SEをエミュレートするPythonスクリプトを用いてセキュア・エレメント(SE)チップを変更する操作も含まれます。

  1. 攻撃者は、ターゲット車両に接近し、フロントガラスを通して車両識別番号(VIN)を読み取り、攻撃用デバイス内の改竄されたBCM用にエミュレートしたSEを使用するように設定します。
  2. 攻撃者はターゲット・キーフォブを見つけて攻撃用デバイスをその近くに置き、ターゲット車両を装って最大5メートル程度の距離まで低周波(LF)を介して接続します。攻撃者は、VINから引き出した識別子を使用して、以前にペアリングされたターゲット・キーフォブを、Bluetooth Low Energy(BLE)経由で接続可能として強制的にアドバタイズします。
  3. 攻撃者は、Raspberry Piからターゲット・キーフォブに対してBLEを介して悪意のあるファームウェア更新をプッシュし、キーフォブを完全に制御します。この更新は、ターゲット・キーフォブに対してOTA(Over The Air)ダウンロードサービスを利用して最長30メートルの距離から実行できます。
  4. ターゲット・キーフォブが更新されると、攻撃用デバイスはBLEを介して再接続します。キーフォブで悪意のある攻撃者が制御するファームウェアが実行されているため、攻撃者は任意のアプリケーション・プロトコル・データユニット(APDU)コマンドをターゲット・キーフォブのSEに送信することが可能になり、キーフォブのSEからターゲット車両に対する1回限り有効のさまざまなロック解除コマンド(ドアやトランクのロック解除など)を抽出できるようになります。
  5. 攻撃者はターゲット車両に接近し、有効なロック解除コマンドを使用してターゲット車両のロックを解除します。ロック解除コマンドは、BLE経由でRaspberry PiからターゲットBCMに送信されます。
  6. 攻撃者は車両内部に物理的にアクセスし、中央モニターの下にある診断ポートを介して攻撃デバイスを車両ネットワークに物理的に接続できるようになります。攻撃用デバイスは、CAN(Controller Area Network)を介してターゲットBCMに接続します。
  7. 攻撃用デバイスは、ターゲットBCMに対して、改竄されたキーフォブとのペアリングを指示します。BCMでチャレンジ/レスポンス認証を渡して、改竄されたキーフォブを追加すると、必要な資格情報がキーフォブのエミュレートされたSEに格納されます。
  8. 攻撃者は、攻撃用デバイス上の新しくペアリングされたキーフォブを使用して車両を起動し、エミュレートされたキーフォブのSEに以前に保存された資格情報を使用してチャレンジ/レスポンス認証を成功させ、ターゲット車両を運転して持ち去ることができます。

キーフォブハッキングの原因となる可能性のある脆弱性

この攻撃を可能にする脆弱性は主に2つあります。その問題点を表1にまとめています。

キーフォブ・ハッキングの脆弱性 | シノプシス
表1. 脆弱性の概要

キーフォブには署名検証が実装されていますが、脆弱性を狙えば、攻撃者は悪意のあるファームウェアでBLEを介してキーフォブを更新できます。さらに、有効なキーフォブには、通常、バックエンドから受信し、プロビジョニング中に取得された署名付き証明書が格納されますが、キーフォブとのペアリング中には、証明書は車両のBCMによって検証されません。

この問題は2020年8月にセキュリティ研究者の責任ある開示によってTeslaに開示され、Teslaはこれに対処するため、2020年11月にOTA(Over The Air)パッチをリリースしました。

一般に公開されている情報は限られているため、セキュリティ対策に関するここでの議論を進める便宜上、ターゲット・システムと脆弱性の種類は一定の仮定に基づいています。

自動車産業におけるセキュリティ対策の導入

自動車産業のセキュリティ対策 | シノプシス

ISO SAE 21434と呼ばれる新しい自動車のサイバーセキュリティ標準規格の策定や、国連規則155(UN-R155)をはじめとする規制など、サイバーセキュリティの向上を支援するさまざまな取り組みがすでに進行中です。前述した問題の種類を発見して対処するために可能な方法がいくつかあります。ここでは、特定の脆弱性に対処するための具体的な技術上のセキュリティ対策についてではなく、セキュリティの向上と、リリース前の最終製品の段階で脆弱性が存在するリスクの軽減を支援するために自動車産業が取り組むべきアプローチとセキュリティ活動について概観することに重点を置いています。

アプリケーション・セキュリティ・テストで実装と設計の問題に対処する

まず、キーフォブ実装時の不適切な署名検証の問題について説明します。この種の実装の問題は、多くの場合、静的解析ソフトウェア・コンポジション解析(既知の脆弱性の発見)、ファジング・テスト(未知の脆弱性の検出)によって見つけることができます。また、ペネトレーション・テストで、セキュリティ関連機能やファームウェアの更新などのリスクの高い領域に焦点を当てて、この種の問題を検出することも可能です。

もう一つの問題は、BCMとキーフォブとの間のペアリング・プロトコルの設計で証明書検証が欠落している点です。この種の設計上の問題は、多くの場合、セキュリティ設計のレビューによって発見できます。さらに、ターゲット・システムの適切な脅威分析とリスク評価を実行してリスクの高い領域を特定し、適切なセキュリティ要件定義とセキュリティ管理策の設計を支援することが不可欠です。また、ペネトレーション・テストで、セキュリティ関連機能やペアリング機能などのリスクの高い領域に焦点を当てて、この種の問題を検出することも可能です。

予防的なパッチ管理の重要性

100%安全な車載システムの開発を目指すのは現実的ではありません。自動車業界の企業はOTAの更新を有効にして、新たに検出された脆弱性を速やかに修正できるようにするための適切な対策を検討し、導入する必要があります。また、この例は、セキュリティ研究者が提供する情報などの脆弱性情報を監視、収集、処理するための内部プロセスとワークフローを確立し、それに応じて対応することが自動車業界の組織にとって必要であるという事実を浮き彫りにしています。

自動車業界のサイバーセキュリティ・プラクティスに関する調査 | シノプシス