実は「Apache Log4j」事件以前から、ソフトウェア管理台帳を作って利用しようという話はあった。米国バイデン政権は、2021年5月のサイバーセキュリティ強化に関する大統領令で、ソフトウェアのサプライチェーン強化を謳いSBOM(Software Bill of Materials)に言及している。
SBOMがまさに上記の管理台帳にあたるのだが、膨大過ぎる対象を登録することができるとは、多くの関係者が考えていなかった。しかし大統領令に触れられたことから、SBOM登録は少なくとも米国政府調達の要件にはなると思われ、前向きに考える人が多くなった。この管理台帳には、次の項目が集約されている。
・台帳に記載した人の名前
・ソフトウェアの供給者名
・ソフトウェア(コンポーネント)名
・バージョン情報
・同識別子
・関係(本体か構成要素か等)
これに発見された脆弱性情報データベースが付属していて、ソフトウェア(コンポーネント)をどう利用しているかが、サプライヤー・最終ベンダー・ユーザらで共有できるわけだ。他者が開発したソフトウェアを利用する場合、
・脆弱性に気付かず使ってしまう
・有償か無償かが分からない
・ライセンスにあたっての特別な要件が見えない
などの問題があったが、このような台帳が整備されていれば、安心して利用できる。ただ実際問題として、全てのソフトウェアを登録することは不可能だ。登録ソフトウェアが限定されている現状では、最終ベンダーがソフトウェア構造分析ツールを使って脆弱性情報を集めるのが次善の策とも言われている。
生成AIはプログラミングやそのデバッグも可能である。生成AIを使って既存のソフトウェア(コンポーネント)を精査し、SBOM登録することもできないかと考えるのだが。