En bref

  • CVE-2026-46242 dit « Bad Epoll » : race condition use-after-free dans le sous-système epoll du noyau Linux, permettant à un utilisateur non privilégié d'obtenir les droits root
  • Systèmes affectés : distributions Linux basées sur le noyau 6.4 ou supérieur, Android inclus (confirmé sur Pixel 10 avec kernel 6.6)
  • PoC public disponible sur GitHub — appliquer les mises à jour noyau disponibles dans votre distribution et redémarrer les systèmes

Les faits

Le chercheur en sécurité Jaeyoung Chung a découvert et rendu publique une vulnérabilité d'escalade de privilèges locaux dans le noyau Linux, identifiée sous le nom CVE-2026-46242 et rapidement surnommée « Bad Epoll » en référence au sous-système affecté. La faille permet à n'importe quel utilisateur sans privilèges — y compris un compte créé avec des droits minimaux — d'obtenir un accès root complet à la machine. Le chercheur a démontré l'exploit dans le cadre du programme kernelCTF de Google, qui récompense les exploits Linux kernel avec une prime pouvant dépasser 71 337 dollars.

La vulnérabilité réside dans epoll, le mécanisme de notification d'événements d'entrée/sortie asynchrones du noyau Linux. Epoll est une fonctionnalité fondamentale utilisée massivement par les serveurs hautes performances, les frameworks web, les bases de données, et pratiquement toute application gérant des connexions réseau concurrentes. C'est l'équivalent Linux de kqueue (BSD) ou IOCP (Windows) — un composant central de l'architecture de performance des systèmes Unix modernes. Sa criticité dans l'écosystème Linux rend toute vulnérabilité dans ce sous-système particulièrement sensible.

La nature précise du bug est une race condition de type use-after-free. Deux chemins d'exécution concurrents dans le noyau tentent de libérer le même objet interne au même moment. L'un libère la mémoire pendant que l'autre écrit encore dedans. Cette collision brève mais exploitable permet à un attaquant de corrompre la mémoire du noyau de manière contrôlée, puis d'escalader ses privilèges vers root en remplaçant une structure de données critique du noyau.

La difficulté technique réside dans le timing : la fenêtre d'exploitation ne s'ouvre que pendant six instructions CPU consécutives, ce qui en fait une race condition extrêmement serrée. Malgré cette contrainte temporelle, Jaeyoung Chung a réussi à construire un exploit fiable qui rend l'attaque reproductible en pratique. La technique employée combine deux étapes : d'abord une fuite mémoire (memory leak) permettant de connaître les adresses noyau en contournant le mécanisme KASLR (Kernel Address Space Layout Randomization), puis un enchaînement ROP (Return-Oriented Programming) qui détourne le pointeur d'instruction du noyau pour exécuter du code arbitraire avec les privilèges root.

Le PoC est publiquement disponible sur GitHub sous le dépôt J-jaeyoung/bad-epoll. Sa publication rend la vulnérabilité immédiatement actionnable par des attaquants de niveau intermédiaire, sans nécessiter de développer l'exploit de zéro. Les systèmes non patchés sont donc désormais exposés à une exploitation simplifiée par tout acteur disposant d'un accès local — qu'il s'agisse d'un compte utilisateur standard, d'un shell web obtenu via une autre vulnérabilité applicative, ou d'un conteneur avec isolation insuffisante.

SecurityWeek et The Hacker News ont confirmé que CVE-2026-46242 affecte les distributions Linux basées sur le noyau 6.4 ou supérieur. Concrètement, cela inclut les versions récentes d'Ubuntu (24.04 LTS et dérivées), Fedora, Arch Linux, et les noyaux mainline actualisés d'autres grandes distributions. Les distributions utilisant des noyaux de la branche LTS 6.1 ou antérieures ne sont pas affectées par ce vecteur spécifique. La version exacte à partir de laquelle la régression a été introduite dans epoll a été identifiée par l'analyse forensique du commit incriminé dans l'historique du noyau upstream.

Security Affairs a confirmé l'impact sur Android : les appareils exécutant des noyaux 6.4+ sont vulnérables, y compris le Google Pixel 10 qui embarque un noyau 6.6. Cette extension à Android élargit considérablement le périmètre d'exposition potentielle. Sur mobile, l'exploitation impose cependant des contraintes supplémentaires par rapport à un serveur Linux standard : nécessité d'un accès physique ou d'une application malveillante installée, modèle de sandbox Android qui complique l'exécution de code arbitraire, et mécanismes de sécurité spécifiques à Android (SELinux enforcing, seccomp-bpf par défaut).

Au moment de la rédaction de cet article, les principaux éditeurs de distributions Linux ont publié ou sont en cours de publication des correctifs noyau. Canonical (Ubuntu), les mainteneurs du noyau upstream, et les équipes de sécurité des principales distributions ont été notifiés selon la procédure de divulgation responsable standard (coordinated vulnerability disclosure). La synchronisation entre la disponibilité des correctifs et leur déploiement effectif en production reste l'enjeu principal : de nombreux systèmes Linux en production ne sont pas rebootés fréquemment, ce qui retarde mécaniquement l'activation des patches noyau même après leur installation.

Impact et exposition

CVE-2026-46242 est une vulnérabilité d'escalade de privilèges locale (LPE, Local Privilege Escalation). Elle ne permet pas, à elle seule, de compromettre un système depuis Internet sans accès préalable. Cependant, dans une kill chain d'attaque moderne, une LPE vers root constitue une étape décisive : couplée à une RCE initiale obtenue via une vulnérabilité applicative, elle permet à un attaquant d'escalader immédiatement vers root et d'installer un rootkit, de contourner les mécanismes EDR, ou d'extraire les identifiants et clés stockés en mémoire.

Dans les environnements multi-tenant (serveurs mutualisés, plateformes de conteneurisation sans isolation matérielle), un utilisateur disposant d'un accès shell légitime peut potentiellement sortir de son espace d'isolation pour compromettre l'hôte entier. C'est particulièrement préoccupant pour les hébergeurs, les fournisseurs de PaaS (Platform as a Service), et les entreprises utilisant des solutions de conteneurisation sans isolation matérielle — par opposition aux machines virtuelles complètes qui offrent une isolation noyau effective.

Recommandations

  • Mise à jour noyau en priorité : appliquer immédiatement les patches noyau disponibles dans votre distribution (apt upgrade / dnf upgrade selon la distribution) et redémarrer les systèmes pour activer le nouveau noyau
  • Identifier les systèmes exposés : recenser tous les serveurs Linux en production sous kernel 6.4+ via la commande uname -r et prioriser les systèmes accessibles à des utilisateurs non privilégiés ou exposant un shell applicatif
  • Renforcer l'isolation des conteneurs : activer seccomp, AppArmor ou SELinux, limiter les syscalls disponibles aux conteneurs, et envisager l'isolation matérielle (VMs) pour les workloads les plus sensibles
  • Monitorer les comportements suspects : surveiller les appels système epoll_ctl et epoll_wait inhabituels dans vos logs et solutions EDR Linux
  • Systèmes Android : appliquer les mises à jour de sécurité système dès leur disponibilité sur les appareils mobiles professionnels

Alerte — PoC public disponible

Le code d'exploitation de CVE-2026-46242 est public sur GitHub. Tout attaquant ayant obtenu un accès utilisateur non privilégié sur un système Linux avec kernel 6.4+ peut utiliser ce PoC pour devenir root. Appliquez les patches noyau et redémarrez vos systèmes sans attendre.

Comment vérifier si mon serveur Linux est affecté par CVE-2026-46242 ?

Exécutez la commande uname -r pour connaître votre version de noyau. Si le résultat indique une version 6.4 ou supérieure (par exemple 6.5.0, 6.6.22, 6.8.x…), votre système est potentiellement affecté. Vérifiez ensuite si un patch est disponible dans votre distribution : sur Ubuntu et Debian, utilisez apt-cache policy linux-image-$(uname -r) pour voir si une version patchée est disponible dans les dépôts. Après application de la mise à jour noyau, un redémarrage est indispensable pour charger le noyau corrigé en mémoire — uname -r doit afficher la version patchée après reboot. Sur les systèmes de production où le redémarrage est contraignant, explorez les solutions de live patching (ksplice, livepatch) disponibles pour votre distribution.

Votre infrastructure est-elle exposée ?

Ayi NEDJIMI réalise des audits de sécurité ciblés pour identifier et corriger vos vulnérabilités avant qu'elles ne soient exploitées.

Demander un audit