Sigurnosni istraživači iz Googlea identificirali su ranjivost (CVE-2025-38236) u Linux kernelu koja omogućava eskalaciju privilegija. Između ostalog, ranjivost omogućava zaobilaženje mehanizma izolacije sandbox-a koji se koristi u Google Chromeu i postizanje izvršavanja koda na nivou kernela prilikom izvršavanja koda u kontekstu izoliranog procesa renderiranja Chromea (na primjer, prilikom iskorištavanja druge ranjivosti u Chromeu). Problem se pojavljuje počevši od Linux kernela 6.9 i ispravljen je u ažuriranjima Linux kernela 6.1.143, 6.6.96, 6.12.36 i 6.15.5. Prototip ranjivosti dostupan je za preuzimanje.
Ranjivost je uzrokovana greškom u implementaciji zastavice MSG_OOB, koja se može postaviti za AF_UNIX sockete. Zastavica MSG_OOB ("out-of-band") omogućava dodavanje dodatnog bajta podacima koji se šalju, a koji prijemnik može pročitati prije nego što se prime ostali podaci. Ova zastavica je dodana u Linux 5.15 kernel na zahtjev Oraclea i prošle godine je predložena za zastarjelost jer nije bila široko korištena.
Chromeova implementacija sandbox-a je dozvoljavala UNIX socket operacije i sistemske pozive send()/recv() gdje je zastavica MSG_OOB bila dozvoljena zajedno s drugim opcijama i nije bila zasebno filtrirana. Greška u implementaciji MSG_OOB je dozvoljavala da se uslov "use-after-free" pojavi nakon izvršavanja određenog niza sistemskih poziva: 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, MSG_OOB); send(socks[0], "A", 0, MSG_OOB); recv(socks[1], &dummy, XNUMX, XNUMX); recv(čarape[XNUMX], &dummy, XNUMX, MSG_OOB);
izvor: opennet.ru
