
PoC - Escritura arbitraria de archivos en Gibbon LMS para RCE (CVE-2023-45878)
Escritura Arbitraria de Archivos en Gibbon LMS para RCE (CVE-2023-45878)
GibbonEdu Gibbon LMS versión 25.0.1 y anteriores permite la Escritura Arbitraria de Archivos porque rubrics_visualise_saveAjax.php no requiere autenticación. El endpoint acepta los parámetros img, path y gibbonPersonID. Se espera que el parámetro img sea una imagen codificada en base64. Si se establece el parámetro path, la ruta definida se utiliza como carpeta de destino, concatenada con la ruta absoluta del directorio de instalación. El contenido del parámetro img se decodifica en base64 y se escribe en la ruta de archivo definida. Esto permite la creación de archivos PHP que permiten la Ejecución Remota de Código (no autenticada).
Este script proporciona un shell pseudo-interactivo. Se sube un único PHP al sistema remoto y el script local proporciona un envoltorio para interactuar directamente con él. Cuando se envía un comando, devuelve la respuesta HTTP del payload PHP. En caso de que el archivo del payload sea eliminado del sistema remoto, el script detectará una respuesta de página de error 404 y realizará una nueva subida y reenviará el último comando.
python3 gibbonlms_cmd_shell.py url
python3 gibbonlms_cmd_shell.py http://example.com
Este script se proporciona con fines educativos. Por favor, hackea de forma responsable.