Libcue raamatukogus, mida kasutatakse heliradade metainfo tõlgendamiseks, avastati haavatavus (CVE-2023-43641), mis võimaldab koodi täitmist spetsiaalselt vormistatud cue-failide töötlemisel. Raamatukogu on kasutuses mitmetes meediapleierites ja heliredaktorites, sealhulgas Audacious, ning seda saab ära kasutada süsteemi kompromiteerimiseks, kui avada seal kontrollimata andmeid.
Lisaks kasutatakse libcue raamatukogu otsingumootoris tracker-miners, mida rakendatakse GNOME kasutajakeskkonnas. Kuna tracker-miners indekseerib automaatselt uusi meediafaile kodukataloogis, piisab GNOME süsteemide ründamiseks ja koodi täitmise korraldamiseks kasutaja poolt spetsiaalselt vormistatud faili laadi katalooge ~/Downloads, ~/Music või ~/Videos, ilma selle avamiseta (näiteks mõnel juhul piisab brauseris lingile klikkimisest).
Haavatavuse avastanud teadlased on valmistanud tööaluse eksploitatsiooni ja demonstreerinud selle töövõimet Ubuntu 23.04 ja Fedora 38 põhistes keskkondades. Eksploitatsiooni kood avaldatakse hiljem, et anda kasutajatele aega haavatavuse parandusteadete installimiseks. Eksploit on stabiilne, kuid vajab kohandamist iga jaotise jaoks.
Haavatavus on põhjustatud täisarvude ületäitumisest INDEX parameetri süntaksi tõlgendamise koodis ja ilmneb siis, kui antakse selle parameetri jaoks liiga suured arvväärtused, mis ei mahuks 'int' tüüpi. Stringi numbriks muutmiseks kasutatakse funktsiooni atoi, näiteks kui sisestatakse number 4294567296, muudetakse see -400000-ks. Haavatavus tuleneb saamatusest kontrollida saadud väärtust, et see võib olla negatiivne. Seetõttu toimub koodis pärast atoi muutmist tehema 'track->index[i] = ind', kus 'i' võib omistada negatiivse arvu, et kirjutada mälupinda väljaspool puhverit väärtusega 'ind', mis laetakse samuti töödeldud failist.
Enamikus GNOME jaotistes aktiveeritakse tracker-miners vaikimisi ja laaditakse kui sõltuvus failihaldurist Nautilus (GNOME Files). Tracker-minersi keelamiseks praegusele kasutajale saab kasutada järgmisi käske: systemctl —user mask tracker-store.service tracker-miner-fs.service tracker-miner-rss.service tracker-extract.service tracker-miner-apps.service tracker-writeback.service tracker reset —hard
Allikas: opennet.ru
