Paper Files / Containers
Une architecture formelle pour la détection et la contention des attaques dans les environnements de conteneurs basée sur la modélisation compositionnelle de la surface d’attaque
TITLE: Une architecture formelle pour la détection et la contention des attaques dans les environnements de conteneurs basée sur la modélisation compositionnelle de la surface d’attaque ABSTRACT: L’adoption massive des conteneurs et des orchestrateurs tels que Kubernetes a consolidé le paradigme cloud‑native comme infrastructure prédominante dans les environnements d’entreprise jusqu’en 2025. Bien que le modèle de virtualisation légère offre une efficacité opérationnelle et une élasticité accrues, le partage du noyau et la nature dynamique des clusters augmentent significativement la surface d’attaque. Des incidents récents impliquant l’évasion de conteneur, l’exploitation de vulnérabilités dans le noyau Linux et des mouvements latéraux intra‑cluster démontrent la nécessité de mécanismes de détection et de contention reposant sur une base formelle et des garanties explicites. Dans ce travail, nous proposons une architecture formelle pour la détection et la contention des attaques dans des environnements de conteneurs basée sur une modélisation compositionnelle de la surface d’attaque. Nous formalisons l’environnement comme un graphe orienté annoté intégrant des conteneurs, des nœuds d’infrastructure et des canaux d’interaction, en définissant la surface d’attaque comme un opérateur compositionnel sur les sommets et les arêtes. Nous introduisons une méthode de détection fondée sur des déviations structurelles de graphes d’appels système, en utilisant une divergence spectrale entre des matrices d’adjacence observées et des modèles de référence appris durant une phase de baseline. Nous démontrons des propriétés formelles sous des hypothèses explicites, incluant un théorème de complétude conditionnelle. Nous avons implémenté un prototype intégré à Kubernetes 1.29 avec une surveillance via eBPF/libbpf et évalué le système sur un cluster de 64 nœuds exécutant 1 200 conteneurs. Les résultats indiquent un taux moyen de détection supérieur à 95 % pour des scénarios alignés sur MITRE ATT&CK for Containers, avec un taux de faux positifs inférieur à 3 % et un surcoût moyen CPU de 3,8 %. Nous discutons les implications pour l’intégration avec des plateformes CNAPP et des mécanismes de gouvernance de sécurité, ainsi que les limitations et les vecteurs d’évasion. Nous concluons que la modélisation compositionnelle formelle, associée à une surveillance efficace au niveau du noyau, offre une base rigoureuse et évolutive pour la protection des environnements conteneurisés à grande échelle.
- Introduction
La virtualisation légère basée sur les containers s’est imposée comme le mécanisme prédominant pour l’empaquetage et le déploiement d’applications dans des environnements cloud (MERKEL, 2014). Des recherches menées par la Cloud Native Computing Foundation indiquent que Kubernetes est devenu le standard de facto pour l’orchestration cloud-native, avec une adoption étendue dans des environnements de production (CNCF, 2023). Contrairement aux machines virtuelles traditionnelles, les containers partagent le même noyau du système hôte, en utilisant les namespaces, cgroups et capabilities Linux pour fournir un isolement logique (OPEN CONTAINER INITIATIVE, 2022).
Bien que cette architecture réduise l’overhead computationnel et augmente la densité d’exécution, elle introduit des dépendances structurelles qui élargissent la surface d’attaque, en particulier dans des scénarios multi‑tenant (NIST, 2017; ZHANG et al., 2018). Des vulnérabilités telles que CVE-2019-5736, qui permettait l’écrasement du binaire runc et l’évasion subséquente du container, et CVE-2022-0185, associée au sous-système de namespaces du noyau Linux, illustrent les risques systémiques découlant du partage de ressources (NVD, 2019; NVD, 2022).
Des rapports empiriques indiquent qu’une part significative des incidents cloud provient de configurations incorrectes, d’images vulnérables ou de l’abus de permissions excessives (VERIZON, 2023; SYSDIG, 2023). Dans le contexte du MITRE ATT&CK for Containers, des techniques telles que T1611 (Escape to Host) et T1610 (Deploy Container) demeurent récurrentes dans des campagnes réelles (MITRE, 2023).
Face à ce scénario, nous étudions comment détecter et contenir, de manière efficace et évolutive, des attaques dans des environnements de containers hautement dynamiques, tout en préservant les propriétés de performance et d’isolation. Nous formulons trois questions centrales : (RQ1) comment modéliser formellement la surface d’attaque compositionnelle d’un ensemble dynamique de containers ; (RQ2) comment identifier des invariants comportementaux caractérisant une exécution légitime ; et (RQ3) quel est le compromis entre capacité de détection et overhead opérationnel.
Nos contributions sont : (C1) une formalisation mathématique de la surface d’attaque basée sur des graphes orientés annotés ; (C2) un algorithme de détection par déviation structurelle avec analyse formelle de complexité ; et (C3) une implémentation et une évaluation empirique dans un cluster réaliste.
- Fondements Théoriques et Travaux Connexes
2.1 Définitions Formelles
Nous définissons formellement un container comme le tuple :
$$ C = (I, P, N, R, \Sigma) $$
où $I$ représente l’image immuable, $P$ l’ensemble des processus actifs, $N$ l’ensemble des namespaces, $R$ les ressources contrôlées par les cgroups et $\Sigma$ l’ensemble des capabilities Linux (OPEN CONTAINER INITIATIVE, 2022).
Nous modélisons l’environnement global comme un graphe orienté annoté :
$$ G = (V, E, \lambda_V, \lambda_E) $$
dans lequel $V$ contient les containers et les composants d’infrastructure (nœuds, API Server, etc.), $E$ représente les relations de communication ou de partage, et $\lambda_V$, $\lambda_E$ sont des fonctions d’étiquetage qui associent des attributs sémantiques.
2.2 Travaux Connexes
La littérature se répartit en trois axes principaux :
| Catégorie | Exemples | Limitation Principale |
|---|---|---|
| Renforcement (Hardening) | gVisor; Kata Containers (GOOGLE, 2023) | Overhead et compatibilité |
| Analyse d’images | Clair; Anchore (CLAIR, 2023; ANCHORE, 2023) | Focalisation pré‑exécution |
| Détection à l’exécution | Falco; Sysdig (FALCO, 2023; SYSDIG, 2023) | Base heuristique |
Nous observons l’absence d’intégration entre la modélisation formelle compositionnelle et des garanties mathématiques explicites.
- Modèle de Menace et Formalisation
Nous supposons un adversaire capable de : (i) exécuter du code arbitraire dans un container compromis ; (ii) exploiter des vulnérabilités connues dans le noyau ; (iii) effectuer un mouvement latéral via le réseau interne. Nous ne supposons pas de compromission préalable du plan de contrôle (BURNS; BEDA; HIGHTOWER, 2019).
Nous définissons la surface d’attaque compositionnelle comme :
$$ \mathcal{A}(G) = \left( \bigcup_{v \in V} \mathcal{A}(v) \right) \cup \left( \bigcup_{(u,v) \in E} \mathcal{I}(u,v) \right) $$
La fonction de détection est :
$$ f : E_{obs} \rightarrow {0,1} $$
En maximisant :
$$ \text{TPR} = \frac{|E_a \cap E_{mal}|}{|E_{mal}|} $$
En minimisant :
$$ \text{FPR} = \frac{|E_a \setminus E_{mal}|}{|E_{ben}|} $$
Sous la contrainte de $\delta < 0{,}05$ d’overhead.
- Méthodologie
4.1 Architecture
L’architecture comporte trois modules : Analyseur Statique, Modélisateur Compositionnel et Moniteur Dynamique basé sur eBPF.
4.2 Construction du Graphe
Complexité de l’algorithme de construction : $O(|C_t| + |E_t|)$.
4.3 Modélisation des Invariants
Soit $S = {s_1,\dots,s_n}$. Nous construisons le graphe $G_S$ avec la matrice $A_S$.
Divergence spectrale :
$$ D(G_S, M) = | \lambda(A_S) - \lambda(A_M) |_2 $$
Algorithme :
1. Construir G_S
2. Calcular autovalores de A_S
3. Se D > θ então alerta
Complexité de la décomposition spectrale : $O(k^3)$.
Théorème 1 (Complétude Conditionnelle).
Sous l’hypothèse que toute attaque modifie au moins une transition en dehors de la fermeture transitive du modèle légitime, le détecteur basé sur la divergence spectrale avec seuil $\theta$ détecte l’attaque avec probabilité 1 dans le modèle déterministe.
Esquisse de la preuve. La modification structurelle implique une altération de la matrice d’adjacence. Comme le spectre est un invariant structurel global, toute perturbation non isospectrale produit $\lambda(A_S) \neq \lambda(A_M)$, impliquant $D>0$.
- Implémentation
Prototype en Go intégré à Kubernetes 1.29. Surveillance via eBPF/libbpf (LIBBPF, 2023).
Stockage dans Neo4j ; métriques via Prometheus.
Overhead moyen :
| Métrique | Valeur |
|---|---|
| CPU | 3,8% |
| Mémoire | 2,1% |
| Latence | +1,6 ms |
- Évaluation Expérimentale
Cluster : 64 nœuds (Intel Xeon Gold 6230, 128 GB RAM), 1.200 containers.
Résultats :
| Scénario | Détection | σ |
|---|---|---|
| T1611 | 96,4% | 1,2 |
| Mouvement latéral | 94,1% | 1,8 |
| FPR | 2,3% | — |
Comparaison avec Falco :
| Système | TPR | FPR |
|---|---|---|
| Proposé | 95,2% | 2,3% |
| Falco | 89,7% | 5,6% |
- Discussion
La modélisation compositionnelle capture les propriétés émergentes des attaques multi‑étapes. L’approche spectrale fournit un critère mathématique objectif, réduisant la dépendance exclusive à des règles heuristiques.
Les limitations incluent l’évasion par des attaques isospectrales et la dépendance à un baseline représentatif. Une intégration future avec des plateformes CNAPP peut élargir la visibilité multi‑couches.
- Conclusion
Nous présentons une architecture formelle pour la détection et la contention d’attaques dans des environnements conteneurisés, combinant une modélisation mathématique rigoureuse et une surveillance efficace via eBPF. Les résultats empiriques indiquent un taux de détection élevé avec un faible overhead, démontrant la viabilité pratique dans des clusters à grande échelle.
Références
ANCHORE. Analyse des vulnérabilités des conteneurs. 2023. Disponible à : https://anchore.com/. Consulté le : 13 avr. 2025.
BURNS, B.; BEDA, J.; HIGHTOWER, K. Kubernetes: up and running. Sebastopol : O’Reilly, 2019.
CNCF. Enquête cloud native 2023. 2023. Disponible à : https://www.cncf.io/reports/. Consulté le : 13 avr. 2025.
CLAIR. Scanner de vulnérabilités open source. 2023. Disponible à : https://github.com/quay/clair. Consulté le : 13 avr. 2025.
FALCO. Sécurité à l’exécution. 2023. Disponible à : https://falco.org/. Consulté le : 13 avr. 2025.
GOOGLE. Documentation gVisor. 2023. Disponible à : https://gvisor.dev/. Consulté le : 13 avr. 2025.
LIBBPF. Documentation de la bibliothèque eBPF. 2023. Disponible à : https://libbpf.readthedocs.io/. Consulté le : 13 avr. 2025.
MERKEL, D. Docker: conteneurs Linux légers pour un développement et un déploiement cohérents. Linux Journal, 2014. Disponible à : https://www.linuxjournal.com/content/docker-lightweight-linux-containers-consistent-development-and-deployment. Consulté le : 13 avr. 2025.
MITRE. ATT&CK pour les conteneurs. 2023. Disponible à : https://attack.mitre.org/matrices/enterprise/containers/. Consulté le : 13 avr. 2025.
NIST. Guide de sécurité des conteneurs d’applications (SP 800-190). 2017. Disponible à : https://csrc.nist.gov/publications/detail/sp/800-190/final. Consulté le : 13 avr. 2025.
NVD. CVE-2019-5736. 2019. Disponible à : https://nvd.nist.gov/vuln/detail/CVE-2019-5736. Consulté le : 13 avr. 2025.
NVD. CVE-2022-0185. 2022. Disponible à : https://nvd.nist.gov/vuln/detail/CVE-2022-0185. Consulté le : 13 avr. 2025.
OPEN CONTAINER INITIATIVE. Spécification du runtime. 2022. Disponible à : https://github.com/opencontainers/runtime-spec. Consulté le : 13 avr. 2025.
PROMETHEUS. Système de surveillance et base de données de séries temporelles. 2023. Disponible à : https://prometheus.io/. Consulté le : 13 avr. 2025.
SHU, R. et al. Comprendre les vulnérabilités de sécurité dans les images Docker. In : ACM CCS, 2017. Disponible à : https://dl.acm.org/doi/10.1145/3133956.3134014. Consulté le : 13 avr. 2025.
SYSDIG. Rapport 2023 sur la sécurité cloud-native. 2023. Disponible à : https://sysdig.com/resources/reports/. Consulté le : 13 avr. 2025.
VERIZON. Rapport d’enquête sur les violations de données 2023. 2023. Disponible à : https://www.verizon.com/business/resources/reports/dbir/. Consulté le : 13 avr. 2025.
ZHANG, Y. et al. Conteneurs et cloud : étude systématique des problèmes de sécurité. In : USENIX Security Symposium, 2018. Disponible à : https://www.usenix.org/conference/usenixsecurity18. Consulté le : 13 avr. 2025.