車載ECUのサイバーセキュリティ: SELinuxとHost Protectionのパワフルな組合せ

車載ECUのサイバーセキュリティ: SELinuxとHost Protectionのパワフルな組合せ

目次

ECUは車両のインテリジェンス・ハブであり、メディアやエンターテインメント、外部通信などの制御を担っています。ソフトウェア・デファインド・ビークル(SDV)の出現により、ECUは相互接続され、双方向通信や外部ネットワークとの通信を行うようになっています。このようなコネクティビティの向上は、機能性と利便性の向上を可能にする一方で、ソフトウェアの脆弱性やその他のサイバー脅威に対する攻撃対象も拡大させてしまいます。

Linux上で動作するECU(Android上で動作するものもあります)には、SELinux(Security-Enhanced Linux)として知られるオープンソースの保護レイヤーが付属しています。SELinuxはソフトウェア開発者にとっては効果的な汎用ツールですが、自動車のサイバーセキュリティの観点からは、すべての要件を満たしているとは言えません。そのため、多くのOEMは、車載ネットワークやコンポーネントを保護し、新たな自動車サイバーセキュリティ規制や標準(ISO 21434、UNR 155、中国のGB/Tなど)に準拠するために、侵入検知・防御システム(IDPS)を導入しています。

この記事では、複雑なサイバー脅威からコネクテッドECUを保護するために、OEMやティア1サプライヤーがSELinuxに加えてセキュリティを必要とする理由について説明します。

車載用途におけるSELinux: 強みと課題

SELinuxはLinuxカーネル・セキュリティ・モジュールであり、システム管理者がユーザー、プログラム、サービスに対して設定したアクセス制御セキュリティ・ポリシーを管理・実行するためのメカニズムを提供します。そのため、SELinuxが有効な環境内のアプリケーションは、指定された境界を超えてシステムリソースにアクセスしようとする試みから保護されます。このセーフガードは、アプリケーションの一貫した安全な動作を保証します。

SELinuxは、Linux上で動作する自動車用ECUの管理とセキュリティにおいて極めて重要な役割を果たしています。システムプロセスをきめ細かく制御し、ミッションクリティカルな車両システムのセキュリティを強化します。この機能は、高度化するサイバー脅威から車載ECUを保護しようとするOEMとTier 1サプライヤーの双方にとって極めて重要です。

こうした強みがあるにもかかわらず、自動車業界におけるSELinuxの実装に関して、いくつかの業界特有の課題があります:

  • 機能を損なうことなくセキュリティを最大化すること – サイバーセキュリティを実装する際には、攻撃対象領域を最小化すること(つまり、システムを制限すること)と、通常のシステム機能に必要な機能を許可することの間で、常にバランスを取る必要があります。言い換えれば、異常な動作に対してシステムを強化したいにもかかわらず、日常的な運用を可能にするためにシステムを十分にオープンにしておく必要があるということです。そのためには、あるプロセスに対しては機能を制限し、別のプロセスに対しては同じ機能を許可するという柔軟性が必要ということになります。これをSELInuxで実現するのは難しいことです。
  • リアルタイムレスポンス機能の必要性 – SELinuxのようなハードニング保護レイヤーは優れていますが、静的なものであり、急速に進化する攻撃手法に対応するようには構築されていません。対照的に、不可知論的で柔軟なソリューション(例えば、SELinuxをEDR(Endpoint Detection and Response)や自動車向けIDPSと組み合わせる)は、定期的なメンテナンスを必要とすることなく、動的な方法で包括的で詳細な保護を提供することができます。
  • セキュリティ・イベントのログ – これはSELinuxの標準機能です。ここで難しいのは、ログが作成された後のハンドリングです。イベントの収集と保存、フィルタリング、分析のためのバックエンド管理システムへの送信などがこれに当たります。この作業はITの観点からは簡単なように聞こえるかもしれませんが、実際のところ、ほとんどのOEMはこの機能をサポートすることができていません。さらに、ログを取ることは、UNR155とGB/Tに準拠するために必要な要件です。
  • オープンソース – オープンソースソフトウェアは開発者にとっては素晴らしいものですが、セキュリティの観点からは諸刃の剣となりえます。コードは容易に入手可能であり、それがどのように実装されているか見えるので、熱心なハッカーは最終的にバイパスする方法を見つけます。SELinuxは様々な目的に使用でき、すべてのアプリケーションに必要なわけではないため、設計上取り外し可能であり、巧妙なマルウェアによって無効化される恐れがあります。
  • 保守性 – オープンソースのもう一つの欠点は、長期にわたって保守する必要があることです。アプリケーションをアップグレードするたびに、SELinuxとの互換性をチェックする必要があります。例えば、SELinuxのバグフィックスとアップグレードを認識し、そして、それらのアップデートをサポートするために自分のコードを適応させ、アップデートする必要があります。プロプライエタリなソフトウェアとは対照的に、オープンソースはサポートやアップグレードを提供しません。もし、規制に新しい要件が追加された場合、自動車業界にサービスを提供するソフトウェアベンダーはすぐにそれに対応します。オープンソースを使用する場合、インターネット上のフォーラムに支援を求めるか、独自のリソースを使用して要件を満たす必要があります。

1層のセキュリティでは不十分

例えて言うなら、有名な美術館を警備する場合、正門に鍵をかけるだけで十分とは思わないのではないでしょうか。カメラやモーションセンサーなど、不正侵入を防ぐための装置も設置することでしょう。セキュリティのレイヤーを1つに絞るのは危険すぎるということです。美術館にとっても、自動車にとっても、セキュリティを一か所に頼ることは受け入れられません。

サイバーセキュリティの基本的な考え方のひとつは、単一の保護レイヤーでは、関連する攻撃ベクトル、エクスプロイト、シナリオのすべてに対処するには不十分だということです。特にSELinuxは、当社のリサーチチームが何度も実証しているように、簡単にバイパスまたは無効にすることができます。これが、SELinuxだけを保護レイヤーとして頼るべきでないもう一つの重要な理由です。 

自動車のサイバーセキュリティ要件への対応

多層防御は、複数のベンダーのソフトウェアや様々なコンポーネントで構成されている今日のECUにおいて特に必要です。このように多様で階層化されたエコシステムは、統合の問題や予期せぬセキュリティ脆弱性を引き起こす可能性があります。したがってOEMは、試行錯誤的に特定のハードニングを行うのではなく、包括的なセキュリティイメージを提供する全体的なセキュリティソリューションを必要としています。

SELinuxのポリシーは、主に標準的なLinuxの使用パラダイムを中心に設計されており、自動車固有のニーズとは必ずしも一致していません。試行錯誤のアプローチに基づくことが多く、自動車アプリケーションに特化した機能やショートカットが欠けているため、自動車のセキュリティ確保に必要なシナリオやユースケース(カーネルパラメータの保護など)を定義することが困難です。

HostProtection(IDPS): ECUサイバーセキュリティのギャップを埋める

この多層防御アプローチを反映して、多くのOEMがSELinuxの上にECUセキュリティの追加レイヤーとしてHost IDPS Protectionソリューションを導入することを選択しています。Host Protectionは、既存のSELinux機能を補完し、自動車セキュリティ特有のニーズに対応するように設計されています。シンプルで簡単に設定が可能なルールに基づき、Host Protectionは、厳格な実行制御など、SELinuxが対処できない、あるいは制御が困難な特定のセキュリティギャップを埋めます。

Host Protectionは、SELinuxと併せて、以下のセキュリティレイヤーを追加で提供することで、OEMに安全な自動車グレードのシステム・ソリューションを提供します:

  1. 保護 – Host IDPS Protectionは、すべての実行ファイルと特殊ファイルの完全性と真正性を確保することで、ECUの保護を強化します。システムで実行される各実行ファイルは、OEMによって署名された証明書と同一である必要があります。ファイルへの変更や修正が検出されると、そのファイルはブロックされます。さらに、Host Protectionでは、様々な自動車特有のシナリオをカバーするルールを作成し、その悪用を防止することができます。
  2. 検知 – 先ほどの例に戻ると、保護レイヤーはゲートのロック、検出レイヤーは美術館の周囲や内部のカメラやセンサーとなります。Host Protectionシステムは通常、システムの異常動作を感知することができるECU上のセンサーのバンドルを含みます。これは、SELinux自体が削除されたり改ざんされていないことを確認するために監視する専用センサーや、さらなる調査を行うためにシステムの測定値やCPU使用率などを監視する専用センサーも含まれます。
  3. ロギング – このレイヤーは、システム内のすべてのSELinuxログと他のすべてのセキュリティイベントを収集・管理し、SEvs(セキュリティイベント)としてIdsM(侵入検知システムマネージャー)または収集とフィルタリングのために設定されたシンクに送信します。 UNR 155とGB/Tによって義務付けられているこれらの運用機能は、SELinuxの基本的なログ機能を補完します。

前述したように、これらの各レイヤーは、車両やECUをサイバー攻撃から保護するとともに、型式認証のためのサイバーセキュリティ要件への準拠を促進しようとするOEMにとって不可欠なものになります。

結論

SELinuxは開発者にとって優れた価値を提供しますが、LinuxベースのECUを保護し、規制要件を満たすためには、自動車グレードのセキュリティのレイヤーを追加して補完する必要があります。

SELinuxとHost IDPS Protectionの組み合わせは、自動車サイバーセキュリティにおける強力な相乗効果が得られます。SELinuxは堅牢な基盤を提供し、Host Protectionは自動車業界特有の課題に対処するために必要なアジリティと特異性を提供します。この二重のアプローチにより、自動車は現在のサイバーセキュリティの脅威に対応できるだけでなく、将来の進化する課題にも備えることができます。