
はじめに
皆さんこんにちは。エーピーコミュニケーションズ ACS事業部 亀崎です。 私は2026年3月23日〜26日に開催されているKubeCon + CloudNativeCon 2026 Europeに参加のため、 現在アムステルダムに来ております。今日3月24日はDay 1の様子をお送りします。
少しでも皆さんに生の情報をお届けすべく、時間のある限り本ブログで紹介したいと思います。
ソフトウェアサプライチェーンセキュリティとコンプライアンスチェック関連
本日参加したセッションのうち、2つがソフトウェアサプライチェーンや開発に関するコンプライアンスチェックに関する内容のものでした。
Real World Supply Chain Security sched.co
The Developer’s Nightmare: How To Survive Compliance Checklists (and Still Ship Fast) sched.co
どちらもとても盛況で、たぶん500〜600人は入るところがほぼいっぱいな状況でした。
ソフトウェアサプライチェーンやコンプライアンスチェックに関して関心のある方がもともと増えたのか、 もしかすると Trivy など、ソフトウェアサプライチェーンの脆弱性を狙われた事象がいくつか発生していることも影響しているのかなと思います。
ソフトウェアサプライチェーンとはなにかというと
- 間接的なものも含む依存関係ライブラリ
- ビルドシステム
- コンテナやOS
- Kuberentesそのもの
- APIなど
を対象とした、開発環境や利用しているライブラリ、実行環境などのセキュリティを指します。 以前はセキュリティといえばSQL InjectionやCSRFなどアプリケーションそのものの脆弱性が攻撃対象になっていましたが、 それに加えてソフトウェア開発時の環境そのものを攻撃対象にしてくるようになっています。
(Real World Supply Chainの資料より)
さらに、アプリケーション開発のガバナンスということで依存関係ライブラリを含むすべてを対象としてライセンスのチェック(ライセンス違反や本来含んではいけないライセンス形態がないかどうかの確認)も必要になっています。
こうした作業は本当に大変なものです。依存関係チェックなどであれば dependabot のようなものをすでに導入されている方もいらっしゃるとは思いますが、 コンテナイメージのチェックやそのイメージに対してsignを付与して、改変されていないことを証明する (そしてそうしたsignのないものはコンテナを実行させない)といったことをどのように実現すればよいのかわからないことも多くあります。
ライセンスチェックなども「どうやればいいの?」「実際にやるのは大変」という印象です。
「Real World Supply Chain」では主にコンテナイメージに関する対応を、 そして 「The Developer’s Nightmare: How To Survive Compliance Checklists」ではライセンスチェックを含むリリースにまつわるチェックリストを どのように実行していけばよいのかが紹介されています。
たぶん1−2週間もするとビデオが公開されるのではと思いますので、興味のある方はぜひご覧になるとよいと思います。
簡単にツール名称だけお伝えしておくと 前者ではsigstore cosign や GitHub Actionの docker/build-push-action によるSBOM生成などが、 後者ではDependency Trackというツールを活用していました。
対応する項目も多くて、めんどくさい、でもやらないといけないことでもあるという領域です。うまくいっているところの内容を参考に少しでも認知負荷を下げて、 対応範囲を広げられるとよいですね。