⏱️
Temps de lecture estimé
~1 minute
~1 minute
Secrets & ConfigMaps — Gestion des Données
Description & Rôle
- ConfigMaps : stockage de configurations non sensibles (variables, fichiers de config)
- Secrets : stockage de données sensibles (passwords, tokens, clés API, certificats)
Ces objets sont montés dans les pods via volumes ou variables d’environnement. ATTENTION : les Secrets ne sont PAS chiffrés par défaut dans etcd.
CVEs Connus
ℹ️
CVE-2024-31324 — Fuite de Secrets via les logs de l’API Server en verbosité DEBUG. Affecte Kubernetes 1.28.x, 1.29.x. Lien CVE
ℹ️
CVE-2023-3955 — Leak de Secrets stockés en clair dans les manifests Git. Affecte tous les clusters utilisant GitOps sans scan de secrets.
Analyse STRIDE
| Risque | Description |
|---|---|
| S — Spoofing | Pod accédant à des Secrets d’autres namespaces |
| T — Tampering | Modification de Secrets via accès etcd direct |
| R — Repudiation | Pas de logs d’accès aux Secrets |
| I — Information Disclosure | Secrets stockés en clair, exposition via logs/events |
| D — Denial of Service | Secret manquant empêchant la start du pod |
| E — Elevation of Privilege | Accès à des Secrets d’administration |
Best-Practices Minimales
- Chiffrement au repos OBLIGATOIRE :
--encryption-provider-configpour etcd - Pas de Secrets en Git : utiliser un secrets manager (Sealed Secrets, Vault, External Secrets)
- RBAC strict : permission
get/list/watchsur les Secrets limitées - Audit complet : logging de tout accès aux Secrets
- Rotation des secrets : processus de rotation régulière
- Secrets manager : Vault, HashiCorp Boundary, ou Sealed Secrets
- Pas de Secrets en variables d’env : préférer les fichiers montés
- Monitoring : alertes sur les accès anormaux aux Secrets
- Nettoyer les logs : éviter les dumps de Secrets sensibles