CVE-2025-60675D-Link DIR-823G是一款广泛使用的无线路由器设备。该漏洞存在于路由器固件DIR823G_V1.0.2B05_20181207.bin中的timelycheck和sysconf二进制文件中。这两个程序负责处理/tmp/new_qos.rule配置文件,该文件用于QoS(服务质量)规则配置。漏洞的根本原因在于程序在解析配置文件后,将提取的字段直接拼接到系统命令字符串中,并通过C标准库函数system()执行。由于整个过程中完全缺少输入验证和清理机制,攻击者可以通过构造恶意配置文件来注入任意系统命令。成功利用此漏洞需要攻击者具有对/tmp/new_qos.rule文件的写入权限,这可能通过其他途径(如文件上传漏洞、弱口令等)获得。漏洞的CVSS评分为5.4,属于中等严重程度,但考虑到路由器通常部署在家庭和办公网络中,攻击者一旦获得访问权限,可能导致整个网络被完全控制,造成数据泄露或进一步横向渗透。
该命令注入漏洞的技术细节涉及多个组件的交互过程。首先,timelycheck和sysconf这两个二进制程序在启动时会读取/tmp/new_qos.rule配置文件的内容。该配置文件原本设计用于存储QoS规则参数,格式可能包含设备MAC地址、带宽限制等字段。程序使用标准字符串解析函数(如strtok、sscanf等)提取配置中的各个字段值。关键的安全缺陷在于,这些提取出的字段值被直接用于构建即将通过system()函数执行的命令字符串。例如,代码可能包含类似如下的逻辑:将配置字段与静态字符串拼接后执行system(cmd),而没有对特殊字符进行过滤或转义。攻击者可以利用分号、管道符、反引号等shell元字符注入额外命令。更严重的是,由于system()函数使用/bin/sh执行命令,攻击者还可以利用$(command)或反引号`command`语法执行命令替换。由于路由器通常以root权限运行,攻击者注入的命令将以最高权限执行,从而完全控制设备。