これまで3回にわたって自動車業界の直面するサイバーセキュリティの課題と対策を取り上げてきたが、最終回となる今回はソフトウェアのサプライチェーンと脆弱性管理について解説する。
自動車の内部では、これまでハードウェアとソフトウェアが一体で開発された個別のECU(電子制御ユニット)によって機能が実装されてきたが、EV(電気自動車)の普及やニーズの多様化に追随するための開発サイクルの短期化が進む中、ハードウェアとソフトウェアを分離して開発し、OTA(Over the air:無線によるソフトウェアアップデート)によりソフトウェアで新機能を追加実装することが今後の主流になっていくと考えられる。また、それに伴い、今後は、従来自動車業界とはかかわりがなかったソフトウェア企業が参入してくることも予想され、ソフトウェアのサプライチェーンは今後より複雑化・多層化していくと考えられている。
本稿では、サイバーセキュリティの観点から、こうしたソフトウェアサプライチェーンの複雑化にどう対応していく必要があるかについて解説する。
OSSの利用と脆弱性管理
ソフトウェアのサプライチェーンと脆弱性管理における課題として、まず挙げられるのはOSS(オープンソースソフトウェア:ソースコードを無償で公開して利用することができるソフトウェア)の利用と脆弱性管理である。既に車載器の組み込みソフトウェアには多くのOSSが利用されており、ソフトウェア開発の効率化に貢献してきている。一方で、OSSはソースコードが公開されていることから脆弱性の分析や攻撃コードの開発がしやすく、これまでも多くの深刻な脆弱性が発見されてきた。そのためWP29では、自動車関連企業に継続的な脆弱性情報の収集と自社製品への影響評価のプロセスの実装を求めてきた。
プロセス認証を取得し、それに則った開発を開始している自動車関連企業は既にこの脆弱性情報収集のプロセスを開始しているが、どの企業も非常に大変な苦労をしている。
まず脆弱性情報をPSIRT(Product Security Incident Response Team:製品に関するセキュリティインシデントに対応するチーム)が収集するのだが、自動車で利用されるOSSは多岐にわたり、日々発見・報告される脆弱性情報は1日数十件になることも珍しくない。PSIRTはJ-Auto-ISACやJPCERTなどの業界団体からこれらの脆弱性情報を収集し、自社の製品に影響がないかをチェックするが、その判断は現場の開発者に任されている。必然的にPSIRTからは毎日のように「脆弱性情報が発見された」と開発者に連絡が届き、開発者はまたかと思いながら忙しい業務の中で指摘を受けた脆弱性情報を確認し回答をするといったやり取りがされるのである。このやり取りも、たまに起きる程度であればなんとか対応していけるだろうが、毎日ともなるとPSIRTと開発者の双方にとって大きな負担となり、不満が蓄積していくことになりかねない。