Skip to content
Cybersécurité

CVE-2024-21626 : Analyse complète de la faille RCE critique dans runc (CVSS 9.8)

CVE-2024-21626 est une vulnérabilité critique (CVSS 9.8) dans runc qui permet à un attaquant de s'échapper d'un conteneur Docker ou Kubernetes et de compromettre le serveur hôte. Analyse technique complète, systèmes affectés, impact réel et guide de remédiation pas à pas.

Sarah Mansouri
Sarah Mansouri
25 janvier 20257 min
CVE-2024-21626 : Analyse complète de la faille RCE critique dans runc (CVSS 9.8)

CVE-2024-21626 : Analyse complète de la faille RCE critique dans runc

CVE-2024-21626 est l'une des vulnérabilités les plus critiques découvertes en 2024 pour les environnements conteneurisés. Elle affecte runc, le runtime de conteneurs utilisé par Docker, Kubernetes et la grande majorité des orchestrateurs modernes.

Score CVSS v3.1 : 9.8 / Critique — Classification : Remote Code Execution + Container Escape

Qu'est-ce que runc ?

Runc est le runtime de conteneurs bas-niveau sur lequel repose tout l'écosystème de conteneurisation moderne. Docker, containerd, Podman et Kubernetes l'utilisent pour instancier les conteneurs. Une vulnérabilité dans runc impacte donc potentiellement des millions d'environnements de production.

Mécanisme d'exploitation de CVE-2024-21626

Cause racine : mauvaise gestion des descripteurs de fichiers

La faille réside dans une gestion incorrecte des descripteurs de fichiers (file descriptors) au moment de l'initialisation d'un conteneur. En abusant de ce comportement, un attaquant qui contrôle l'image d'un conteneur peut :

  1. Placer un binaire malveillant dans l'image
  2. Déclencher son exécution au démarrage du conteneur
  3. Obtenir un accès shell sur le système hôte avec les privilèges de runc
# Exemple de vecteur d'attaque simplifié
FROM ubuntu:22.04
COPY exploit /exploit
ENTRYPOINT ["/exploit"]

Scénarios d'attaque réels

  • Supply chain attack : image malveillante distribuée via Docker Hub
  • Multi-tenant cloud : évasion de conteneur dans un environnement partagé
  • CI/CD : exécution de code arbitraire dans un pipeline de build

Systèmes affectés

ComposantVersions vulnérablesVersion corrective
runc< 1.1.12≥ 1.1.12
Docker Engine< 25.0.3, < 24.0.9≥ 25.0.3 / 24.0.9
containerd< 1.7.13, < 1.6.26≥ 1.7.13 / 1.6.26
KubernetesVia containerd affectéMettre à jour containerd

Impact réel et conséquences

Une exploitation réussie de CVE-2024-21626 permet :

  • Évasion de conteneur : accès complet au système hôte avec les droits root
  • Compromission latérale : pivot vers d'autres conteneurs sur le même hôte
  • Exfiltration de données : accès aux secrets Kubernetes, aux volumes montés et aux credentials
  • Persistance : installation de backdoors sur l'hôte compromis

Contexte critique : Cette vulnérabilité est particulièrement dangereuse dans les environnements multi-tenant où plusieurs clients partagent le même hôte physique (cloud public, PaaS).

Indicateurs de compromission (IoC)

  • Accès anormal depuis un processus conteneur vers /proc/self/fd
  • Création de fichiers en dehors du filesystem du conteneur
  • Processus runc avec accès à des chemins hôte inhabituels

Guide de remédiation pas à pas

Étape 1 : Vérifier votre version runc

runc --version
# Sortie attendue après patch : runc version 1.1.12

Étape 2 : Mettre à jour selon votre environnement

Docker :

# Ubuntu/Debian
apt-get update && apt-get upgrade docker-ce docker-ce-cli containerd.io

# RHEL/CentOS
yum update docker-ce

Kubernetes (via containerd) :

apt-get update && apt-get install containerd.io=1.7.13-*
systemctl restart containerd

Étape 3 : Redemarrer tous les conteneurs

# ATTENTION : cette commande redémarre tous les conteneurs
docker restart $(docker ps -q)

Étape 4 : Auditer vos images

# Scanner vos images pour détecter CVE-2024-21626
docker scout cves IMAGE_NAME

Détection automatique avec Breach Atlas

Breach Atlas détecte automatiquement CVE-2024-21626 via son profil Critical / High Risk. Dès la détection, la plateforme génère :

  • Une alerte immédiate avec score de criticite
  • Les instructions de remédiation adaptées à votre environnement
  • Un suivi du statut de correction

FAQ — CVE-2024-21626

Q : Suis-je vulnérable si j'utilise Docker Desktop ? Docker Desktop 4.27.1+ intègre le patch. Vérifiez votre version.

Q : Est-ce que Kubernetes gère automatiquement le patch ? Non. Kubernetes dépend de containerd qui dépend de runc. La mise à jour doit être faite manuellement sur chaque noeud.

Q : Est-ce que CVE-2024-21626 est exploité dans la nature ? Des PoC publics existent. Des tentatives d'exploitation ont été observées dans des environnements de production.

Conclusion

CVE-2024-21626 illustre parfaitement pourquoi la surveillance continue de la surface d'attaque est indispensable. Les organisations qui détectent et corrigent ce type de vulnérabilité en moins de 48h ont un avantage décisif sur les attaquants.

Mots-clés : CVE-2024-21626, runc vulnérabilité, Docker RCE, évasion conteneur, Kubernetes sécurité, container escape, remédiation CVE critique