In de Linux-kernel is een nieuwe kwetsbaarheid voor lokaal privilegeverhoging onthuld, genaamd Fragnesia en identificatienummer CVE-2026-46300. Het probleem behoort tot dezelfde klasse aanvallen op de page cache als de onlangs besproken Copy Fail en Dirty Frag, maar is geen herpublicatie van een oude fout: het betreft een afzonderlijk defect in de code XFRM ESP-in-TCP.
De kwetsbaarheid werd ontdekt door onderzoeker William Bowling van het team V12 Security. Volgens de gepubliceerde beschrijving stelt Fragnesia een niet-privilegeerde lokale gebruiker in staat om de inhoud van alleen-lezen bestanden in de page cache aan te passen, waardoor deze code kan uitvoeren met root-rechten. In tegenstelling tot veel oude LPE-exploits vereist de aanval geen raceomstandigheden en wordt deze door onderzoekers beschreven als deterministisch.
Technisch is het probleem gerelateerd aan het feit dat bij het samenvoegen van netwerkbuffers de kernel het kenmerk kan verliezen dat een datafragment 'gedeeld' is en gerelateerd is aan een externe pagina in het geheugen, inclusief de page cache. In de voorgestelde patch wordt dit beschreven als een fout in skb_try_coalesce(): bij het verplaatsen van paged fragments van de ene sk_buff naar de andere werd de vlag SKBFL_SHARED_FRAG niet behouden. Als gevolg hiervan kon de latere ESP-code de buffer ten onrechte als veilig voor wijziging beschouwen.
Het praktische effect is dat gegevens die eerder in de TCP-queue van een bestand werden geplaatst, na het overschakelen van de socket naar de espintcp-modus door de kernel als ESP-ciphertext konden worden behandeld. Bij het ontsleutelen van AES-GCM werden de bytes rechtstreeks in de page cache-pagina die aan het bestand is gekoppeld, gewijzigd. Dit verandert het bestand op de schijf niet, maar verandert de weergave ervan in het geheugen totdat de pagina uit de cache wordt verdrongen.
In de gepubliceerde aanvaldemonstratie werd als doel het bestand /usr/bin/su gebruikt: de exploit wijzigde de eerste bytes van het binaire bestand in de page cache en startte vervolgens een gewijzigde kopie in het geheugen, waardoor een shell met root-rechten werd verkregen. Het originele bestand op de schijf bleef hierbij ongewijzigd, wat het probleem bijzonder moeilijk te diagnosticeren maakt: sporen van exploitatie kunnen verdwijnen na het wissen van de page cache of een herstart.
Fragnesia verscheen minder dan een week na Dirty Frag. In V12 wordt benadrukt dat dit een aparte kwetsbaarheid is in dezelfde aanvalsvector — ESP/XFRM — en geen herbenoeming van een reeds verholpen kwetsbaarheid. Phoronix merkt ook op dat er op het moment van publicatie een proof-of-concept beschikbaar was, en de patch bestond uit een kleine correctie in net/core/skbuff.c, die nog niet meteen in de hoofdversies van de kernel terechtkwam.
Canonical heeft CVE-2026-46300 hoog prioriteit toegewezen aan Ubuntu, met als reden 'triviale lokale privilege-escalatie'. Op de Ubuntu Security-pagina voor de getroffen kernels stond bij de update van 13 mei de status 'Needs evaluation', en in de opmerking wordt specifiek vermeld dat het probleem ook in de ESP-module van de kernel zit en tijdelijk kan worden verlicht op dezelfde manier als Dirty Frag.
Debian Security Tracker markeerde op het moment van controle kwetsbare kernels in de takken bullseye, bookworm, trixie, forky en sid; voor het pakket linux in unstable was nog geen vaste versie opgegeven.
De tijdelijke beschermingsmaatregel blijft dezelfde als voor Dirty Frag: haal de modulegeladen momenten esp4, esp6 en rxrpc uit, als ze niet nodig zijn voor het systeem. Dit kan IPsec-tunnels verstoren op knooppunten waar kernel ESP, strongSwan, Libreswan of soortgelijke configuraties worden gebruikt, dus op VPN-gateways moet deze maatregel alleen worden toegepast na een evaluatie van de gevolgen.
Voorbeeld van tijdelijke verlichting voor beheerders:
sudo sh -c "printf 'install esp4 /bin/falseninstall esp6 /bin/falseninstall rxrpc /bin/falsen' > /etc/modprobe.d/dirtyfrag.conf" sudo rmmod esp4 esp6 rxrpc 2>/dev/null || true
Als er enige verdenking is dat het systeem al zou kunnen zijn aangevallen, is alleen het blokkeren van de modules niet genoeg: aangezien de publieke demonstratie het uitvoerbare bestand precies in de page cache wijzigt, raden beheerders aan de pagina-cache te leegmaken of het systeem opnieuw op te starten na het toepassen van beschermingsmaatregelen. CloudLinux geeft expliciet aan dat na exploitatie /usr/bin/su mogelijk ongewijzigd in het geheugen blijft tot de overeenkomstige pagina's worden vervangen.
Om de tijdelijke regel na het installeren van de gecorrigeerde kernel te verwijderen, kan het gemaakte bestand worden verwijderd:
sudo rm /etc/modprobe.d/dirtyfrag.conf
De belangrijkste aanbeveling blijft standaard: installeer de gecorrigeerde kernel van je distributie en herstart het systeem. Voor de update vormen multi-user servers, CI-runners, shared hosting, container build-farms en elke machine waar niet-privilegeerde of gedeeltelijk vertrouwde gebruikers lokaal code kunnen uitvoeren het grootste risico.
Bron: linux.org.ru
