LibJSi haavatavus, mis võimaldab koodi täitmist Ladybird veebibrauseris lehe avamisel

Ladybird veebibrauseris kasutatavas JavaScript mootoris LibJS tuvastati haavatavus (CVE-2025-47154), mis võimaldab rünnakul oma koodi käivitamist süsteemis, kui töödeldakse spetsiaalselt vormindatud JavaScripti koodi. Haavatavus on põhjustatud m_argument_values_buffer vektori mälu vabastamisest, millele jäi viit selle arguments_list struktuuri, mis tõi kaasa juurdepääsu juba vabastatud mälule. Töötab eksploidi prototüüp on saadaval.

Probleemi avastanud teadlane viis läbi LibJS-i fuzztesti, mille käigus registreeriti 10 ootamatut lõpetamist. Ühe tõrke analüüs näitas, et probleem võib ilmneda JavaScripti koodi töötlemisel. Haavatavus võimaldas lugeda ja kirjutada protsessi meemise mälu juhuslikesse valdkondadesse. Koodi täitmine toimus eksploitatsioonis, asendades tagastuse näitajad joonistamisfunktsioonist. Tagasipööramise programmeerimise (ROP — Return-Oriented Programming, eksploit on koostatud juba olemasolevatest masinainstruktsioonide segmentidest, mis lõpevad tagastamisinstruktsiooniga) abil kujundati ahel süsteemikutsumise execve käivitamiseks välise rakenduse käitamiseks.

Ladybird brauserit arendab Andreas Kling, kes on varem töötanud firmades Nokia, kus ta arendas KHTML, ja hiljem Apple'is, olles üks Safari arendajatest. Praegu on Ladybird arenduse staadium pre-alfaversioon, mis sobib ainult arendajatele. Algusest peale loodi projekt rakenduseks SerenityOS operatsioonisüsteemile, kuid eelmisel suvel eraldati see eraldi projektiks ja sai 1 miljoni dollari suuruse toetuse. Brauser on kirjutatud C++ keeles (olemas on plaan minna üle Swift keelele) ja seda levitatakse BSD litsentsi alusel. Projeekti raames arendatakse oma veebimootorit LibWeb, JavaScripti tõlkijat LibJS ja sellega seotud teeke.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster