導入 — なぜ今サプライチェーン保証が必須なのか
ソフトウェア開発は依存関係と自動化された配布経路が増えた結果、サプライチェーン経由の侵害リスクが重大化しています。SLSA(Supply-chain Levels for Software Artifacts)は、ビルドの完全性と証跡(provenance)を担保するための実務的なフレームワークを提供し、組織が段階的に保証レベルを高める指針を示しています。
また、SBOM(Software Bill of Materials)はソフトウェアを構成する部品表を機械判読可能な形で記録し、脆弱性の検出・影響範囲把握・対応を迅速化するための基盤です。政府機関や業界でもSBOM運用の標準化・最小要素の整備が進んでいます。
設計フェーズ:SLSA準拠とCI/CDの安全設計チェックリスト
ここでは設計段階で必ず組み込むべき原則と具体的な実装ポイントを示します。下のチェックリストはSLSAの考え方に沿った優先順位で整理しています。
最優先(すぐ取り組む)
- ビルドの自動化と生成プロビナンスの出力(誰が、いつ、どのソースでビルドしたかを記録)。
- CIジョブはエフェメラル(使い捨て)環境で実行し、ビルド間の汚染を防止。
- シークレットはVault等で一元管理し、CIジョブからは短期トークンを用いる。
中期(設計の固め)
- アーティファクト署名と透明性ログ:Sigstore(Cosign/Rekor等)を用いてビルド成果物に署名し、検証可能にする。署名はCIの一部として自動化する。
- ビルド定義(workflow)はソース管理下に置き、プルリクエストとコードレビューで変更を追跡。
- 依存関係のソース(パッケージレジストリ等)を制限し、ホワイトリスト化またはプロキシ経由で取得。
長期(高保証)
- SLSAレベル3/4を目標にし、再現可能ビルド、承認ワークフロー、ビルドプラットフォームの強化を実施。
- 外部サプライヤーに対するセキュリティ要求(署名・SBOM・テスト結果等)を調達契約で定義。
運用フェーズ:SBOMの実装とCI/CDでの自動化運用
SBOMは単なる出力物ではなく、継続的に生成・照合・利用される仕組みが重要です。CISAと関連機関はSBOMの最小要素や消費者向けの推奨実践を公開しており、これを参照して組織のSBOMポリシーを定義します。
実運用チェックリスト
- CIでアーティファクト生成時にSBOMを自動出力(CycloneDX / SPDX 形式の採用検討)。
- VEX(Vulnerability Exploitability eXchange)やSBOMメタデータで“この製品はその脆弱性に影響するか否か”の意志決定を自動化。
- SBOMは署名して改ざん防止、署名検証を配布時に自動実施。
- SBOMのインジェストパイプラインをSIEM/CD管轄のアセットDBと連携し、脆弱性発覚時に影響範囲を即時検索。
- サプライヤーからのSBOM受領・検証ワークフローを整備(受領→署名検証→依存マッピング→リスク評価)。
CI/CDでの実例ステップ
- コードマージ時にSCA/SASTを実行。
- ビルド実行、生成物のハッシュとプロビナンス生成。
- Cosign等で署名し、Rekor等の透明性ログに記録。
- SBOMとVEXを生成し、アーティファクトとともに配布。
- 配布先で署名+SBOMの整合性・影響範囲チェックを自動で行う。
検知・対応(インシデント準備)と導入ロードマップ
CI/CDパイプライン自体が狙われる事例が継続しています(例:GitHub Actionsを含むワークフロー関連の侵害)。そのため、インシデント時にはビルド履歴・プロビナンス・透明性ログ・SBOMを活用して影響範囲を特定し、迅速にトークン回収やロールバックを行う体制が不可欠です。
導入ロードマップ(短期〜中期)
- 短期(0–3ヶ月):重要プロジェクトからSLSAレベル1相当のプロビナンス出力とCosign署名を開始。
- 中期(3–9ヶ月):SBOM出力をCIに統合、VEXと連携した自動影響評価を構築。
- 長期(9–18ヶ月):SLSAレベル3相当の再現可能ビルド、サプライヤー要件の契約適用、透明性ログの社内監査を定着。
実務チェックリスト(要持ち出し)
- ビルドプロバイダでの署名とプロビナンスの自動化(必須)。
- SBOMの機械判読フォーマット(CycloneDX/SPDX)での生成と署名。
- シークレットのライフサイクル管理(短期トークン、即時ローテーション手順)。
- 透明性ログ(Rekor等)と外部検証ツールの導入。
- サプライヤー評価基準(署名/SBOM提出、CIのSLSA準拠度合い)を調達で運用化。
最後に:設計と運用は分断せず、CI/CDに「証跡」「署名」「SBOM」「自動照合」を組み込むことが、現実的で効果的なサプライチェーン保証の近道です。