A libcue könyvtárban, amelyet a hangnyomok sorrendjének és időtartamának metainformációinak elemzésére használnak, egy sérülékenységet (CVE-2023-43641) fedeztek fel, amely lehetővé teszi a kód végrehajtását különleges formázású cue-fájlok feldolgozása során. A könyvtárat néhány multimédiás lejátszóban és hangszerkesztőben, például az Audaciousban használják, és a rendszer kompromittálására is felhasználható, ha ezekben ellenőrizetlen adatokat nyitnak meg.
Továbbá, a libcue könyvtárat a tracker-miners keresőmotorban is használják, amelyet a GNOME felhasználói környezetben alkalmaznak. Mivel a tracker-miners automatikusan indexeli az új multimédiás fájlokat a kezdőkönyvtárban, a GNOME rendszereknél elegendő, ha a felhasználó egyszerűen egy különlegesen formázott fájlt tölt le a ~\/Downloads, ~\/Music vagy ~\/Videos mappába, anélkül, hogy azt meg kellene nyitnia (például egyes esetekben elegendő a böngészőben a linkre kattintani).
A sérülékenységet felfedező kutatók készítettek egy működő exploitet, és bemutatták a lehetőséget, hogy kihasználják az Ubuntu 23.04 és a Fedora 38 alapú környezeteket. Az exploit kódját később publikálják, hogy időt adjanak a felhasználóknak a sérülékenységet orvosló frissítés telepítésére. Az exploit stabilan működik, de minden disztribúcióhoz alkalmazkodásra van szükség.
A sérülékenység egy egész szám túlfutásából ered a PARAMETER INDEX szintaxisának elemző kódjában, és akkor jelentkezik, amikor ennek a paraméternek túl nagy számértékeket adunk meg, amelyek nem illeszkednek az "int" típusba. A string számra való átalakításához az atoi függvényt használják; például a 4294567296 szám megadása -400000-ra lesz átalakítva. A sérülékenységet az okozza, hogy a kapott értéket nem ellenőrzik arra, hogy az negatív lehet. Ennek következtében az atoi átalakítást követően a "track->index[i] = ind" műveletet végzik, ahol "i" egy negatív számot kaphat, így meg lehet írni a memórián kívüli területet "ind" értékkel, amely szintén a feldolgozott fájlból származik.
A legtöbb GNOME disztribúcióban a tracker-miners komponens alapértelmezés szerint aktiválva van, és a Nautilus (GNOME Files) fájlkezelő kemény függőségeként töltődik be. A tracker-miners letiltásához a jelenlegi felhasználó számára a következő parancsokat lehet használni: 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
Forrás: opennet.ru
