← Retour aux articles

Paper Files / DevSecOps

TITRE : Orchestration formelle de la sécurité dans les pipelines CI/CD : modèle quantitatif de risque pour DevSecOps avec corrélation MITRE ATT&CK et métriques opérationnelles

DevSecOpsFR

TITRE : Orchestration formelle de la sécurité dans les pipelines CI/CD : modèle quantitatif de risque pour DevSecOps avec corrélation MITRE ATT&CK et métriques opérationnelles RÉSUMÉ : L’adoption des pratiques DevOps a profondément transformé le cycle de développement logiciel en privilégiant l’automatisation, l’intégration continue et la livraison continue. Toutefois, l’accélération des pipelines CI/CD a considérablement élargi la surface d’attaque des organisations, en particulier dans le contexte des attaques de la chaîne d’approvisionnement logicielle et de l’exploitation de dépendances vulnérables. Des incidents largement documentés, tels que la compromission de la chaîne de distribution de SolarWinds Orion (SUNBURST) et l’exploitation massive de la vulnérabilité Log4Shell (CVE‑2021‑44228), montrent que des défaillances introduites au cours du processus de build ou via des dépendances externes peuvent propager leur impact à l’échelle mondiale. Bien que le paradigme DevSecOps propose d’intégrer des contrôles de sécurité au pipeline de développement, la pratique opérationnelle reste caractérisée par une intégration superficielle des outils, l’absence de métriques quantitatives de risque et un manque d’alignement entre les résultats des scanners automatisés et les modèles formels de menace. Dans ce travail, nous proposons un modèle quantitatif d’orchestration de la sécurité dans les pipelines CI/CD fondé sur une analyse incrémentale du risque. Le modèle formalise le pipeline comme un graphe orienté acyclique et définit une fonction de risque cumulatif qui combine le score CVSS, la probabilité d’exploitation estimée via EPSS, la criticité de l’actif et un facteur temporel associé à l’ancienneté de la vulnérabilité. À partir de cette formulation, nous introduisons un mécanisme de blocage adaptatif qui utilise des seuils dynamiques pour décider automatiquement de la promotion ou du rejet des artefacts au cours du processus de build. Nous avons implémenté le modèle dans un environnement Kubernetes en utilisant des outils largement adoptés dans l’écosystème DevSecOps, notamment Semgrep, SonarQube, Trivy, Syft/Grype, OWASP ZAP et Checkov, ainsi qu’une surveillance en temps d’exécution avec Falco et la corrélation d’événements avec la matrice MITRE ATT&CK. L’évaluation expérimentale a été menée sur 1 200 exécutions de pipeline impliquant 37 microservices. Les résultats indiquent une réduction significative de l’exposition aux vulnérabilités critiques en production et une diminution du temps moyen de remédiation sans impact substantiel sur le temps d’exécution du pipeline. L’étude montre que la formalisation mathématique du risque dans les pipelines CI/CD permet des décisions automatisées plus cohérentes et fournit une base opérationnelle pour une gouvernance de la sécurité orientée par les métriques dans les environnements DevSecOps.

  1. Introduction

La transformation numérique a intensifié l’adoption d’architectures fondées sur les microservices, les conteneurs et des plateformes d’orchestration telles que Kubernetes. Dans ce contexte, les pipelines d’intégration continue et de livraison continue (CI/CD) sont devenus le mécanisme central de construction, de test et de distribution de logiciels à grande échelle. Bien que ces pipelines augmentent considérablement la productivité des équipes de développement, ils introduisent également de nouveaux vecteurs d’attaque liés à la chaîne d’approvisionnement logicielle (ENISA, 2023).

Les rapports empiriques indiquent qu’une grande partie des violations de sécurité découle de défaillances opérationnelles et de l’exploitation d’identifiants ou de vulnérabilités connues. Le rapport Data Breach Investigations Report de 2023 indique qu’environ 74 % des violations analysées impliquent l’élément humain ou l’usage abusif d’identifiants compromis (VERIZON, 2023). Parallèlement, les attaques ciblant la chaîne d’approvisionnement logicielle ont fortement augmenté depuis 2020, affectant des écosystèmes entiers de développement et de distribution de logiciels (CISA, 2023).

Des incidents à grande échelle illustrent l’ampleur de ce problème. La compromission de la plateforme SolarWinds Orion au moyen de la campagne SUNBURST a démontré comment des artefacts de build compromis peuvent être distribués à des milliers d’organisations. De même, la vulnérabilité Log4Shell (CVE‑2021‑44228) a mis en évidence la rapidité avec laquelle des dépendances largement utilisées peuvent devenir des vecteurs d’exploitation à l’échelle mondiale (NIST, 2023).

En réponse à ce contexte, le paradigme DevSecOps propose d’incorporer des mécanismes de sécurité tout au long du cycle de développement logiciel. En théorie, les scanners de code, l’analyse des dépendances, les tests dynamiques et la surveillance du runtime doivent être intégrés au pipeline CI/CD. Toutefois, dans la pratique, nous observons d’importantes limitations structurelles.

Premièrement, la plupart des implémentations DevSecOps demeurent orientées vers des outils isolés, sans modèle formel intégrant les résultats de multiples scanners dans une métrique de risque unifiée. Deuxièmement, les décisions critiques — telles que bloquer ou autoriser la promotion d’un artefact — reposent fréquemment sur des seuils statiques, en ignorant des facteurs contextuels tels que la probabilité d’exploitation ou la criticité du service. Enfin, les résultats des outils de sécurité sont rarement corrélés à des modèles opérationnels de menace tels que la matrice MITRE ATT&CK, ce qui complique la priorisation stratégique de la mitigation (STROM et al., 2018).

Compte tenu de ces lacunes, nous formulons les questions de recherche suivantes :

Pour répondre à ces questions, nous proposons un modèle quantitatif de risque incrémental appliqué aux pipelines CI/CD. Notre approche combine des métriques standardisées de vulnérabilité avec des facteurs contextuels opérationnels et utilise un algorithme de décision adaptatif pour le contrôle automatisé des mises en production.

Les principales contributions de ce travail sont :

  1. Background and Related Work

2.1 Sécurité des chaînes d’approvisionnement logicielle

Les attaques contre la chaîne d’approvisionnement logicielle sont devenues l’une des principales préoccupations de sécurité de la dernière décennie. La complexité croissante des écosystèmes de dépendances et l’adoption de dépôts publics de paquets élargissent considérablement la surface d’attaque (BOYKIN; REARDON, 2022).

Des initiatives récentes telles que le framework SLSA (Supply‑chain Levels for Software Artifacts) et le Secure Software Development Framework (SSDF) du NIST visent à établir des pratiques formelles pour l’intégrité des builds et la traçabilité des artefacts (NIST, 2022; OPENSSF, 2023).

2.2 Métriques de vulnérabilité

Le Common Vulnerability Scoring System (CVSS) est le standard largement utilisé pour quantifier la gravité des vulnérabilités (FIRST, 2019). Toutefois, des études montrent que le CVSS, à lui seul, ne représente pas adéquatement la probabilité réelle d’exploitation.

Afin d’atténuer cette limitation, le Exploit Prediction Scoring System (EPSS) a été développé ; il estime de manière probabiliste la probabilité d’exploitation active d’une vulnérabilité sur la base de données historiques et de renseignements sur les menaces (JACOBS et al., 2021).

2.3 DevSecOps et automatisation de la sécurité

Des revues systématiques de la littérature indiquent que l’adoption de DevSecOps se limite souvent à l’intégration d’outils d’analyse statique et de scanners de dépendances dans les pipelines CI/CD (MYRBAKKEN; COLOMO‑PALACIOS, 2017). Bien que ces outils améliorent la visibilité sur les vulnérabilités, leur efficacité opérationnelle dépend de mécanismes de priorisation et de gouvernance fondés sur le risque.

Un autre défi récurrent est le volume important d’alertes générées par les outils de sécurité, ce qui peut entraîner une fatigue opérationnelle et une priorisation inadéquate des vulnérabilités critiques (BEHL; BEHL, 2016).

2.4 Corrélation avec les modèles de menace

La matrice MITRE ATT&CK fournit une taxonomie structurée des techniques adverses observées dans des incidents réels (STROM et al., 2018). La corrélation entre les vulnérabilités détectées et les techniques ATT&CK permet de contextualiser les risques en termes de comportement adverse, améliorant ainsi la priorisation de la mitigation.

  1. Threat Model and Problem Formalization

Nous modélisons le pipeline CI/CD comme un graphe acyclique orienté :

$$ G = (V,E) $$

où chaque sommet $v \in V$ représente une étape du pipeline (build, test, analyse statique, analyse des dépendances ou déploiement) et chaque arête $e \in E$ représente des dépendances d’exécution entre les étapes.

Nous considérons un ensemble de vulnérabilités détectées lors d’une exécution de pipeline :

$$ Vuln = {v_1, v_2, …, v_n} $$

Chaque vulnérabilité $v_i$ possède les attributs suivants :

Nous définissons le risque incrémental associé à une vulnérabilité comme :

$$ r_i = w_i \cdot s_i \cdot p_i \cdot a_i $$

Le risque total du pipeline est défini comme :

$$ R = \sum_{i=1}^{n} r_i $$

Notre objectif est de minimiser $R$ sous la contrainte opérationnelle du temps d’exécution du pipeline :

$$ T_{build} \leq T_{max} $$

En outre, nous définissons la propriété de sécurité fondamentale du système :

$$ R \leq \theta $$

où $\theta$ représente le seuil maximal de risque acceptable pour la promotion des artefacts.

  1. Proposed Methodology

4.1 Architecture DevSecOps

Notre architecture intègre plusieurs couches d’analyse de sécurité dans le pipeline CI/CD.

Catégorie Outil Fonction
SAST Semgrep, SonarQube analyse statique du code
SCA Syft, Grype, Trivy analyse des dépendances et des conteneurs
DAST OWASP ZAP tests dynamiques
IaC Checkov analyse de l’infrastructure en tant que code
Runtime Falco détection de comportements anormaux
Network IDS Suricata détection d’intrusion réseau

La génération de la SBOM (Software Bill of Materials) est effectuée à l’aide de Syft, permettant la traçabilité des dépendances et la corrélation avec des bases publiques de vulnérabilités.

4.2 Algorithme de blocage adaptatif

Nous introduisons un mécanisme de décision fondé sur un seuil dynamique :

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

La complexité computationnelle est $O(n)$, où $n$ est le nombre de vulnérabilités détectées.

L’utilisation d’un seuil logarithmique permet d’ajuster dynamiquement la tolérance au risque en fonction du volume de constats, évitant ainsi des blocages excessifs dans des builds comportant un grand nombre de vulnérabilités de faible gravité.

  1. Implementation

L’implémentation a été réalisée à l’aide de GitLab CI exécutant des runners dans un cluster Kubernetes.

Exemple de configuration d’analyse statique :

sast:
  image: returntocorp/semgrep
  script:
    - semgrep --config=p/ci .

Analyse de conteneur avec Trivy :

trivy image --severity HIGH,CRITICAL --format json -o results.json app:latest

Génération de SBOM :

syft packages app:latest -o cyclonedx-json > sbom.json

La surveillance en runtime est assurée par Falco à l’aide de règles fondées sur des événements du noyau Linux et eBPF.

La surcharge moyenne introduite dans le pipeline a été d’environ 8,4 %, valeur jugée acceptable pour des environnements de production aux exigences de sécurité élevées.

  1. Experimental Evaluation

L’expérience a été menée dans un environnement Kubernetes composé de 12 nœuds dotés chacun de 32 vCPU et de 128 Go de mémoire.

Le jeu de données expérimental comprenait :

Résultats principaux :

Métrique Baseline Modèle proposé
MTTR 14,2 jours 8,3 jours
Vulnérabilités critiques en production 112 42
Surcharge du pipeline 3% 8,4%

La réduction relative de l’exposition aux vulnérabilités critiques a été d’environ 62,7 %.

  1. Case Study

Nous avons appliqué le modèle à une organisation fintech comptant environ quatre millions d’utilisateurs actifs.

Le processus d’adoption s’est déroulé en quatre étapes principales :

  1. intégration de scanners SAST et SCA dans le pipeline ;
  2. génération automatique d’une SBOM pour chaque build ;
  3. définition du seuil initial $\theta_{base}=50$ ;
  4. corrélation des vulnérabilités avec les techniques MITRE ATT&CK.

Au cours de neuf mois d’exploitation, 17 releases contenant des vulnérabilités critiques exploitables ont été automatiquement bloquées.

Aucun incident lié à des CVE critiques n’a été enregistré pendant la période analysée.

  1. Discussion

Les résultats suggèrent que l’utilisation de métriques quantitatives de risque permet des décisions plus cohérentes dans les pipelines CI/CD par rapport à des seuils statiques.

Le principal avantage de l’approche proposée est l’intégration de plusieurs dimensions du risque — gravité, probabilité d’exploitation et contexte opérationnel — dans une seule métrique agrégée.

Néanmoins, certaines limites subsistent. La qualité des estimations dépend directement de la précision des bases de données publiques de vulnérabilités et de la couverture des outils d’analyse statique. De plus, les faux positifs représentent encore un défi important dans les environnements DevSecOps fortement automatisés.

Une autre observation pertinente est la nécessité d’intégrer les pipelines de développement et les opérations de sécurité (SOC). L’exportation des métriques de risque vers des plateformes SIEM ou XDR peut permettre une corrélation avec les événements de production et améliorer la capacité de réponse aux incidents.

  1. Conclusion

Ce travail a présenté un modèle formel d’orchestration de la sécurité dans les pipelines CI/CD fondé sur des métriques quantitatives de risque. Nous avons montré comment la combinaison de CVSS, EPSS, criticité des actifs et facteurs temporels permet d’estimer le risque incrémental associé aux vulnérabilités identifiées au cours du processus de build.

L’implémentation expérimentale a démontré que des décisions automatisées fondées sur ce modèle peuvent réduire de manière significative l’exposition aux vulnérabilités critiques sans compromettre l’efficacité opérationnelle du pipeline.

Les résultats renforcent l’importance d’approches orientées par des métriques pour la gouvernance de la sécurité dans les environnements DevSecOps, en particulier face à la croissance continue des attaques contre la chaîne d’approvisionnement logicielle.

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. Athènes: 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.