Zranitelnost v LibJS, která umožňuje provést kód při otevření stránky v prohlížeči Ladybird

V JavaScriptovém enginu LibJS, který se používá v webovém prohlížeči Ladybird, byla zjištěna zranitelnost (CVE-2025-47154), která umožňuje vykonání vlastního kódu v systému při zpracování speciálně upraveného JavaScriptového kódu. Zranitelnost je způsobena uvolněním paměti na vektoru m_argument_values_buffer, na který zůstal ukazatel ve struktuře arguments_list, což vedlo k přístupu do již uvolněné oblasti paměti. K dispozici je funkční prototyp exploit.

Vědec, který problém odhalil, provedl fuzzingové testování LibJS, během něhož bylo zaznamenáno 10 havarijních ukončení. Analýza jednoho z pádů ukázala, že problém může být zneužit při zpracování JavaScriptového kódu. Zranitelnost umožňovala číst a zapisovat do libovolných oblastí paměti procesu. Vykonání kódu bylo realizováno v exploitě výměnou ukazatele návratu z funkce vykreslování. Pomocí návratově orientovaného programování (ROP — Return-Oriented Programming, exploit je tvořen z již existujících útržků strojových instrukcí končících instrukcí pro návrat řízení) byla vytvořena řetězce pro vykonání systémového volání execve pro spuštění externí aplikace.

Prohlížeč Ladybird vyvíjí Andreas Kling, který kdysi pracoval ve společnosti Nokia a zabýval se vývojem KHTML, a poté v Apple byl jedním z vývojářů Safari. V současné fázi vývoje je Ladybird v předalfa verzi, vhodné pouze pro použití vývojáři. Původně byl projekt vytvořen jako aplikace pro operační systém SerenityOS, ale v létě loňského roku byl vyčleněn jako samostatný projekt a obdržel dar ve výši 1 milionu dolarů. Prohlížeč je napsán v jazyce C++ (bylo rozhodnuto přejít na jazyk Swift) a je distribuován pod licencí BSD. Projektem jsou vyvíjeny vlastní engine LibWeb, JavaScriptový interpret LibJS a související knihovny.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster