Open Source Summit Japan 2023から、組込系システムにおけるサプライチェーンに関するセッションを紹介

2024年3月15日(金)
松下 康之 - Yasuyuki Matsushita
Open Source Summit Japan 2023から、組込系システムにおけるサプライチェーンをセキュアに守るツールに関するセッションを紹介する。

Open Source Summit Japan 2023から、The Linux Foundationにおける組込系システムのVPが解説するサプライチェーンをセキュアにするための仕組みと新しいツールに関するセッションを紹介する。プレゼンテーションを行ったのはKate Stewart氏だ。動画は以下から参照して欲しい。

●動画:Building Dependable Systems with Open Source

プレゼンテーションを行うKate Stewart氏

プレゼンテーションを行うKate Stewart氏

Stewart氏はまずクルマを例に挙げて、多くのハードウェアコンポーネント、ソフトウェアが連係してモダンなクルマが構成されていること、GPSセンサーなどによるナビゲーションなどの機能が利用できることが必要だと語った。

しかし最先端を行っているクルマにおける障害、特にTeslaによるさまざまなトラブルのニュースを示しながら、機能が豊富にあるからと言って安全性が高められるわけではないことを説明した。

Teslaのトラブルを示しながら安全性が必ずしも高くなっていないことを説明

Teslaのトラブルを示しながら安全性が必ずしも高くなっていないことを説明

その上でこれまでエグゼクティブオーダーなどで注目を集められるようになったSBOM(Software Bill of Materials)に言及。ソフトウェアだけに限定せずにシステムの安全性に関わるすべてのコンポーネント、データセットなどについてもその構成要素と依存関係を明らかするべきだとして、SBOMはSystem BOMになるべきだと強調した。

安全のためにはソフトウェアのBOMからシステム全体を網羅するBOMに移行が必要

安全のためにはソフトウェアのBOMからシステム全体を網羅するBOMに移行が必要

ただしその際にベンダーごと、業界ごとの独自のデータフォーマットが乱立するべきではないとして、標準フォーマットでメタデータが提供される必要があると主張し、そこからSBOMのフォーマットであるSPDXにトピックを移した。

ソフトウェア、ハードウェア、データ、サービスで標準化されたメタデータが必要

ソフトウェア、ハードウェア、データ、サービスで標準化されたメタデータが必要

SPDXはLFがホスティングするSBOMフォーマットの一種で、同様のフォーマットとしてOWASPが推進するCycloneDXが存在する。LFとしてはSPDXが主流のフォーマットとして業界標準となることを望んでいると思われるが、素性の良さや機能の多さではなく最終的に多くのサポーター、ユーザーを集めた側が勝つというこれまでのIT業界の常識が適用されることになるだろう。すでにSPDXはバージョン3.1まで開発が進んでおり、Stewart氏が冒頭で説明したソフトウェアだけではなくハードウェアやサービス、データセットまで含めたBOMを生成できるようになることが示されている。

SPDXの進化を説明

SPDXの進化を説明

そして本来のソフトウェアにおけるBOM、SBOMについてはライフサイクルのすべてのプロセスでBOMが必要だと説明した。単にソースコードのビルドだけでインストールやデザインの段階でもBOMを生成できるようになることで、ライフサイクルのすべてを網羅するBOMとなるという意味だろう。

ソフトウェアライフサイクルのすべてのプロセスでBOMを生成することが必要

ソフトウェアライフサイクルのすべてのプロセスでBOMを生成することが必要

具体的にソフトウェアの仕様からコーディング、実装、テストなどのプロセスにおいて相互の関係を示しながら、どのような生成物が発生するのかを図で示しながら説明。

ソフトウェア開発のプロセスで何が何を生成するのか? を図で示して説明

ソフトウェア開発のプロセスで何が何を生成するのか? を図で示して説明

ここではソースコードをビルドしてテストするという主なプロセスの解説ではなく、コーディングのガイドラインからコードレビューのスクリプトが生成され実行形式モジュールであるアーティファクトとテストレポートが生成されるという成果物の依存関係を整理するフローチャートを使っているところに注目したい。CI/CDが自動化されていることが前提だが、それ以上に派生するすべての生成物を管理することでプロセスにおける成分(Ingredients)が明らかになるべきだというのがStewart氏の主張だ。

ソースコードのビルドからテストまでの依存関係を整理したチャート

ソースコードのビルドからテストまでの依存関係を整理したチャート

またバグ修正などのプロセスにおいても、それぞれのバージョンのソフトウェアから生成されるテストレポートを元にどのバージョンでバグが修正されたのかをトレースできるように「Code to Test」だけではなく「Code to Test to Evidence」という発想でシステム化される必要があることを説明した。

Code to TestからCode to Test to Evidenceに

Code to TestからCode to Test to Evidenceに

そしてLFが推進するこれの実装形としてELISA、Zephyr、Xenに応用したYoctoプロジェクトを紹介した。

LFのプロジェクトに応用された例を紹介

LFのプロジェクトに応用された例を紹介

ELISAはLinuxのバリエーション、ZephyrはリアルタイムOS、そしてXenはハイパーバイザーだが、Yoctoはカスタマイズされた組込用Linuxを作るためのツールキットである。

そして新たなツールとして紹介されたのがBASILだ。ELISAプロジェクトのブログ記事として公開されているので参照して欲しい。

●参考:BASIL: the FuSa Spice

新しいツールBASILの紹介

新しいツールBASILの紹介

BASILはRed Hatで開発されオープンソースとして公開されたツールで、ソフトウェアの仕様やドキュメントなどから仕様の分析、その仕様に合致したテストが実行されているのかなどをWebのユーザーインターフェースからチェックするツールであるという。ソフトウェアを開発したRed HatのQAエンジニアで、上記のブログの著者でもあるLuigi Pellecchiaによる動画も公開されている。

●動画:Introducing Basil

動画のデモを見る限り、ソースコードとコメントを分離し、その中身とマニュアル(man page)、テストコードを比較する方法で求められた仕様が実際のコードやコメントと合致しているのか、テストコードはその仕様のテストを満たしているのか、などをチェックするツールのようだ。セッションの中では深い説明は省いているが、安全性を高めるために仕様書が書かれていてもそれが実際に実装されていなければ意味がないし、その仕様を確認するテストが実行されていなければ意味がない、その部分に注目して作成されたツールということになる。

最後にSPDXや今回紹介されたELISA、Zephyr、Xen、Yoctoなどへの参加を促してセッションを終えた。

各プロジェクトへの参加を呼び掛けてセッション終了

各プロジェクトへの参加を呼び掛けてセッション終了

安全性を高めることは組込系では特に重要であることを冒頭のTeslaのトラブルで喚起してから、SBOMの重要性、そしてLFが手がけるさまざまなプロジェクトを駆け足で紹介した。日本の自動車メーカーによるテストの偽装が2023年に大きな問題となったが、その製造過程に今回のプロセスをまじめに適用したら不正は防ぐことができたのだろうか? ソフトウェアだけではなく製造業を含むすべての業界においても意識を高める必要があることを感じさせたセッションとなった。

著者
松下 康之 - Yasuyuki Matsushita
フリーランスライター&マーケティングスペシャリスト。DEC、マイクロソフト、アドビ、レノボなどでのマーケティング、ビジネス誌の編集委員などを経てICT関連のトピックを追うライターに。オープンソースとセキュリティが最近の興味の中心。

連載バックナンバー

OSSインタビュー
第5回

IBMのJeffrey Borek氏にインタビュー。OSPOに関する課題と未来を考察

2024/3/27
IBMのOSSの責任者に、OSPOに関する課題と未来への考察を訊いた。
OSSイベント
第4回

Open Source Summit Japan 2023から、組込系システムにおけるサプライチェーンに関するセッションを紹介

2024/3/15
Open Source Summit Japan 2023から、組込系システムにおけるサプライチェーンをセキュアに守るツールに関するセッションを紹介する。
OSSイベント
第3回

Open Source Summit Japan 2023から、金融業界における最新動向をアップデートするセッションを紹介

2024/3/7
Open Source Summit Japan 2023から、金融業界における最新動向をアップデートするセッションを紹介する。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています