クルマがソフトウェアで駆動する時代にシークレットセキュリティの重要な役割について考察する。サプライチェーンの脆弱部分へのコード流出から、自動車ソフトウェアの安全確保が消費者の安全性にとっていかに重要かを読み解いていく。
本記事は、GitHubなどから流出したシークレットをリアルタイム検知するサービスを提供するGitGuardian社のWebサイトで公開された記事をテリロジーワークスが日本語に翻訳したものです。
(原題)Why Automotive Companies Must Prioritize Secrets Detection
最近の車は、ギアとエンジンで駆動するシンプルな機械から大きく進化し、車両に搭載されたコンピューターシステムのプラットフォームへと形を変えています。今では、想像をはるかに超える1億行以上のコードが、ECU(電子制御ユニット)と呼ばれる50~100以上の個別のプロセッサーから実行されています。参考までに比較してみると、例えばボーイングの旅客機(通称ドリームライナー)の場合、実行されるコード行数は約650万です。これに対し、フォードの新型車両F-150ライトニングのコード行数は、1億5,000万。旅客機とは比較にならないコード量であることがわかります。こうしたコードにより、走行中の車線維持からスマホに接続して好きな音楽を聴くといったことまで、車ではあらゆることが可能になっています。
自動車業界には、車にタイヤが付いているのは、(車載)コンピューターを道路で走らせるため、などという流行りのジョークがあります。こうしたジョークはさておき、1996年以降に製造されたアメリカの車両、2001年以降に製造されたヨーロッパの車両は、車内LAN(いわゆるCAN-BUS)に接続する標準化コネクター(OBD/EOBD)の搭載が義務付けられていることも言及すべきでしょう。また、車両メーカー各社は2014年の時点ですでにLTE回線の搭載を開始しており、パフォーマンスデータの収集や施錠・開錠、エンジン始動の遠隔制御が可能になっています。
ただし、こうした技術の進化には落とし穴がつきものです。これだけコードの量が多くなると、流出の可能性も高くなり、これは深刻な問題と言えます。
あなたはあるソフトウェア企業の社員で、AWSのようなサービスのAPIキーを誤って流出させてしまったとしましょう。あなたの大切なAWSリソースを偶然誰かの手に渡り、悪用されてしまう、そういう事態が起こるかもしれません。もちろん、これ自体問題ですが、同じことが車で起こった場合、事態はより深刻です。例えば、高速道路を時速120キロの猛スピードで運転中、車が何者かに遠隔操作で乗っ取られるといった事態を想像してみてください。これはもうデータの損失云々といった話ではなく、あなたの、そしてあなたの周りの自動車に乗っているすべての人の生命が危険にさらされているという話なのです。ここから見えてくるのは、自動車が直接的だけではなく遠隔での攻撃に弱い資産になってしまったという事実です。
ソフトウェア定義車両(SDV)の台頭
ソフトウェア定義車両(SDV)市場は、今後数年で成長が予想されており、2023年の市場規模430億ドルから2030年には1,500億ドルに達する見込みとなっている。
テスラを筆頭に、電気自動車メーカー各社は、標準的な機能の実現にソフトウェアアプリケーションへの依存を高め、ソフトウェア重視の複合企業へと姿を変えています。最近発表された、フォードの電気自動車(EV)、「F-150 ライトニング」、「マスタング マッハE」は、こうした動きを如実に表したものと言えるでしょう。と同時に、業界のサイバーセキュリティをめぐる慣習も、技術の進化に合わせてキャッチアップしていく必要がある、と気付くことも重要です。このような、最先端技術と時代遅れのセキュリティ施策の組み合わせは、消費者やOEMメーカーはもちろん、サプライチェーン全体にとって憂慮すべき状況を招きます。
忘れてはならないのは、どれほど素晴らしいインフォテイメントシステムあるいはシームレスなナビゲーション体験であってもそれだけでは不十分ということです。ベースとなるセキュリティはおしなべて堅牢である必要があります。車載インフォテインメント(IVI)システムを例に考えてみましょう。こうしたシステムは、組み込みLinux上で動作し、所有者の個人識別情報(PII)が保管されているのが普通です。加えて、エンジンやブレーキ、センサーのような重要なサブシステムに接続されているケースも多く、LTE回線も搭載されているとなれば、対象範囲が広くネットに常時接続された、格好の攻撃対象と言えるでしょう。つまり、こうしたインフォテイメントシステムが攻撃対象となった場合、機密データへのアクセスはもちろんのこと、車両の基幹システムの乗っ取りすらあり得ます。だからこそ、こうした場所には盤石なセキュリティが必須なのです。
シークレットを伴うコードの漏えい・流出―その認めがたい真実
最近の最新車両は、膨大な量のコードが至る所で動いています。こうしたコードは、車の生命線として、ヘッドライトからエンジンまであらゆるものを制御しています。そのため、万一流出した場合は、相応の禍を覚悟すべきでしょう。
最も差し迫った懸念の一つに、ハードコードされた認証情報の漏えいがあります。自動車システムを狙った従来型の攻撃の場合、攻撃者は侵入の糸口となる脆弱性を突きとめる必要があります。一方、ハードコードされたシークレットを使えば、大した苦労をすることなく内部システムに侵入でき、場合によっては顧客データの流出、ソースコードといった知的財産の窃取、企業システムの改ざん、あるいはモバイルアプリの不正アクセスによる車両の乗っ取りといったことさえも可能です。
この状況は、入口から押し入ろうとする泥棒と、玄関のカギ穴に指しっぱなしにされた鍵の違いに例えることができます。そう考えると、自動車メーカーが自社の認証情報の安全を確保することが、緊急の重要課題である理由もお分かりいただけるでしょう。
車が収集したあなたに関する情報、例えば個人識別情報(PII)、請求情報、日々の移動と言ったデータを思い浮かべてみてください。メーカー各社は、消費者の行動に関する膨大な量の情報をデータレイクという形で管理・運用しています。一つひとつの行動、運転の仕方、行先、ラジオを付ける、駐車する、右折・左折、こうした動作がその都度記録され、メーカーに回収されています。このような膨大なデータは、製品やユーザー体験を改善する上で重要な役割を果たします。
と同時に、こうしたデータは重大なセキュリティリスクにもなります。例えば、こうしたデータのデータレイクで万一情報漏えいが発生した場合、ドライバー個々人の情報だけでなく、顧客基盤全体とそのベンダーが収集したデータ一つひとつが危険にさらされる恐れがあります。よって、コードの完全性は最優先事項です。自動車メーカーは、GDPR(EU一般データ保護規則)やカリフォルニア州消費者プライバシー法(CCPA:California Consumer Privacy Act)といった、様々なデータ保護法を順守する義務があります。情報漏えいが発生すると、顧客の個人情報の窃取、金銭被害、高額の罰金(GDPRの場合、総収益の最大4%)につながる可能性があります。とはいうものの、今日の世界において、データ漏えいは日常茶飯事です。だからこそ、こうした情報の保護において重要なのは、プライバシー規制ではなく、個人、顧客、そして車の安全を確保することなのです。
ダイムラーや日産、トヨタといった自動車メーカーが被害を受けた著名なデータ漏えい事案では、シークレット管理の喫緊の改善ニーズが明らかになりました。日産が公表した情報漏えい事案では、日産向けソフトウェアソリューションの開発・テストを請け負っていた、取引先のサービス事業者が、データベースの設定ミスにより顧客データを誤って流出させています。
本事案では、18,000件近い顧客が影響を受け、氏名、生年月日、Nissan Motor Acceptance Company(NMAC)の口座番号といった個人情報が流出しました。幸い、クレジットカード番号や社会保障情報といった機密情報に被害はありませんでした。不正利用の証拠は見つからなかったものの、日産では影響のあった顧客にID保護サービスを提供するという措置を取りました。
実は、こうした事案は日産にとって初めてのことではありません。2021年1月、日産は、デフォルトの認証情報を設定したままGitサーバーをオンライン上で公開するという、似たような事案を起こしています。このときは、ソースコードやマーケットリサーチ、顧客の獲得情報を含む20 GBの機密情報が誤って公開されています。
2022年10月、トヨタも同様の情報漏えいを起こしています。この事案では、顧客データへのアクセスが可能な認証情報がGitHubのパブリックリポジトリで5年近く公開されていました。トヨタは当該キーを無効にする措置をとったものの、露出は長期間に及んだことから、不特定多数による不正アクセスの可能性という懸念があります。ここから分かるのは、Gitのパブリックリポジトリも重大なセキュリティリスクになるということです。内部使用を想定したコードが、組織のセキュリティ管理をすり抜けた結果、意図しない形で外部からのアクセスが可能なリポジトリに混入してしまうことがあるからです。
もちろんこれらは、公表された事案の中でもほんの一握りにすぎません。
もうおわかりでしょう。あらゆる場所でハードコードされた認証情報の有無をチェックすることは必要不可欠です。当社では、開発者が使用するすべてのシステムに意図しないシークレットが拡散する現象を「シークレットのスプロール化」と呼んでいます。シークレットのスプロール化は、 開発チームとリポジトリの数が増え、複数の地域に分散するようになると、コントロールがより難しくなります。こうしたセキュリティリスクを特定・軽減する上で重要な役割を果たすのが、GitGuardianのCLI(コマンドラインインターフェイス)、ggshieldのようなツールです。そしてこうした取り組みをさらに補強してくれるのが、パブリックGitHub上で開発者の活動を常時スキャンし、シークレットや認証情報の流出の可能性を通知してくれる、GitGuardianのPublic Monitoringです。
同様の事案は直近でも発生しています。ある自動車企業から設定ミスにより流出したGitHubの管理者ユーザーの認証情報を、あるセキュリティ研究者が発見し、機密情報の漏えいが懸念されたという事案です。当時この自動車企業は、いわゆるホワイトハッカーに対し、ソフトウェアやシステムの不具合を特定し、報告を推奨する、バグ報奨金制度を導入していました。この研究者、Corben Leoは、ブルートフォース攻撃やホストヘッダーの操作といった手法を次々と駆使することで、この設定ミスの”悪用”に成功したというのです。
Corben Leoは、一定数のエンドポイントに侵入した後、平文で保存された認証情報を外部に露出させ、プライベートリポジトリの管理者ユーザーになることに成功しました。この管理者ユーザーは、30を超えるGitHub組織と数百単位のリポジトリへのアクセスが可能でした。この発見の意味合いは重要です。この設定ミスを見つけたのが悪意のあるハッカーだったとしたら、この自動車企業は重大なデータ漏えいに直面する可能性があったはずです。このような設定ミスが運用環境で起こらないようにするためにも、GitGuardianのコードセキュリティとしてのインフラで提供されるような早期テストと自動スキャンは必須です。
ここまで紹介した事案を見れば、自動車会社が今すぐにでも、アプリケーションのセキュリティ対策を講じる必要があることをお分かりいただけるでしょう。サイバーセキュリティに対する先を見据えた姿勢に加え、サプライチェーン全体を巻き込んだ集団による努力が極めて重要です。このような取り組みにより、顧客のプライバシーの保護、信頼の維持、上記のようなつながる車両の安全な動作の保証、それぞれが実現されるはずです。
テレマティクスサーバーは脆弱な侵入ポイントである
ネット接続が進んだ今日、車両は、バックエンドで動作するテレマティクスとコマンド&コントロール・サーバーを利用することで、車両からのデータを受信するだけでなくドアの開錠やエンジンの始動・停止といったコマンドを遠隔で送信しています。残念なことに、このように重要な外部との接続ポイントであっても、思っているほど安全対策がなされていないケースがほとんどです。結果、車両は不正コントロールのリスクにさらされることになります。こうしたシステムが万一攻撃を受けた場合、甚大な被害につながる恐れがあります。
この事例のように、車のドアが開かない、あるいは突然クラクションが鳴り響く、サイドミラーが勝手に閉じてしまう、といった事態を想像してみてください。最悪の場合、車が突然停止する、あるいはハンドル操作が乗っ取られるといった、生命が危険にさらされる事態も想定されます。それだけでなく、何万台という車が一斉にハッキングされるといった可能性もあります。 FedExやUPSの車両が一斉に動かなくなった場合を想像してみてください!AndroidやiOSのアプリ内のシークレットも重要ですが、C&Cインフラ内のシークレットセキュリティ強化の必要性がどれほど喫緊であるかが分るでしょう。
“自動運転車の最大のリスクに、何者かによる車両全体のハッキングがある” ― イーロン・マスク
サプライチェーンが抱えるジレンマ
世界最大級のセキュリティイベント、Black Hat USA 2023で、ドイツの研究者チームがテスラの最新モデルのメディアコントロールユニット(MCU)に重大な欠陥があることを発表しました。この欠陥を悪用すると、インフォテイメントシステムの制限解除、いわゆる「脱獄」が可能になり、シートの保温や急激な加速(「Acceleration Boost」)といった有料機能を不正に利用できるようになります。研究者らはまた、テスラ車の認証プロセスで使われている重要なRSAキーの取得にも成功しました。このキーは、テスラのサービスネットワーク内での安全な通信にとって欠かせないものです。
この事案は、自動車ソフトウェアの安全確保という課題の広範性を如実に表したものと言えるでしょう。最近の車両の場合、ソフトウェアの大部分(約85%)がオープンソースコードと上流にあるベンダーから調達した構成部品であると言われています。例えば、テスラのMCUの場合、チップ自体はよく知られたベンダーが供給元であり、関連するファームウェアも提供しています。このチップは、自動車での使用を想定して作られていますが、ベースとなる技術は、専用のフォームファクターで販売されていたとしても、iPadやMacBookといったコンシューマー製品と共通である可能性があります。
同時に、このチップ、とりわけそのファームウェアに脆弱性がある場合、その影響はテスラだけではなく同じ部品を使うほかの自動車メーカーにも及ぶ可能性があるということであり、ここから自動車のサプライチェーンにおける複雑な網の目のように入り組んだ依存関係が見えてきます。ある部品に脆弱性がある場合、その影響は複数のメーカーの複数の自動車モデルに及ぶ可能性があります。そのような場合、それは不祥事を起こした自動車メーカーの問題と考えるのではなく、部品の供給業者あるいは関連するファームウェアに起因する問題だと捉えるべきでしょう。
メーカーが、無線通信機能(Wi-FiやBluetooth、セルラー方式の通信機能)を搭載するテレマティクスやインフォテイメント機器を製造する場合、米国連邦通信委員会(FCC)が定める報告書の提出が義務付けられています。この報告書には、使われている部品の詳細情報が記載され、使われているチップを誰もが特定できるようになっています。こうした情報により、攻撃者はチップだけではくそのファームウェアの製造業者を遡って追跡することが可能です。こうしたファームウェアに弱点や脆弱性があれば、連鎖的な影響は必至でしょう。実のところ、ハードコードされた認証情報を車両に埋め込むのは自動車メーカーばかりではありません。サプライチェーンを構成する様々な事業体にもその可能性はあります。サプライチェーンで使われる部品はどれも、独自のソフトウェアを使用している可能性があります。その場合はシークレットが埋め込まれている可能性と、場合によってはシークレットに対する盤石なセキュリティ施策がなされていない可能性を想定しておく必要があります。つまり、サプライチェーンにおけるつながりを一つ一つを精査し、シークレット流出事案の可能性がないか確認することが重要です。
リスクもあるがリターンも大きいシークレットセキュリティ
「修理する権利(Right to Repair)」については耳にしたことがあるかもしれません。自分の車が集めたデータを誰が管理すべきかについては、もう何年もの間、激しい論戦が繰り広げられていますが、最近になって大手自動車メーカーと修理工場の組織が歩みを一歩進め、独立系の修理工場に対し重要データやツールの利用許可を与えることで合意しました。ただし、忘れてはならないのがデータのセキュリティです。この「修理する権利」を推し進めるということは、消費者や修理工場に対し、車両の生命線ともいえるデータへのアクセスを許可することを意味します。つまり、このようなソフトウェア定義に使う構成要素から、機密であるコードやユーザー情報が流出することのないよう、安全策をとることが重要ということです。ここで登場するのがシークレット検出です。シークレット検出を導入すれば、たとえ重要情報へのアクセスが増えたとしても、安全性は担保されます。
次にアップデート、更新プログラムについてです。あなたは、不具合の修正プログラムや新機能がどうやってスマートフォンに届くか知っていますか?実は、車の場合も、無線通信を介したOTA(Over-The-Air)という技術で更新プログラムが配信されています。この技術を使うことで、自動車メーカーはディーラーにわざわざ足を運ばなくても、車両の性能を継続的に調整・強化したり、問題の修正や新機能を追加したりといったことが可能です。メーカー各社はコストのかさむリコール費用を節約できる一方で、こうした仕組みは攻撃者の侵入ポイントにもなり得ます。攻撃者は、このような更新プログラムを盗み取り、分析、改ざんすることがあり、隠し機能やコード中に書き込まれたシークレットといった機密情報が盗まれると、最悪の場合、ランサムウェア攻撃につながる恐れがあります。
自動車用アプリケーションの安全を担保するには、セキュリティ対策を開発工程の最初の段階に組み込むことが重要です。そのためには、シークレットに関係したセキュリティインシデントを、後工程で対処するのではなく、早い段階で特定・是正する必要があります。開発者にシークレットをコードに書きこまないよう教育することも重要ですが、この方法は保証があるわけでもなく実践的ともいえません。コードの精査も、有効ではあるものの、問題の見過ごしも多く、時間のかかる作業です。
そこで、GitGuardianの出番ということになります。当社のエンタープライズグレードのプラットフォームが提供するシークレット検出および修復機能は精度・網羅性共に高く、なによりユーザーフレンドリーであることが特徴です。また、DevOpsワークフローにもシームレスに連携できます。このため、今あるソリューションのメンテナンスやアップデートの心配もいりません。自動車産業はもちろん、ほかの産業でも、こうしたプラットフォームはメーカーだけでなくその顧客にとってもメリットがあります。
おわりに
自社の車両をサプライチェーンのセキュリティリスクから守らなくては!もし、そうお考えであれば、GitGuardian社が発行するレポート「State of Secrets Sprawl 2023」をご一読ください。具体的なリスクについて知ることができます。
GitGuardianに関する詳細の説明、デモ等のご希望・ご質問はテリロジーワークスまでお問合せください。
この記事をシェア |
---|
一緒によく読まれている記事
-
- GitGuardian レポート 「The state of Secrets Sprawl 2023」公開/日本語翻訳版はテリロジーワークスが作成
- GitHub等から流出した機密情報をリアルタイムで検知するサービス「GitGuardian Public Monitoring」を提供するGitGuardian社より、昨年に引き...
-
- 「情報作戦ハイライト(InfoOps Highlights)」月次配信のお知らせ
- コンステラセキュリティジャパンは、アナリストによる月次配信のレポート「情報作戦ハイライト(InfoOps Highlights)」の発行をスタートします。 情報作戦ハイライト(I...