作者:splash
漏洞详情
CVE-2022-1262,多款D-Link 路由器固件映像上的 /bin/protest二进制文件容易受到命令注入的攻击。这允许经过身份验证的攻击者以 root 身份执行任意 shell 命令,并且可以很容易地用于在设备上获取 root shell。
固件解密
dlink的dir系列解密方法很相似,大多都是在上一版本中存在固件解密文件,一般是以qemu用户态运行解密程序就可以完成,如果找不到未加密的版本或者中间版本的固件时,可找型号相近的固件,实际测试中,某些型号的固件解密程序确实是通用的,大致操作如下,根据架构切换执行根目录,运行相应二进制解密文件
漏洞复现
在路由器文件系统根目录下,chroot切换根路径
启动cli,以进入router终端。
(在实际运行的设备中,这里是一个后门,使用telnet连接,账户为admin,web口令+硬编码@twsz2018,如passwd@twsz2018,即可进入
直接运行系统命令会出错,加上分号截断,可以成功执行系统命令
漏洞分析
IDA分析/bin/protest,已知存在命令注入漏洞,首先查看system调用,有一处会将输入的client_secret值拼接到字符串使用system()去执行,复现时第一条回显信息和伪代码片段上方的printf信息吻合,说明程序确实执行到system()上方,也就没有再去调试看
由于原文篇幅过长
请在文末点击“阅读原文”跳转社区阅读
原文始发于微信公众号(IOTsec Zone):【技术干货】D-Link多款路由器存在cli命令注入