AI時代の自動車サイバーセキュリティ対策

HSM、Secure Boot、多層ファイアウォール、そしてランタイム保護へ

はじめに

AIの進化は、防御側だけでなく攻撃側にも新たな力を与えています。脆弱性探索、攻撃コードの作成、ログや設定情報の解析、フィッシングの自動化など、これまで専門的な知識や時間を要していた攻撃活動が、より短時間かつ大規模に実行される可能性が高まっています。これにより、サイバー攻撃は従来以上に高速化・巧妙化し、防御側にとっては検知や対処が難しくなっています。

この変化は、自動車業界にとっても無視できません。自動車は今、ハードウェア中心の製品から、ソフトウェアによって価値を更新し続けるプラットフォームへと変化しています。ADAS、インフォテインメント、コネクテッドサービス、OTAによるソフトウェア更新などにより、車両はクラウドや外部ネットワークとつながる存在になりました。その結果、TCU、Wi-Fi、Bluetooth、USB、診断ポート、OTA経路など、攻撃者が狙いうる入口も増えています。

さらに、車両内部の構造も複雑化しています。多数のECUが車載ネットワークを介して連携し、近年ではドメインコントローラやゾーンアーキテクチャの採用により、複数の機能が高性能なコンピューティング基盤上に集約される傾向もあります。こうしたソフトウェア化・コネクテッド化・高機能化は、利便性や開発効率を高める一方で、攻撃対象領域を広げ、サイバーセキュリティ対策をより複雑にしています。

こうした背景を受け、自動車業界ではUN R155やISO/SAE 21434への対応が重要になっています。UN R155は、車両のサイバーセキュリティおよびCSMS、Cyber Security Management Systemに関する国連規則です。ISO/SAE 21434は、道路車両のサイバーセキュリティエンジニアリングに関する国際標準であり、コンセプト、製品開発、生産、運用、保守、廃棄までを含むライフサイクル全体でサイバーセキュリティリスクを管理する考え方を示しています。

つまり、自動車サイバーセキュリティは、出荷前に一度対策すれば終わりではありません。設計段階でリスクを分析し、開発段階で脆弱性を作り込まないようにし、生産・出荷後も攻撃を検知し、必要に応じてアップデートやインシデント対応を行う。車両ライフサイクル全体を通じた継続的な取り組みが求められています。

代表的なサイバーセキュリティ対策

自動車サイバーセキュリティでは、単一の技術だけで車両全体を守ることはできません。車両は、クラウド、外部接続インターフェース、車載ネットワーク、ゲートウェイ、ECU、OS、アプリケーション、メモリといった複数のレイヤで構成されており、それぞれに異なるリスクが存在します。そのため、複数の防御策を組み合わせる多層防御の考え方が重要になります。

対策 主な役割
HSM 暗号処理や署名検証などの信頼基盤を提供する
Secure Boot 改ざんされたソフトウェアの起動を防ぐ
多層ファイアウォール 車内外、ドメイン間、ECU間の通信を制御する
IDS/IPS 不審な通信や攻撃の兆候を検知・防御する
SecOC ECU間メッセージの真正性や鮮度を確認する
Secure OTA 車両に配信されるソフトウェア更新の正当性を担保する

これらの対策は、それぞれ異なるレイヤで機能します。

Secure Bootは起動時の正当性確認、多層ファイアウォールやIDS/IPSは通信経路の防御、SecOCはメッセージ単位の保護、Secure OTAは更新プロセスの保護を担います。HSMは、これらの対策で利用される暗号処理や認証処理を支える基盤として位置づけられます。

このように、既存の代表的な対策は、自動車サイバーセキュリティにおいて不可欠な要素です。一方で、AI時代における攻撃の高度化を考えると、これらに加えて、ソフトウェアが起動した後の実行中のリスクにどう対応するかが重要になります。

ランタイム保護

従来の対策は、起動前、通信経路、更新プロセス、メッセージ認証といった領域で大きな効果を発揮します。しかし、正規のソフトウェアが起動した後に、そのソフトウェアに含まれる脆弱性を悪用されるケースもあります。

たとえば、外部からの通信自体は正規の手順に見えていても、受け取ったデータの処理に脆弱性があれば、ECU内部でメモリ破壊や不正なコード実行が発生する可能性があります。また、ファイルとして保存されず、RAM上だけで攻撃が完結するファイルレス攻撃や、プログラムの実行フローを乗っ取る攻撃も想定されます。

このようなリスクに対応する考え方が、ランタイム保護です。

ランタイム保護とは、ソフトウェアが実行されている状態を監視し、不正なふるまいや攻撃の兆候を検知・防御するアプローチです。開発時の脆弱性診断や起動時の署名検証とは異なり、実際に動作しているソフトウェアのふるまいに着目する点が特徴です。

ランタイム保護には、さまざまなアプローチがあります。Webアプリケーションの領域では、アプリケーション内部に防御機能を組み込むRASP、Runtime Application Self-Protectionという考え方があります。サーバやクラウド、OTシステムの領域では、EDRやワークロード保護によって、実行中のプロセスやメモリ上の不審な動きを検知するアプローチがあります。自動車領域では、車載ネットワーク上の異常通信を検知するIDS/IPSや、車両群のログを分析するVSOCも、運用中の異常検知・対応を担う仕組みとして重要です。

ただし、車載ECUや組込みデバイスでは、リソース制約、リアルタイム性、長い製品ライフサイクル、OTA後の継続的な保護など、一般的なITシステムとは異なる条件があります。そのため、車載領域におけるランタイム保護では、単にサーバ向けの防御技術を適用するのではなく、ECU内部で動作するソフトウェアをどのように実行時に守るかが重要になります。

ECU内部の実行時の保護目的としたXGuard

車載ECUや組込みデバイスにおいて特に重要になるのが、ECU内部の実行時保護です。これは、車載ネットワーク上の通信を見るだけではなく、ECU内部で実際にどのコードが実行されているか、正規の実行フローから逸脱していないか、メモリ上で不正な処理が行われていないかを監視・防御する考え方です。

この領域に対応するソリューションの一つが、Karamba SecurityのXGuardです。

XGuardは、車載ECUやIoT/組込みデバイス上に展開されるランタイム保護ソリューションです。目的は、起動後のデバイス内部で発生する不正なコード実行、ファイルレス攻撃、メモリ破壊、制御フロー改ざんといった攻撃を検知・ブロックすることにあります。

ここで重要なのは、XGuardが既存の対策を置き換えるものではないという点です。Secure Boot、多層ファイアウォール、IDS/IPS、SecOC、Secure OTAなどがそれぞれのレイヤで防御を担うのに対し、XGuardは起動後のECU内部で実際に何が実行されているかを守るレイヤに位置づけられます。

たとえば、正規のソフトウェアが起動した後に脆弱性を悪用された場合、起動時の検証だけでは攻撃を止められない可能性があります。また、通信レイヤでは正規のやり取りに見える場合でも、ECU内部ではメモリ上で不正な処理が進んでいることがあります。XGuardは、このような実行時のリスクに対して、ECU内部から防御する役割を担います。

つまり、XGuardは自動車サイバーセキュリティの多層防御を、通信や起動時の防御から、実行中のソフトウェア保護へ拡張するソリューションと位置づけることができます。

XGuardの特長

XGuardの特長は、ECU内部での不正実行を防ぐためのランタイム保護を、組込み・車載環境に適した形で実現する点にあります。主な特長は以下の通りです。

  1. 正常状態を基準にした保護
  2. 不正コード実行の防止
  3. ファイルレス攻撃への対応
  4. CFIによる制御フロー保護
  5. ECU単位での実行時防御
  6. 運用フェーズでの監視・分析

①正常状態を基準にした保護

XGuardは、あらかじめ定義された正常なソフトウェア構成や実行状態を基準に、そこから逸脱する不審な動作を検知・防御します。従来型のシグネチャベースの対策では、既知の攻撃パターンに依存するため、未知の攻撃や亜種への対応が課題になることがあります。正常状態を基準にすることで、想定外のコード実行や不正なふるまいを検知しやすくなります。

②不正コード実行の防止

攻撃者が脆弱性を悪用して、正規のソフトウェアには含まれないコードを実行しようとする場合があります。XGuardは、ECU内部で実行されるコードの正当性に着目し、未承認のコード実行を防ぐことで、マルウェアや不正な処理の実行リスクを低減します。

③ファイルレス攻撃への対応

近年の攻撃では、ファイルを保存せず、メモリ上だけで攻撃を完結させるファイルレス攻撃が問題になります。このような攻撃は、従来のファイル検査型の対策では検知が難しい場合があります。XGuardは、実行時のメモリ利用や制御フローの異常に着目することで、ファイルレス攻撃への対策として機能します。

④CFIによる制御フロー保護

CFI、Control Flow Integrityは、プログラムの実行フローが本来想定された流れから外れていないかを確認する考え方です。バッファオーバーフローなどにより制御フローが乗っ取られると、本来実行されるべきではない処理が呼び出される可能性があります。XGuardは、こうした制御フローの逸脱を検知・ブロックすることで、メモリ破壊を起点とした攻撃への耐性を高めます。

⑤ECU単位での実行時防御

XGuardは、車載ネットワーク全体を外側から見るだけではなく、ECU単位で内部の実行状態を保護する点に特徴があります。これにより、ネットワーク通信上は異常が見えにくい攻撃であっても、ECU内部で発生する不正実行や制御フローの異常に着目して防御できます。

⑥運用フェーズでの監視・分析

自動車サイバーセキュリティでは、出荷後の運用フェーズにおける監視やインシデント対応も重要です。XGuardは、デバイス上での防御に加え、検知したイベントを分析・活用することで、運用時のサイバーリスク管理にも貢献します。これにより、車両ライフサイクル全体での継続的なセキュリティ対策につなげることができます。

まとめ

AIの進化により、サイバー攻撃はより高速化・巧妙化し、防御側にとって検知や対処が難しくなっています。自動車においても、ソフトウェア化、コネクテッド化、OTA対応、ドメイン/ゾーンアーキテクチャの進展により、攻撃対象領域は広がり続けています。

こうした環境では、単一の対策だけで車両全体を守ることはできません。HSM、Secure Boot、多層ファイアウォール、IDS/IPS、SecOC、Secure OTAといった対策を組み合わせ、車両アーキテクチャの各レイヤでリスクを低減する多層防御が重要になります。

一方で、これらの対策だけでは、正規ソフトウェアの起動後に発生する脆弱性悪用や、RAM上での不正コード実行、制御フロー改ざん、ファイルレス攻撃といった実行時のリスクを十分にカバーできない場合があります。そこで重要になるのが、ソフトウェアが動作している状態を監視・防御するランタイム保護です。

ランタイム保護にはさまざまなアプローチがありますが、車載ECUや組込みデバイスでは、ECU内部で実際に何が実行されているかを保護する視点が特に重要です。XGuardは、このECU内部の実行時保護を目的としたソリューションであり、不正コード実行、ファイルレス攻撃、メモリ破壊、制御フロー改ざんといったリスクに対して、起動後のソフトウェア実行環境を守る役割を担います。

AI時代の自動車サイバーセキュリティでは、入口を守るだけではなく、起動時、通信経路、更新プロセス、メッセージ認証、そして実行時までを含めた包括的な防御が求められます。XGuardは、既存のセキュリティ対策を置き換えるものではなく、多層防御をECU内部の実行時保護まで拡張するための重要な選択肢の一つです。