I biblioteket libcue, som bruges til at analysere metadata om lydsporernes rækkefølge og varighed, er der opdaget en sårbarhed (CVE-2023-43641), som muliggør udførelse af kode ved behandling af specielt formaterede cue-filer. Biblioteket bruges i nogle multimediaafspillere og lydredigeringsprogrammer, herunder Audacious, og kan udnyttes til at kompromittere systemet ved at åbne usikre data i dem.
Derudover anvendes biblioteket libcue i søgemaskinen tracker-miners, som bruges i brugerfladen GNOME. Da tracker-miners automatisk indekserer nye multimediafiler i hjemmemappen, er det tilstrækkeligt for en angriber at få brugeren til blot at uploade en specielt formateret fil til mappen ~/Downloads, ~/Music eller ~/Videos for at angribe systemer med GNOME og udføre angriberens kode, uden at filen nødvendigvis skal åbnes (for eksempel er det i nogle tilfælde tilstrækkeligt blot at klikke på et link i browseren).
Forskerne, der har opdaget sårbarheden, har forberedt et fungerende exploit og demonstreret muligheden for at udnytte installationer baseret på Ubuntu 23.04 og Fedora 38. Koden til exploit vil blive offentliggjort senere for at give brugerne tid til at installere opdateringer, der afhjælper sårbarheden. Exploiten er stabil, men kræver tilpasning til hver distribution.
Sårbarheden skyldes et heltals overflow i koden til syntaksanalyse af parameteren INDEX og optræder, når der angives for store numeriske værdier, som ikke kan håndteres af typen "int". For at konvertere en streng til et tal bruges funktionen atoi; for eksempel, når tallet 4294567296 angives, vil det blive konverteret til -400000. Sårbarheden skyldes direkte manglen på kontrol af det opnåede værdi for at sikre, at det ikke kan være negativt. I sidste ende udføres operationen "track->index[i] = ind" efter at atoi er udført, hvor "i" kan tildeles et negativt tal, som overskriver hukommelsesområdet uden for bufferen med værdien "ind", som også indlæses fra den behandlede fil.
I de fleste distributioner med GNOME aktiveres komponenten tracker-miners som standard og indlæses som en hård afhængighed til filhåndtereren Nautilus (GNOME Files). For at deaktivere tracker-miners for den nuværende bruger kan man bruge følgende kommandoer: 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
Kilde: opennet.ru
