GRO Frag: Nieuwe LPE-kwetsbaarheid in de netwerkstack van Linux stelt gebruikers in staat root-toegang te krijgen

Er is een exploit verschenen voor GRO Frag — een lokale kwetsbaarheid voor privilegeverhoging in de Linux-kernel, gerelateerd aan de verwerking van GRO en zero-copy skb in de netstack. De exacte datum van de eerste ontdekking in publieke materialen is niet vermeld. Aan de open sporen kunnen twee data worden vastgesteld: de patch werd besproken op de mailinglijst netdev 20 mei 2026, waar deze kwetsbaarheid al werd beschreven als geschikt voor het overschrijven van de page cache, en de publieke PoC werd gepost op GitHub Gist 22 mei 2026.

Als tijdelijke maatregel tot het installeren van de gepatchte kernel kan de aanvalsvector beperkt worden via sysctl: kernel.io_uring_disabled=1. Deze modus verhindert het aanmaken van nieuwe io_uring instanties door niet-privilegeerde processen, tenzij ze zijn opgenomen in de toegestane groep io_uring_group; bij een groepswaarde van -1 behouden alleen processen met CAP_SYS_ADMIN toegang. Dit is een mitigatie en geen volledige oplossing voor de kwetsbaarheid.

Het probleem bevindt zich in de functie skb_gro_receive(): bij het combineren van pakketten met GRO kon de kernel fragmenten van zero-copy skb naar een andere skb verplaatsen zonder de status van zero-copy en de SKBFL_MANAGED_FRAG_REFS flag correct te controleren. Als gevolg hiervan konden geheugensegmenten, waar de oorspronkelijke skb geen aparte referenties voor had, onjuist worden vrijgegeven, wat leidde tot use-after-free. In de patch staat expliciet dat deze situatie kan leiden tot UAF, en dat de gevonden variant geschikt was voor het overschrijven van de page cache.

De gepubliceerde PoC beschrijft de kwetsbaarheid als LPE via GRO managed-frag UAF met behulp van io_uring SEND_ZC en de virtuele netwerkinterface veth. In de codecommentaar staat dat de versies Linux 6.0+, exploitatie is mogelijk door niet-privilegeerde gebruikers, maar vereist beschikbare io_uring; als oplossing is genoemd commit 4db79a322db8 met de wijziging ‘net: gro: merge zcopy skbs niet’.


Wat de gevolgen betreft, valt GRO Frag in dezelfde gevaarlijke klasse van fouten als Copy Fail en Dirty Frag: een aanvaller met lokale niet-privilegeerde toegang kan gegevens in de page cache wijzigen, dat wil zeggen in het geheugen, zonder dat het bestand op schijf noodzakelijkerwijs moet worden aangepast. Dergelijke fouten zijn bijzonder kwetsbaar omdat ze de grens aantasten tussen ‘alleen-lezen’ bestanden en de feitelijke inhoud die de kernel en processen bij daaropvolgende toegang zien. Elastic beschreef eerder deze klasse als een praktische weg om root te verkrijgen via page-cache corruptie.

Op het moment van publicatie was er nog geen afzonderlijke CVE-identificatie toegewezen aan GRO Frag, volgens beschikbare meldingen. Als tijdelijke maatregel wordt beheerders aangeraden om de kernel bij te werken naar een versie met een patch, evenals algemene risicobeperkingen voor dergelijke LPE: het beperken van niet-geprivilegieerde user namespaces waar mogelijk, het controleren van het gebruik van io_uring en het monitoren van verdachte ketens gerelateerd aan lokale privilege-escalatie. Voor verwante Copy Fail/DirtyFrag-aanvallen raadt Elastic ook aan om patching te combineren met detectie van low-level primitieve exploitatie van de kwetsbaarheid.

Low-level exploit primitieve zijn niet de 'kant-en-klare hack', maar de basis technische technieken waaruit een exploit is opgebouwd.

In de context van GRO Frag kan dit betekenen dat het niet gaat om de detectie van het feit dat 'de gebruiker root is geworden', maar om een poging om afzonderlijke verdachte acties op te merken die de exploit gebruikt op weg naar privilege-escalatie.

Bron: linux.org.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster