In de Linux-kernel is een vierde kwetsbaarheid vastgesteld in de afgelopen twee weken (CVE-2026-46300), waarmee een niet-bevoorrechte gebruiker rootrechten kan verkrijgen door data in de paginacache te overschrijven. Deze kwetsbaarheid heeft de codenaam Fragnesia of Copy Fail 3.0 gekregen. De aard van de kwetsbaarheid is vergelijkbaar met eerder onthulde kwetsbaarheden zoals Copy Fail en Dirty Frag. Zoals bij Dirty Frag is de nieuwe kwetsbaarheid aanwezig in de xfrm-ESP-subsystemen, maar is deze veroorzaakt door een andere fout en vereist deze een aparte patch. Er is een werkende exploit beschikbaar.
De kwetsbaarheid manifesteert zich in Linux-kernels die zijn uitgebracht na 5 mei, als gevolg van onbedoelde activatie door de patch voor de kwetsbaarheid Dirty Frag. Voor het verhelpen van de Fragnesia-kwetsbaarheid is een patch voor de Linux-kernel voorgesteld. Analyse van deze patch toonde aan dat deze niet voldoende was, waarna een tweede versie van de patch is ontwikkeld.
De kwetsbaarheid is aanwezig in het xfrm-subsystem in de implementatie van het ESP (Encapsulating Security Payload) protocol mechanisme in TCP (ESP-in-TCP, RFC 8229), dat wordt gebruikt voor het tunnelend IPsec-verkeer boven TCP. Om overtollige buffering te vermijden, werden bewerkingen met behulp van het AES-GCM-algoritme ter plaatse uitgevoerd door een XOR-bewerking op de data in de paginacache toe te passen. Door een logische fout ontstonden er voorwaarden waardoor 1 byte in de paginacache kon worden overschreven op een gekozen offset. Door de bewerkingen te herhalen, kan de inhoud van elk bestand in de paginacache byte voor byte worden gewijzigd.
Alle leesoperaties uit bestanden geven in de eerste instantie de inhoud uit de paginacache terug. In het geval van gegevenswijzigingen in de paginacache, zullen leesoperaties uit bestanden resulteren in de terugkeer van niet werkelijk op de opslag opgeslagen informatie, maar in gewijzigde data. Het exploiteren van de kwetsbaarheid komt neer op het wijzigen van de paginacache voor een uitvoerbaar bestand met de suid root-vlag, dat eerder is gelezen om het in de paginacache te laten komen. In de door de onderzoekers voorgestelde exploit worden de eerste 192 bytes van het bestand /usr/bin/su in de paginacache overschreven met code om /usr/bin/sh te starten. Een daaropvolgende uitvoering van de 'su'-tool leidt ertoe dat niet het originele uitvoerbare bestand van de opslag in het geheugen wordt geladen, maar een gewijzigde kopie uit de paginacache.
Voor het exploiteren van de Fragnesia-kwetsbaarheid moet het creëren van gebruikers-id-namespace's (user namespace) in het systeem zijn toegestaan. In Ubuntu is deze actie standaard verboden, maar kan worden toegestaan via sysctl 'kernel.apparmor_restrict_unprivileged_userns=0' of AppArmor-profielen. In andere distributies hangt de beschikbaarheid van 'user namespace' voor niet-bevoorrechte gebruikers af van de instelling van sysctl 'kernel.unprivileged_userns_clone' (als het op 0 staat, is het verboden).
Updates met patches voor de Linux-kernel en kernelpakketten in de distributies zijn nog niet gepubliceerd. De status van de kwetsbaarheden in de distributies kan worden beoordeeld op deze pagina's: Debian, Ubuntu, SUSE/openSUSE, RHEL, Gentoo, Arch, Fedora. Als tijdelijke beschermingsmaatregel kunnen de kernelmodules esp4 en esp6 worden geblokkeerd:
sh -c 'printf 'install esp4 /bin/false\ninstall esp6 /bin/false\n' > /etc/modprobe.d/dirtyfrag.conf; rmmod esp4 esp6 2>/dev/null; true'
Bron: opennet.ru
