Bad Epoll : la faille qui donne un accès root sur Linux et Android

Une faille du noyau Linux, baptisée Bad Epoll (CVE-2026-46242), permet à un simple utilisateur local, sans le moindre privilège, d’obtenir un accès root. Elle touche les postes de travail, les serveurs et même Android. Voici ce que l’on sait sur cette vulnérabilité et comment s’en protéger.

Une fenêtre de six instructions pour un accès root

Epoll est un mécanisme du noyau Linux qui permet à un programme de surveiller plusieurs descripteurs de fichiers ou connexions réseau simultanément. Désactiver Epoll pour se prémunir de cette vulnérabilité n’est pas une solution viable, car cela pourrait perturber de nombreux services, y compris les navigateurs web.

Bad Epoll est un bug de type use-after-free, provoqué par une race condition. Lors du démontage d’un objet epoll, deux opérations du noyau se chevauchent : l’une libère une structure mémoire pendant que l’autre l’utilise encore. Cela entraîne une écriture dans une zone mémoire déjà libérée, permettant une prise de contrôle accrue par l’exploitant.

La fenêtre où les deux opérations se percutent ne dure qu’environ six instructions machine. L’exploit de Jaeyoung Chung élargit cette fenêtre artificiellement, permettant une réussite d’environ 99 % sur les machines testées.

Cette découverte a été soumise comme 0-day au programme kernelCTF de Google, avec des récompenses commençant à 71 337 $. En plus de Linux, cette vulnérabilité touche également Android, ce qui est rare pour les failles récentes dans le noyau Linux.

Précisions sur la vulnérabilité

Chung a précisé que cette faille peut être déclenchée depuis le processus de rendu isolé de Chrome, qui bloque de nombreuses autres failles noyau. En théorie, un attaquant ayant déjà accès à ce renderer pourrait utiliser Bad Epoll pour échapper au bac à sable. À ce jour, aucune chaîne complète de ce type n’a été publiée.

L’IA Mythos et la faille

Un unique commit de 2023 a introduit deux race conditions dans le code epoll. La première a été identifiée par l’IA Mythos et associée à la référence CVE-2026-43074, avec un correctif publié plus tôt en 2026. Cependant, Anthropic, la société derrière Mythos, n’a jamais confirmé cette association.

Chung avance deux hypothèses sur pourquoi Mythos a manqué Bad Epoll :

  • Une fenêtre de tir minuscule : avec six instructions, il est difficile de prévoir l’enchaînement des threads.
  • Peu de traces à l’exécution : après la correction de CVE-2026-43074, le use-after-free de Bad Epoll ne déclenche généralement pas KASAN, le principal détecteur d’erreurs mémoire du noyau.

Solution contre Bad Epoll : un patch de sécurité

Pour se protéger de Bad Epoll, il est crucial de ne pas désactiver Epoll. La vulnérabilité concerne les distributions et appareils exécutant un noyau Linux basé sur la version 6.4 ou supérieure, tant que le correctif n’est pas appliqué. Les noyaux basés sur la version 6.1 ne sont pas affectés.

Il est recommandé d’utiliser une version du noyau Linux où le commit a6dc643c6931 a été appliqué. Les utilisateurs doivent consulter le support de leur distribution pour vérifier l’application du correctif.

Aucune exploitation de cette faille n’a été observée dans la nature. Elle ne figure pas sur la liste CISA des vulnérabilités activement exploitées, et le seul code fonctionnel connu reste le PoC soumis à kernelCTF.

Pour plus d’informations, consultez le writeup public de Jaeyoung Chung.

Source : IT-Connect

Source
Leave a Comment

Comments

No comments yet. Why don’t you start the discussion?

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *