Vulnerabilità Ghostscript sfruttabile tramite ImageMagick

Ghostscript, un insieme di strumenti per l'elaborazione, la conversione e la generazione di documenti nei formati PostScript e PDF, presenta una vulnerabilità critica (CVE-2021-3781) che consente l'esecuzione di codice arbitrario durante l'elaborazione di un file appositamente formattato. Inizialmente, il problema è stato portato all'attenzione di Emil Lerner, che ha parlato della vulnerabilità il 25 agosto alla conferenza ZeroNights X tenutasi a San Pietroburgo (il rapporto descriveva come Emil, nell'ambito dei programmi bug bounty, ha utilizzato la vulnerabilità per ricevere bonus per aver dimostrato attacchi ai servizi AirBNB, Dropbox e Yandex.Real Estate).

Il 5 settembre è apparso di pubblico dominio un exploit funzionante che consente di attaccare i sistemi che eseguono Ubuntu 20.04 trasmettendo un documento appositamente progettato caricato come immagine a uno script web in esecuzione sul server utilizzando il pacchetto php-imagemagick. Inoltre, secondo i dati preliminari, un exploit simile sarebbe in uso già da marzo. È stato affermato che i sistemi che eseguono GhostScript 9.50 potevano essere attaccati, ma si è scoperto che la vulnerabilità era presente in tutte le versioni successive di GhostScript, inclusa la versione 9.55 in sviluppo di Git.

La correzione è stata proposta l'8 settembre e, dopo una revisione paritaria, è stata accettata nel repository GhostScript il 9 settembre. In molte distribuzioni il problema rimane irrisolto (lo stato di pubblicazione degli aggiornamenti può essere visualizzato sulle pagine di Debian, Ubuntu, Fedora, SUSE, RHEL, Arch Linux, FreeBSD, NetBSD). Entro la fine del mese è prevista la pubblicazione di una versione di GhostScript con la correzione della vulnerabilità.

Il problema è causato dalla possibilità di bypassare la modalità di isolamento "-dSAFER" a causa di un controllo insufficiente dei parametri del dispositivo Postscript "%pipe%", che consentiva l'esecuzione di comandi shell arbitrari. Ad esempio, per avviare l'utilità id in un documento, è sufficiente specificare la riga “(%pipe%/tmp/&id)(w)file” o “(%pipe%/tmp/;id)(r)file”.

Ricordiamo che le vulnerabilità in Ghostscript rappresentano un pericolo maggiore, poiché questo pacchetto viene utilizzato in molte applicazioni popolari per l'elaborazione dei formati PostScript e PDF. Ad esempio, Ghostscript viene chiamato durante la creazione delle miniature del desktop, l'indicizzazione dei dati in background e la conversione delle immagini. Per un attacco riuscito, in molti casi è sufficiente scaricare semplicemente il file con l'exploit o visualizzare la directory con esso in un file manager che supporti la visualizzazione delle miniature dei documenti, ad esempio in Nautilus.

Le vulnerabilità di Ghostscript possono essere sfruttate anche tramite elaboratori di immagini basati sui pacchetti ImageMagick e GraphicsMagick passando loro un file JPEG o PNG contenente codice PostScript invece di un'immagine (tale file verrà elaborato in Ghostscript, poiché il tipo MIME è riconosciuto dal contenuto e senza fare affidamento sull'estensione).

Fonte: opennet.ru

Aggiungi un commento