Beveiligingsonderzoekers van Google hebben een kwetsbaarheid in de Linux-kernel (CVE-2025-38236) ontdekt die het mogelijk maakt om systeemprivileges te verhogen. Deze kwetsbaarheid biedt onder andere de mogelijkheid om het sandbox-isolatiemechanisme dat in Google Chrome wordt gebruikt te omzeilen en code op kernel-niveau uit te voeren bij het uitvoeren van code in de context van een geĆÆsoleerd Chrome-renderproces (bijvoorbeeld bij het misbruiken van een andere kwetsbaarheid in Chrome). Het probleem doet zich voor vanaf kernel 6.9 en is verholpen in de updates van kernel 6.1.143, 6.6.96, 6.12.36 en 6.15.5. Een exploit-prototype is beschikbaar om te downloaden.
De kwetsbaarheid wordt veroorzaakt door een fout in de implementatie van de MSG_OOB-vlag, die kan worden ingesteld voor AF_UNIX-sockets. De MSG_OOB (āout-of-bandā) vlag maakt het mogelijk om een extra byte aan de verzonden gegevens toe te voegen, die de ontvanger kan lezen voordat de overige gegevens zijn ontvangen. Deze vlag werd toegevoegd in kernel 5.15 op verzoek van Oracle en werd vorig jaar voorgesteld om als verouderd te worden geclassificeerd, gezien deze niet breed werd toegepast.
In de sandbox-omgeving van Chrome zijn operaties met UNIX-sockets en systeemaanroepen send()/recv() toegestaan, waarbij de MSG_OOB-vlag samen met andere opties was toegestaan en niet apart was gefilterd. Een fout in de implementatie van MSG_OOB stelde een gebruik-na-vrijgave (use-after-free) mogelijk na het uitvoeren van een bepaalde reeks systeemaanroepen: char dummy; int socks[2]; socketpair(AF_UNIX, SOCK_STREAM, 0, socks); send(socks[1], "A", 1, MSG_OOB); recv(socks[0], &dummy, 1, MSG_OOB); send(socks[1], "A", 1, MSG_OOB); recv(socks[0], &dummy, 1, MSG_OOB); send(socks[1], "A", 1, MSG_OOB); recv(socks[0], &dummy, 1, 0); recv(socks[0], &dummy, 1, MSG_OOB);
Bron: opennet.ru
