SÀkerhetsforskare frÄn Google har upptÀckt en sÄrbarhet i Linux-kÀrnan (CVE-2025-38236) som gör det möjligt att höja sina privilegier i systemet. Bland annat ger sÄrbarheten möjlighet att kringgÄ sandbox-isoleringen som anvÀnds i Google Chrome, vilket kan leda till exekvering av kod pÄ kÀrnnivÄ nÀr kod körs i kontexten av en isolerad renderingsprocess i Chrome (till exempel vid utnyttjande av en annan sÄrbarhet i Chrome). Problemet uppstÄr frÄn och med Linux-kÀrnan 6.9 och har ÄtgÀrdats i uppdateringar av Linux-kÀrnan 6.1.143, 6.6.96, 6.12.36 och 6.15.5. En prototyp av exploiten finns tillgÀnglig för nedladdning.
SÄrbarheten orsakas av ett fel i implementeringen av flaggan MSG_OOB, som kan sÀttas för AF_UNIX-sockets. Flaggan MSG_OOB ('out-of-band') gör det möjligt att bifoga en extra byte till de skickade data, som mottagaren kan lÀsa innan övriga data tas emot. Denna flagga lades till i Linux-kÀrnan 5.15 pÄ begÀran av Oracle och föreslogs förra Äret att klassas som förÄldrad, eftersom den inte fÄtt nÄgon bred spridning.
I implementeringen av sandbox-miljön i Chrome tillÄts operationer med UNIX-sockets och systemanropen send()/recv(), dÀr flaggan MSG_OOB tillÀts tillsammans med andra alternativ och inte sÀrskilt filtrerades. Felet i implementeringen av MSG_OOB gjorde att det var möjligt att fÄ Ätkomst till minne efter att det frigjorts (use-after-free) efter att en viss sekvens av systemanrop utförts: 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);
KĂ€lla: opennet.ru
