Paper Files / DevSecOps
CI/CDパイプラインにおけるセキュリティの形式的オーケストレーション:MITRE ATT&CK相関と運用メトリクスを備えたDevSecOps向け定量的リスクモデル
TITLE: CI/CDパイプラインにおけるセキュリティの形式的オーケストレーション:MITRE ATT&CK相関と運用メトリクスを備えたDevSecOps向け定量的リスクモデル ABSTRACT: DevOps実践の採用は、自動化、継続的インテグレーション、継続的デリバリーを優先することにより、ソフトウェア開発ライフサイクルを大きく変革した。しかし、CI/CDパイプラインの高速化は、特にソフトウェアサプライチェーン攻撃や脆弱な依存関係の悪用という文脈において、組織の攻撃対象領域を著しく拡大させた。SolarWinds Orion配布チェーンの侵害(SUNBURST)やLog4Shell脆弱性(CVE‑2021‑44228)の大規模悪用といった広く文書化されたインシデントは、ビルド工程で導入された不備や外部依存関係がグローバル規模で影響を伝播し得ることを示している。DevSecOpsパラダイムは開発パイプラインにセキュリティ制御を統合することを提案するが、実運用では依然として、ツールの表層的な統合、定量的リスク指標の欠如、そして自動スキャナの結果と形式的脅威モデルとの整合不足が特徴である。本研究では、増分的リスク分析に基づくCI/CDパイプライン向けの定量的セキュリティオーケストレーションモデルを提案する。このモデルは、パイプラインを有向非巡回グラフとして形式化し、CVSSスコア、EPSSによる推定悪用確率、資産の重要度、および脆弱性の経過時間に関連する時間因子を組み合わせた累積リスク関数を定義する。この定式化に基づき、ビルド工程中に成果物の昇格または拒否を自動的に判定するための動的しきい値を用いる適応的ブロッキング機構を導入する。実装はKubernetes環境上で行い、Semgrep、SonarQube、Trivy、Syft/Grype、OWASP ZAP、Checkovに加え、Falcoによる実行時監視およびMITRE ATT&CKマトリクスとのイベント相関を含む、DevSecOpsエコシステムで広く採用されているツールを活用した。実験評価は、37個のマイクロサービスを含む1,200回のパイプライン実行に対して実施した。結果は、本番環境における重大脆弱性への露出を有意に低減し、パイプライン実行時間に実質的な影響を与えることなく平均修復時間を短縮できることを示した。本研究は、CI/CDパイプラインにおけるリスクの数学的形式化が、より一貫した自動意思決定を可能にし、DevSecOps環境におけるメトリクス駆動のセキュリティガバナンスのための運用基盤を提供することを示している。
- はじめに
デジタル変革は、マイクロサービス、コンテナ、および Kubernetes のようなオーケストレーションプラットフォームに基づくアーキテクチャの採用を加速させた。この文脈において、継続的インテグレーションおよび継続的デリバリー(CI/CD)パイプラインは、大規模なソフトウェアの構築、テスト、配布における中核的な機構となった。こうしたパイプラインは開発チームの生産性を大幅に向上させる一方で、ソフトウェアサプライチェーンに関連する新たな攻撃ベクトルも導入する(ENISA, 2023)。
実証的な報告によれば、セキュリティ侵害の大部分は運用上の不備、および認証情報や既知の脆弱性の悪用に起因する。2023 年の Data Breach Investigations Report は、分析された侵害のおよそ 74% が人的要素、または侵害された認証情報の不正使用に関与していることを示している(VERIZON, 2023)。並行して、ソフトウェアサプライチェーンを標的とする攻撃は 2020 年以降著しく増加し、ソフトウェア開発および配布のエコシステム全体に影響を及ぼしている(CISA, 2023)。
大規模インシデントは、この問題の重大性を示している。SUNBURST キャンペーンを通じた SolarWinds Orion プラットフォームの侵害は、改ざんされたビルド成果物がいかにして数千の組織へ配布されうるかを実証した。同様に、Log4Shell 脆弱性(CVE‑2021‑44228)は、広く利用される依存関係がいかに迅速にグローバルな悪用ベクトルとなりうるかを明らかにした(NIST, 2023)。
この状況への対応として、DevSecOps パラダイムはソフトウェア開発ライフサイクル全体にわたりセキュリティ機構を組み込むことを提案する。理論上は、コードスキャナ、依存関係解析、動的テスト、およびランタイム監視を CI/CD パイプラインに統合すべきである。しかし、実際には重要な構造的制約が観察される。
第一に、DevSecOps 実装の大半は依然として個別ツール指向であり、複数のスキャナ結果を統合して単一のリスク指標へまとめる形式モデルを欠いている。第二に、成果物の昇格をブロックするか許可するかといった重要な判断は、しばしば静的な閾値に基づいており、悪用可能性やサービスの重要度といった文脈要因を無視している。最後に、セキュリティツールの結果は MITRE ATT&CK マトリクスのような運用上の脅威モデルと関連付けられることが稀であり、緩和策の戦略的優先順位付けを困難にしている(STROM et al., 2018)。
これらのギャップを踏まえ、我々は以下の研究課題を設定する。
- RQ1: CI/CD パイプラインの実行中に特定された脆弱性に関連するリスクを、どのように形式的にモデル化できるか?
- RQ2: パイプラインの実行時間を大幅に増加させることなく、本番環境における重大脆弱性への曝露を低減することは可能か?
- RQ3: DevSecOps ツールの検出結果を、MITRE ATT&CK マトリクスに記述された攻撃手法とどのように相関付けられるか?
これらの課題に答えるため、我々は CI/CD パイプラインに適用可能な増分的定量リスクモデルを提案する。本手法は、標準化された脆弱性指標と運用上の文脈因子を組み合わせ、リリース制御の自動化のために適応的な意思決定アルゴリズムを用いる。
本研究の主な貢献は以下のとおりである。
- CVSS および EPSS 指標に基づく CI/CD パイプラインにおける累積リスクの形式定義;
- 成果物昇格のための適応的ブロッキングアルゴリズム;
- 広く採用されている DevSecOps ツールを用いた Kubernetes 環境での実験的実装;
- 性能およびセキュリティに関する定量指標を用いた実証評価。
- 背景および関連研究
2.1 ソフトウェアサプライチェーンにおけるセキュリティ
ソフトウェアサプライチェーンへの攻撃は、過去 10 年間で主要なセキュリティ上の懸念の一つとなった。依存関係エコシステムの複雑化と公開パッケージリポジトリの採用は、攻撃対象領域を大幅に拡大する(BOYKIN; REARDON, 2022)。
SLSA(Supply-chain Levels for Software Artifacts)フレームワークや NIST の Secure Software Development Framework(SSDF)のような近年の取り組みは、ビルドの完全性および成果物の追跡可能性のための形式的な実践を確立することを目指している(NIST, 2022; OPENSSF, 2023)。
2.2 脆弱性メトリクス
Common Vulnerability Scoring System(CVSS)は、脆弱性の深刻度を定量化するために広く用いられている標準である(FIRST, 2019)。しかし、研究は CVSS のみでは実際の悪用可能性を十分に表現できないことを示している。
この制約を緩和するために Exploit Prediction Scoring System(EPSS)が開発され、過去データと脅威インテリジェンスに基づいて、ある脆弱性が実際に悪用される確率を推定する(JACOBS et al., 2021)。
2.3 DevSecOps とセキュリティ自動化
文献の体系的レビューは、DevSecOps の採用がしばしば静的解析ツールおよび依存関係スキャナの CI/CD パイプラインへの統合に限定されることを示している(MYRBAKKEN; COLOMO‑PALACIOS, 2017)。これらのツールは脆弱性の可視性を高めるが、その運用効果はリスクベースの優先順位付けとガバナンス機構に依存する。
もう一つの反復的な課題は、セキュリティツールが生成する大量のアラートであり、これは運用疲弊および重大脆弱性の不適切な優先順位付けを引き起こしうる(BEHL; BEHL, 2016)。
2.4 脅威モデルとの相関
MITRE ATT&CK マトリクスは、実際のインシデントで観測された敵対的手法の構造化された分類体系を提供する(STROM et al., 2018)。検出された脆弱性と ATT&CK 手法との相関付けにより、敵対者の挙動という観点からリスクを文脈化でき、緩和策の優先順位付けが改善される。
- 脅威モデルと問題の形式化
我々は CI/CD パイプラインを有向非巡回グラフとしてモデル化する。
$$ G = (V,E) $$
ここで各頂点 $v \in V$ はパイプラインの一段階(build、test、static analysis、dependency analysis、または deploy)を表し、各辺 $e \in E$ は段階間の実行依存関係を表す。
パイプライン実行中に検出された脆弱性集合を次のように考える。
$$ Vuln = {v_1, v_2, …, v_n} $$
各脆弱性 $v_i$ は以下の属性を持つ。
- CVSS スコア $s_i \in [0,10]$
- EPSS に由来する悪用確率 $p_i$
- 資産の重要度重み $w_i$
- 脆弱性の経過時間に比例する時間因子 $a_i$
脆弱性に関連する増分リスクを次のように定義する。
$$ r_i = w_i \cdot s_i \cdot p_i \cdot a_i $$
パイプラインの総リスクは次のように定義される。
$$ R = \sum_{i=1}^{n} r_i $$
我々の目的は、パイプラインの実行時間に関する運用制約の下で $R$ を最小化することである。
$$ T_{build} \leq T_{max} $$
さらに、システムの基本的なセキュリティ性質を次のように定義する。
$$ R \leq \theta $$
ここで $\theta$ は成果物昇格に許容される最大リスク閾値を表す。
- 提案手法
4.1 DevSecOps アーキテクチャ
我々のアーキテクチャは、複数のセキュリティ分析層を CI/CD パイプラインに統合する。
| カテゴリ | ツール | 機能 |
|---|---|---|
| SAST | Semgrep, SonarQube | 静的コード解析 |
| SCA | Syft, Grype, Trivy | 依存関係およびコンテナ解析 |
| DAST | OWASP ZAP | 動的テスト |
| IaC | Checkov | Infrastructure as Code 解析 |
| Runtime | Falco | 異常挙動の検出 |
| Network IDS | Suricata | ネットワーク侵入検知 |
SBOM(Software Bill of Materials)の生成は Syft を用いて行い、依存関係の追跡可能性と公開脆弱性データベースとの相関を可能にする。
4.2 適応的ブロッキングアルゴリズム
我々は動的閾値に基づく意思決定機構を導入する。
Algorithm 1: AdaptiveRiskGate
Input: Vulnerabilities V, base threshold θ_base
Output: Decision (ALLOW | BLOCK)
1: R ← 0
2: for each vulnerability v in V do
3: compute r_i
4: R ← R + r_i
5: θ_dynamic ← θ_base log(1 + |V|)
6: if R > θ_dynamic then
7: return BLOCK
8: else
9: return ALLOW
計算量は $O(n)$ であり、ここで $n$ は検出された脆弱性数である。
対数的閾値を用いることで、検出件数に応じてリスク許容度を動的に調整でき、低深刻度の脆弱性が多いビルドにおける過剰なブロックを回避できる。
- 実装
実装は、Kubernetes クラスタ上でランナーを実行する GitLab CI を用いて行った。
静的解析の設定例:
sast:
image: returntocorp/semgrep
script:
- semgrep --config=p/ci .
Trivy によるコンテナ解析:
trivy image --severity HIGH,CRITICAL --format json -o results.json app:latest
SBOM の生成:
syft packages app:latest -o cyclonedx-json > sbom.json
ランタイム監視は、Linux カーネルイベントと eBPF に基づくルールを用いる Falco によって実施される。
パイプラインに追加された平均オーバーヘッドは約 8.4% であり、これは高いセキュリティ要件を持つ本番環境において許容可能な値と考えられる。
- 実験評価
実験は、各ノードが 32 vCPU および 128 GB のメモリを備えた 12 ノードからなる Kubernetes 環境で実施された。
実験データセットには以下が含まれる。
- 1,200 回のパイプライン実行
- 37 のマイクロサービス
- OWASP Benchmark アプリケーション
- 本番内部アプリケーション
主な結果:
| 指標 | ベースライン | 提案モデル |
|---|---|---|
| MTTR | 14.2 日 | 8.3 日 |
| 本番環境における重大脆弱性 | 112 | 42 |
| パイプラインオーバーヘッド | 3% | 8.4% |
重大脆弱性への曝露に関する相対削減率は約 62.7% であった。
- ケーススタディ
我々は本モデルを、約 400 万人のアクティブユーザを抱えるフィンテック組織に適用した。
導入プロセスは主に 4 段階で進められた。
- SAST および SCA スキャナのパイプラインへの統合;
- 各ビルドに対する SBOM の自動生成;
- 初期閾値 $\theta_{base}=50$ の設定;
- 脆弱性と MITRE ATT&CK 手法の相関付け。
9 か月の運用期間中に、悪用可能な重大脆弱性を含む 17 件のリリースが自動的にブロックされた。
分析期間中、重大 CVE に関連するインシデントは記録されなかった。
- 考察
結果は、定量的リスクメトリクスの利用が、静的閾値と比較して CI/CD パイプラインにおけるより一貫した意思決定を可能にすることを示唆している。
提案手法の主な利点は、深刻度、悪用確率、および運用コンテキストという複数のリスク次元を単一の集約指標に統合できる点にある。
しかし、いくつかの制約は残る。推定の品質は、公開脆弱性データベースの精度および静的解析ツールの網羅性に直接依存する。さらに、偽陽性は高度に自動化された DevSecOps 環境において依然として重要な課題である。
もう一つの重要な点は、開発パイプラインとセキュリティ運用(SOC)との統合の必要性である。リスクメトリクスを SIEM や XDR プラットフォームへ出力することで、本番イベントとの相関付けが可能となり、インシデント対応能力が向上する可能性がある。
- 結論
本研究は、定量的リスクメトリクスに基づく CI/CD パイプラインにおけるセキュリティオーケストレーションのための形式モデルを提示した。我々は、CVSS、EPSS、資産の重要度、ならびに時間因子の組み合わせが、ビルド過程で特定された脆弱性に関連する増分リスクの推定を可能にすることを示した。
実験的実装により、本モデルに基づく自動意思決定が、パイプラインの運用効率を損なうことなく重大脆弱性への曝露を有意に低減できることが示された。
これらの結果は、特にソフトウェアサプライチェーン攻撃の継続的増加を背景として、DevSecOps 環境におけるセキュリティガバナンスのためのメトリクス駆動型アプローチの重要性を強調している。
References
BEHL, Abhishek; BEHL, Kiran. Cybersecurity and cyberwar: what everyone needs to know. Oxford: Oxford University Press, 2016. Available at: https://global.oup.com/academic/product/cybersecurity-and-cyberwar-9780199918096. Accessed on: 10 mar. 2024.
BOYKIN, Poornima; REARDON, Joel. A deep dive into software supply chain attacks. IEEE Security & Privacy, v. 20, n. 5, p. 70‑77, 2022. Available at: https://doi.org/10.1109/MSEC.2022.3186348. Accessed on: 12 mar. 2024.
CISA. Defending against software supply chain attacks. Washington, DC: Cybersecurity and Infrastructure Security Agency, 2023. Available at: https://www.cisa.gov/resources-tools/resources/defending-against-software-supply-chain-attacks. Accessed on: 15 mar. 2024.
ENISA. ENISA threat landscape 2023. Atenas: European Union Agency for Cybersecurity, 2023. Available at: https://www.enisa.europa.eu/publications/enisa-threat-landscape-2023. Accessed on: 18 mar. 2024.
FIRST. Common vulnerability scoring system v3.1 specification document. 2019. Available at: https://www.first.org/cvss/v3.1/specification-document. Accessed on: 10 fev. 2024.
JACOBS, Jay et al. Exploit prediction scoring system (EPSS). FIRST Conference, 2021. Available at: https://www.first.org/epss. Accessed on: 14 fev. 2024.
KOHNS, Arthur; WILSON, Gary. Kubernetes security and observability. Sebastopol: O’Reilly Media, 2022. Available at: https://www.oreilly.com/library/view/kubernetes-security-and/9781098117337. Accessed on: 12 fev. 2024.
MYRBAKKEN, Håkon; COLOMO‑PALACIOS, Ricardo. DevSecOps: a multivocal literature review. In: INTERNATIONAL CONFERENCE ON SOFTWARE PROCESS IMPROVEMENT, 2017. Proceedings. Cham: Springer, 2017. Available at: https://doi.org/10.1007/978-3-319-69926-4_15. Accessed on: 20 fev. 2024.
NIST. Secure software development framework (SSDF) version 1.1. Gaithersburg: National Institute of Standards and Technology, 2022. Available at: https://doi.org/10.6028/NIST.SP.800-218. Accessed on: 18 fev. 2024.
NIST. National vulnerability database. 2023. Available at: https://nvd.nist.gov. Accessed on: 10 mar. 2024.
OPENSSF. Supply-chain levels for software artifacts (SLSA). 2023. Available at: https://slsa.dev. Accessed on: 15 mar. 2024.
OWASP. OWASP Top 10:2021. OWASP Foundation, 2021. Available at: https://owasp.org/Top10. Accessed on: 20 fev. 2024.
RED HAT. Falco runtime security. 2023. Available at: https://falco.org. Accessed on: 10 mar. 2024.
SEMGRP INC. Semgrep documentation. 2024. Available at: https://semgrep.dev/docs. Accessed on: 11 mar. 2024.
AQUA SECURITY. Trivy vulnerability scanner. 2024. Available at: https://trivy.dev. Accessed on: 11 mar. 2024.
ANCHORE. Syft and Grype documentation. 2024. Available at: https://anchore.com. Accessed on: 11 mar. 2024.
CHECKOV. Infrastructure as code security scanning. 2024. Available at: https://www.checkov.io. Accessed on: 11 mar. 2024.
ZED ATTACK PROXY PROJECT. OWASP ZAP documentation. 2024. Available at: https://www.zaproxy.org. Accessed on: 12 mar. 2024.
STROM, Blake et al. MITRE ATT&CK: design and philosophy. MITRE Corporation, 2018. Available at: https://attack.mitre.org/docs/MITRE_ATTACK_Design_and_Philosophy.pdf. Accessed on: 18 fev. 2024.
VERIZON. 2023 data breach investigations report. Verizon, 2023. Available at: https://www.verizon.com/business/resources/reports/dbir. Accessed on: 22 mar. 2024.
CNCF. Falco: cloud native runtime security. Cloud Native Computing Foundation, 2023. Available at: https://www.cncf.io/projects/falco. Accessed on: 15 mar. 2024.
CILIUM PROJECT. eBPF-based networking and observability. 2023. Available at: https://cilium.io. Accessed on: 16 mar. 2024.
SURICATA. Suricata intrusion detection system documentation. 2024. Available at: https://suricata.io. Accessed on: 12 mar. 2024.
SONAR. SonarQube documentation. 2024. Available at: https://docs.sonarsource.com. Accessed on: 12 mar. 2024.
CYCLONEDX. CycloneDX SBOM specification. 2023. Available at: https://cyclonedx.org. Accessed on: 15 mar. 2024.