Docker - CVE-2026-34040

Date de publication :

Il s'agit d'une vulnérabilité dans le mécanisme de transmission des corps de requête HTTP entre le daemon Docker et les plugins d'autorisation (AuthZ).

Docker Engine est un moteur d'exécution de conteneurs open source. Il constitue le cœur de la plateforme Docker et permet de créer, distribuer et exécuter des conteneurs applicatifs isolés sur des systèmes Linux et Windows. Il est utilisé massivement dans les environnements DevOps, les infrastructures cloud et les pipelines de déploiement d'applications.

Lorsqu'une requête API dépasse le seuil de 1 Mo, le daemon transmet la requête au plugin sans inclure le corps de la requête. Le plugin, ne voyant aucun contenu à évaluer, autorise alors la requête qu'il aurait normalement refusée. 

Il s'agit d'un correctif de la CVE-2024-41110.

Elle permet de contourner intégralement les politiques de contrôle d'accès des plugins AuthZ et d'obtenir un accès root sur l'hôte via la création d'un conteneur privilégié.

Informations

La faille est activement exploitée : Non

Un correctif existe : Oui

Une mesure de contournement existe : Oui

Risques

Élévation de privilèges

Exploitation

La vulnérabilité exploitée est du type
CWE-288 : Authentication Bypass Using an Alternate Path or Channel

Détails sur l'exploitation
•   Vecteur d'attaque : Local
•   Complexité de l'attaque : Faible
•   Privilèges nécessaires pour réaliser l'attaque : Authentification utilisateur simple
•   Interaction d'un utilisateur ayant accès au produit est-elle nécessaire : Non
•   L'exploitation de la faille permet d'obtenir des droits privilégiés : Oui

Preuve de concept
Une preuve de concept est disponible en sources ouvertes.

Systèmes ou composants affectés

•   Moby / Docker Engine toutes versions antérieures à 29.3.1 (y compris les versions antérieures à 19.x, en exploitation depuis Docker Engine 1.10)
•   Moby v2 versions antérieures à 2.0.0-beta.8

Contournement provisoire

•   Ne pas utiliser de plugins AuthZ s'appuyant sur l'inspection du corps de requête pour prendre des décisions de contrôle d'accès.
•   Restreindre l'accès à l'API Docker aux seules parties de confiance en appliquant le principe du moindre privilège.
•   Exécuter Docker en mode rootless afin de limiter le rayon d'action en cas de compromission.

Solutions ou recommandations

•   Docker Engine 29.3.1 et supérieures.
•   Moby v2 version 2.0.0-beta.8 et supérieures.