Vulnerabilità in libcue che porta all'esecuzione di codice durante il caricamento di file in GNOME

Nella libreria libcue, utilizzata per il parsing dei metadati relativi all'ordine e alla durata delle tracce audio, è stata identificata una vulnerabilità (CVE-2023-43641) che consente l'esecuzione di codice durante il trattamento di file cue appositamente formattati. La libreria è utilizzata in alcuni lettori multimediali e editor audio, incluso Audacious, e può essere sfruttata per compromettere il sistema aprendo dati non verificati all'interno di essi.

Inoltre, la libreria libcue è utilizzata nel motore di ricerca tracker-miners, impiegato nell'ambiente desktop GNOME. Poiché tracker-miners indicizza automaticamente i nuovi file multimediali nella directory home, per attaccare i sistemi con GNOME e garantire l'esecuzione di codice malevolo, è sufficiente che l'utente carichi un file appositamente formattato nella directory ~/Downloads, ~/Music o ~/Videos, senza la necessità di aprirlo (ad esempio, in alcuni casi è sufficiente fare clic su un collegamento nel browser).

I ricercatori che hanno identificato la vulnerabilità hanno preparato un exploit funzionante e dimostrato la possibilità di sfruttare ambienti basati su Ubuntu 23.04 e Fedora 38. Il codice dell'exploit sarà pubblicato successivamente per dare tempo agli utenti di installare l'aggiornamento per risolvere la vulnerabilità. L'exploit è stabile, ma richiede adattamenti per ogni distribuzione.

La vulnerabilità è causata da un overflow intero nel codice di parsing del parametro INDEX e si manifesta quando si specificano valori numerici troppo grandi in questo parametro, che non rientrano nel tipo 'int'. Per convertire una stringa in un numero, viene utilizzata la funzione atoi; ad esempio, specificando il numero 4294567296, esso verrà convertito in -400000. La vulnerabilità deriva dall'assenza di un controllo per verificare che il valore ottenuto non possa essere negativo. Di conseguenza, nel codice dopo la conversione atoi viene eseguita l'operazione 'track->index[i] = ind', dove 'i' può essere assegnato a un numero negativo per sovrascrivere un'area di memoria al di fuori del buffer con il valore 'ind', che viene anch'esso caricato dal file in elaborazione.

Nella maggior parte delle distribuzioni con GNOME, il componente tracker-miners è attivato di default e caricato come dipendenza centrale per il gestore file Nautilus (GNOME Files). Per disattivare tracker-miners per l'utente corrente, è possibile utilizzare i comandi: 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

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster