Une quatrième vulnérabilité a été identifiée dans le noyau Linux au cours des deux dernières semaines (CVE-2026-46300), permettant à un utilisateur non privilégié d'obtenir des droits root en écrasant des données dans le cache de pages. Cette vulnérabilité a reçu le nom de code Fragnesia ou Copy Fail 3.0. La nature de cette vulnérabilité est similaire à celles précédemment révélées, à savoir Copy Fail et Dirty Frag. Comme pour Dirty Frag, cette nouvelle vulnérabilité est présente dans le sous-système xfrm-ESP, mais est causée par une autre erreur et nécessite un correctif séparé. Un exploit fonctionnel est disponible.
La vulnérabilité se manifeste dans les noyaux Linux publiés après le 5 mai, à la suite de l'activation accidentelle du correctif de la vulnérabilité Dirty Frag. Un correctif a été proposé pour remédier à la vulnérabilité Fragnesia pour le noyau Linux. L'analyse de ce correctif a montré qu'il était insuffisant, ce qui a conduit à la préparation d'une deuxième version du patch.
La vulnérabilité est présente dans le sous-système xfrm dans l'implémentation du mécanisme d'encapsulation du protocole ESP (Encapsulating Security Payload) dans TCP (ESP-in-TCP, RFC 8229), utilisée pour le tunnelage du trafic IPsec au-dessus de TCP. Pour éviter une mise en tampon excessive, les opérations utilisant l'algorithme AES-GCM étaient effectuées sur place en exécutant une opération XOR sur les données dans le cache de pages. En raison d'une erreur logique, des conditions ont été créées permettant de réécrire 1 octet dans le cache de pages à un décalage choisi. En répétant ces opérations, il est possible de modifier, octet par octet, le contenu de n'importe quel fichier dans le cache de pages.
Toutes les opérations de lecture à partir de fichiers retournent d'abord le contenu provenant du cache de pages. En cas de modification des données dans le cache de pages, les opérations de lecture à partir du fichier renverront non pas les informations réellement stockées sur le support, mais des données falsifiées. L'exploitation de la vulnérabilité consiste à modifier le cache de pages pour un fichier exécutable avec le drapeau suid root, préalablement lu pour être mis dans le cache de pages. Dans l'exploit proposé par les chercheurs, les 192 premiers octets du fichier /usr/bin/su dans le cache de pages sont écrasés par du code pour exécuter /usr/bin/sh. Le lancement subséquent de l'utilitaire « su » entraînera le chargement en mémoire non pas du fichier exécutable original depuis le support, mais d'une copie modifiée depuis le cache de pages.
Pour exploiter la vulnérabilité Fragnesia, la création d'espaces de noms d'identifiants utilisateurs (user namespace) doit être autorisée dans le système. Dans Ubuntu, cette opération est par défaut interdite, mais peut être autorisée via sysctl « kernel.apparmor_restrict_unprivileged_userns=0 » ou des profils AppArmor. Dans les autres distributions, l'accès à « user namespace » pour les utilisateurs non privilégiés dépend de la configuration de sysctl « kernel.unprivileged_userns_clone » (s'il est à 0, c'est interdit).
Les mises à jour avec des correctifs pour le noyau Linux et les paquets du noyau dans les distributions n'ont pas encore été publiées. Le statut des corrections de vulnérabilités dans les distributions peut être évalué sur ces pages : Debian, Ubuntu, SUSE/openSUSE, RHEL, Gentoo, Arch, Fedora. Comme solution de contournement, il est possible de bloquer le chargement des modules du noyau esp4 et esp6 :
sh -c « printf 'install esp4 /bin/false\ninstall esp6 /bin/false\n' > /etc/modprobe.d/dirtyfrag.conf; rmmod esp4 esp6 2>/dev/null; true »
Source : opennet.ru
