Une erreur de calcul dans la fragmentation IPv6 du noyau Linux permet d’échapper au conteneur
Red Hat publie un bulletin pour CVE-2026-53362, une écriture hors limites dans la fragmentation IPv6 du noyau Linux qui permet à un utilisateur local d’échapper au conteneur et de contourner SELinux. Appliquez le noyau corrigé, ou désactivez les user namespaces non privilégiés en attendant.
CVE-2026-53362. RHEL 10. CVSS 7,8. Le 14 septembre 2026, Red Hat publie un bulletin de sécurité pour une faille surnommée ipv6_frag_escape : un calcul de longueur incorrect dans la fragmentation IPv6 du noyau Linux aboutit à une écriture hors limites qui permet à un utilisateur local, depuis l’intérieur d’un conteneur, d’échapper au conteneur et de contourner SELinux pour obtenir les droits root sur l’hôte. Pourquoi c’est important : c’est exactement la classe de faille qui transforme un simple pod compromis en compromission complète du nœud.
Ce que fait réellement la faille
La vulnérabilité se situe dans __ip6_append_data(), la fonction qui assemble les fragments IPv6 sortants. Quand la branche d’allocation paginée est empruntée — c’est le cas avec MSG_MORE, une carte réseau qui annonce NETIF_F_SG, ou un fragment de grande taille — le noyau calcule deux longueurs : alloclen = fragheaderlen + transhdrlen et pagedlen = datalen - transhdrlen.
Le bogue tient à une omission précise : sur ce chemin paginé, l’écart de fragmentation (fraggap) n’est pas comptabilisé dans alloclen. Le noyau sous-alloue donc le tampon, puis écrit au-delà de ses limites, directement dans skb_shared_info, la structure qui suit chaque paquet en mémoire.
La conséquence n’est pas anodine. Une écriture hors limites dans skb_shared_info peut être enchaînée vers une lecture et une écriture arbitraires du noyau : l’attaquant écrase ses propres credentials, contourne SELinux — dont l’étiquette de sécurité voyage avec le socket — et s’élève au rang de root sur l’hôte. La classification CWE-130 (Improper Handling of Length Parameter Inconsistency) décrit exactement ce mécanisme.
La chaîne d’exploitation
Pour atteindre le code vulnérable, l’attaquant a besoin de deux choses : la capacité de créer des sockets UDPv6, et celle de créer des network namespaces. C’est cette seconde condition qui fait toute la différence.
Sur RHEL 10, la configuration par défaut accorde aux utilisateurs non privilégiés la création de user namespaces. Or un user namespace suffit à créer un network namespace : c’est le mécanisme que Podman en mode rootless et la plupart des bacs à sable utilisent quotidiennement. Résultat : un processus enfermé dans un conteneur peut monter la pile réseau nécessaire à l’exploitation sans disposer du moindre privilège root de départ.
Le déclencheur lui-même passe par un socket UDPv6 manipulé avec les flags MSG_MORE et MSG_SPLICE_PAGES, comme le documente l’analyse publique. L’enchaînement des deux flags force le noyau sur la branche paginée vulnérable, là où le fraggap n’est pas pris en compte. Le correctif amont, le commit 736b380e28d0 intitulé « ipv6: account for fraggap on the paged allocation path », ajoute précisément cette comptabilisation manquante.
Pourquoi RHEL 10 est le cas d’école
Le bulletin RHSB-2026-009 de Red Hat désigne Red Hat Enterprise Linux 10 comme le produit directement affecté, avec des correctifs déjà publiés pour l’ensemble des versions concernées. OpenShift Container Platform, lui, n’est pas affecté : il repose sur RHEL 9, dont le noyau n’expose pas le même chemin.
Le fait qu’un seul produit majeur soit touché ne doit pas rassurer outre mesure. Tout produit en couche qui consomme le noyau RHEL 10 — images de base, appliances, distributions dérivées — hérite de la faille sans que son nom n’apparaisse dans le bulletin. La consigne de Red Hat est sans ambiguïté : maintenir le noyau sous-jacent à jour, quel que soit le produit de couche.
Cette faille est distincte des vulnérabilités dites « Dirty Frag » traitées dans le bulletin RHSB-2026-003 — CVE-2026-43284 (IPsec ESP) et CVE-2026-46300 (XFRM ESP-in-TCP) — qui affectent d’autres sous-systèmes du même noyau. La coïncidence de trois failles de fragmentation dans le même trimestre souligne une zone du noyau devenue un terrain de chasse privilégié des chercheurs comme des attaquants.
La mitigation, et ce qu’elle casse
En attendant le noyau corrigé, Red Hat propose une parade d’atténuation : désactiver les user namespaces non privilégiés via le paramètre sysctl.
sudo sysctl -w user.max_user_namespaces=0
echo 'user.max_user_namespaces = 0' | sudo tee /etc/sysctl.d/99-disable-userns.conf Pour revenir en arrière :
sudo rm /etc/sysctl.d/99-disable-userns.conf
sudo sysctl -w user.max_user_namespaces=65534 Cette parade réduit la surface d’attaque, mais elle ne corrige pas le bogue sous-jacent. Et elle a un coût réel : elle casse Podman en mode rootless, ainsi que certains bacs à sable applicatifs qui s’appuient sur les user namespaces non privilégiés. C’est la décision qu’un opérateur doit prendre en connaissance de cause : sur un hôte qui n’exécute que des conteneurs rootless, la parade est pire que la faille ; sur un hôte qui n’en exécute pas, elle est gratuite.
Verdict
CVE-2026-53362 est la faille qu’un RSSI ou un SRE doit traiter avant qu’un exploit public ne circule : l’écriture hors limites est documentée, le correctif est identifié, et la classe de failles — échappement de conteneur vers l’hôte — est celle qui fait le plus de dégâts dans un environnement mutualisé.
Si vous exploitez RHEL 10, appliquez le noyau corrigé dès sa disponibilité dans vos dépôts, sans attendre : c’est la seule correction réelle. Si vous exécutez des conteneurs rootless avec Podman, ne désactivez pas les user namespaces à l’aveugle — priorisez la mise à jour du noyau. Si vous exécutez des workloads non conteneurisés sur des hôtes RHEL 10, la parade user.max_user_namespaces=0 est une protection d’attente raisonnable pendant que le patch se propage. Dans tous les cas, vérifiez la position de vos network namespaces : c’est elle qui décide si un attaquant local peut, oui ou non, atteindre le chemin vulnérable.
Références
- Red Hat — RHSB-2026-009 IPv6 Fragmentation Container Escape (CVE-2026-53362)
- Red Hat — CVE-2026-53362
- NVD — CVE-2026-53362
- git.kernel.org — commit 736b380e28d0 « ipv6: account for fraggap on the paged allocation path »
- CISA — Known Exploited Vulnerabilities Catalog
- GridinSoft — CVE-2026-53362: Linux Container Escape Exploited