Linux - CVE-2026-31431
Date de publication :
Il s’agit d’une vulnérabilité dans l’interface algif_aead du noyau Linux qui traite des opérations AEAD via des sockets AF_ALG.
Linux kernel est un noyau de système d’exploitation libre utilisé par de nombreuses distributions Linux pour des environnements serveurs, postes de travail et systèmes embarqués.
Le traitement en mode in-place fait partager les mêmes structures de mémoire entre les buffers source et destination, ce qui place des pages du page cache de fichiers lisibles dans une liste de destination inscriptible. L’algorithme authencesn(hmac(sha256),cbc(aes)) effectue alors une écriture de 4 octets contrôlés au-delà de la zone de sortie déclarée, directement dans ces pages du page cache. Cette écriture ciblée permet la corruption en mémoire de fichiers lisibles tels que des binaires setuid ou des fichiers de configuration sensibles, sans modification sur disque, ce qui contourne les contrôles d’intégrité classiques.
Elle permet à un utilisateur local non privilégié d’obtenir des droits root de manière déterministe en modifiant la vue en mémoire de fichiers critiques comme /etc/passwd ou /usr/bin/su.
Informations
La faille est activement exploitée : Non
Un correctif existe : Oui
Une mesure de contournement existe : Oui
Élévation de privilèges
Exploitation
CWE-669 : Incorrect Resource Transfer Between Spheres
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 : En attente d’information
Preuve de concept
Une preuve de concept est disponible en sources ouvertes.
Systèmes ou composants affectés
Linux kernel versions 4.14 et ultérieures, versions antérieures à 6.18.22, 6.19.12 et 7.0 (y compris les branches en fin de vie intégrant le commit 72548b093ee3).
Contournement provisoire
Solutions ou recommandations
• Linux kernel branche 6.19 versions 6.19.12 et supérieures
• Linux kernel branche 7.0 versions 7.0 et supérieures