Comparaison des solutions de sécurité runtime¶
Cette page alimente un ADR (Architecture Decision Record) pour le choix des outils de sécurité runtime. Les solutions evaluees couvrent des fonctions différentes et complementaires.
Taxonomie des fonctions¶
Avant de comparer, il faut comprendre que ces outils ne font pas la même chose :
| Fonction | Outils | Description |
|---|---|---|
| Detection runtime | Falco, KubeArmor | Observer les appels système et alerter sur les comportements anormaux |
| Prevention a l'admission | OPA/Gatekeeper | Bloquer les ressources non conformes avant creation |
| Scanning de vulnerabilites | Trivy | Détecter les CVE dans les images et configurations |
| Threat intelligence | CrowdSec | Partager et consommer des listes de menaces communautaires |
Grille de comparaison¶
| Critère | Falco | OPA/Gatekeeper | Trivy | KubeArmor | CrowdSec |
|---|---|---|---|---|---|
| Licence | Apache 2.0 | Apache 2.0 | Apache 2.0 | Apache 2.0 | MIT |
| Fonction principale | Detection runtime | Admission control | Scanning vulns | MAC kernel-level | Threat intelligence |
| Méthode de detection | eBPF (appels système) | Webhook admission (manifestes YAML) | Scanning (images, IaC, SBOM) | LSM (AppArmor/BPF-LSM) | Analyse de logs + listes communautaires |
| Temps reel vs periodique | Temps reel | A l'admission | Periodique (operator) ou CI | Temps reel | Temps reel |
| Integration Kubernetes | DaemonSet | Deployment (webhook) | Operator (CRD) | DaemonSet | DaemonSet |
| Langage de regles | YAML + conditions Falco | Rego (OPA) | N/A (base CVE) | YAML (politiques KubeArmor) | YAML (scenarios) |
| Ecosysteme de regles | 100+ regles communautaires | 70+ templates (Gatekeeper library) | Base NVD + GitHub Advisory | 30+ politiques pre-configurees | 200+ scenarios communautaires |
| Empreinte ressources | ~128 Mo RAM par nœud | ~256 Mo RAM (controller) | ~256 Mo RAM (operator) | ~64 Mo RAM par nœud | ~128 Mo RAM par nœud |
| Communauté | CNCF Graduated | CNCF Graduated | CNCF (Aqua Security) | CNCF Sandbox | Communauté active |
| Maturité | 8+ ans | 7+ ans | 6+ ans | 4+ ans | 5+ ans |
Analyse détaillée¶
Falco — Detection comportementale runtime¶
Forces :
- Detection en temps reel via eBPF (zero overhead applicatif)
- Regles expressives couvrant les appels système, fichiers, réseau, processus
- Ecosysteme de regles communautaires tres riche (MITRE ATT&CK aligne)
- Integration native avec les pipelines d'alerte (stdout, gRPC, HTTP)
- Projet CNCF Graduated — maturité et pérennité
Faiblesses :
- Necessite un kernel Linux recent (>= 5.8 pour eBPF CO-RE)
- Tuning des regles nécessaire pour reduire les faux positifs
- Pas d'enforcement natif (detection uniquement, pas de blocage)
Cas d'usage : detection d'intrusion runtime, compliance monitoring, forensics.
OPA/Gatekeeper — Prevention a l'admission¶
Forces :
- Bloque les ressources non conformes avant leur creation
- Langage Rego puissant et expressif
- Bibliotheque de contraintes pre-écrites (Gatekeeper Library)
- Dry-run mode pour tester les politiques sans impact
- Audit mode pour détecter les violations existantes
Faiblesses :
- Ne voit que les manifestes Kubernetes (pas le comportement runtime)
- Rego a une courbe d'apprentissage
- Latence ajoutee à chaque requête API (~10-50ms)
- Ne protège pas contre les attaques post-déploiement
Cas d'usage : enforcement de standards, guardrails de sécurité, compliance.
Trivy — Scanning de vulnerabilites¶
Forces :
- Scanning multi-cible (images, IaC, fichiers, SBOM, configurations Kubernetes)
- Base de vulnerabilites comprehensive (NVD, GitHub Advisory, Red Hat, etc.)
- Trivy Operator pour scanning continu dans le cluster
- Integration CI/CD native
- Rapports en CRD Kubernetes (VulnerabilityReport, ConfigAuditReport)
Faiblesses :
- Pas une solution runtime (scanning periodique, pas de detection en temps reel)
- Faux positifs sur les vulnerabilites sans exploit connu
- Ne détecte pas les zero-days (base de signatures)
Cas d'usage : scanning continu des images déployées, audit de configuration, gate de sécurité CI/CD.
KubeArmor — Enforcement kernel-level¶
Forces :
- Enforcement au niveau du kernel (AppArmor, BPF-LSM, SELinux)
- Peut bloquer les comportements (pas seulement alerter)
- Politiques par conteneur, par pod ou par namespace
- Contrôle fin des processus, fichiers, réseau, capabilities
Faiblesses :
- Necessite un LSM supporte par le kernel (AppArmor ou BPF-LSM)
- Politiques plus complexes a écrire et tester
- Projet CNCF Sandbox (moins mature que Falco/OPA)
- Risque de casser des workloads si les politiques sont trop restrictives
Cas d'usage : enforcement strict de sécurité kernel-level, environnements a haute sécurité.
CrowdSec — Threat intelligence communautaire¶
Forces :
- Modèle collaboratif : chaque instance partage les menaces détectées
- Base de reputation d'IP communautaire (millions de signaux)
- Bouncers pour enforcement (firewall, reverse proxy, Kubernetes)
- Scenarios d'analyse de logs configurables
- Leger et facile a déployer
Faiblesses :
- Dependance a la communauté pour la qualité des données
- Moins adapte aux menaces internes (focus sur les menaces externes)
- Pas de detection au niveau des appels système
- Integration Kubernetes encore jeune
Cas d'usage : protection perimetrique, blocage d'IP malveillantes, complement de threat intelligence.
Decision recommandee¶
Combinaison recommandee¶
Decision : déployer Falco + OPA/Gatekeeper comme socle de sécurité runtime, complètes par Trivy Operator pour le scanning continu.
graph TD
CICD["Pipeline CI/CD<br/>Trivy scan (gate de securite)"] -->|Image validee| API["Kubernetes API Server<br/>OPA/Gatekeeper (admission control)<br/>Bloque les pods non conformes AVANT creation"]
API -->|Pod cree| Runtime["Runtime (noeuds du cluster)<br/>Falco (detection comportementale eBPF)<br/>Alerte sur les comportements anormaux"]
Runtime --- TrivyOp["Trivy Operator (scanning continu)<br/>Detecte les nouvelles CVE sur les images deployees"] Justification¶
| Besoin | Solution | Pourquoi |
|---|---|---|
| Prevenir les mauvaises configurations | OPA/Gatekeeper | Bloque a l'admission, deterministe, zero faux positif |
| Détecter les intrusions runtime | Falco | eBPF temps reel, couverture MITRE ATT&CK |
| Scanner les vulnerabilites en continu | Trivy Operator | Base CVE a jour, rapports CRD natifs |
| Enforcement kernel (optionnel) | KubeArmor | A ajouter si le niveau de sécurité requis est Restreint |
| Threat intelligence (optionnel) | CrowdSec | A ajouter pour la protection perimetrique |
Trivy n'est pas une solution runtime
Trivy scanne les images et configurations de manière periodique. Il détecte les vulnerabilites connues mais ne voit pas les comportements runtime. Il est complementaire a Falco, pas un substitut.