CVE-2025-11328CVE-2025-11328是Tenda AC18路由器固件版本15.03.05.19(6318)中存在的一个高危安全漏洞。该漏洞位于路由器的Web管理接口/goform/SetDDNSCfg处理模块中,属于典型的栈缓冲区溢出漏洞。攻击者可通过向该接口发送精心构造的HTTP请求,操纵ddnsEn参数的值,从而触发栈缓冲区溢出,导致远程代码执行。
该漏洞的CVSS 3.1评分为8.8分,属于高危级别。攻击者无需物理接触设备,仅需通过网络即可发起攻击,且不需要高权限用户认证,仅需低权限即可触发。漏洞的成功利用将导致路由器设备的机密性、完整性和可用性全部受到严重影响,攻击者可以获取设备控制权、执行任意代码、窃取敏感信息或使设备完全不可用。
该漏洞的PoC(概念验证代码)已经公开披露,这意味着该漏洞正面临被大规模利用的风险。Tenda AC18作为一款广泛应用于家庭和小型办公环境的无线路由器,一旦被攻击者利用,可能导致用户网络被入侵、个人数据泄露、设备被劫持成为僵尸网络节点等严重后果。由于IoT设备固件更新困难,许多受影响设备可能长期处于未修复状态,安全风险持续存在。
该漏洞的根本原因在于Tenda AC18路由器固件中/goform/SetDDNSCfg接口对ddnsEn参数的处理缺乏充分的长度验证。SetDDNSCfg是路由器用于配置动态DNS(DDNS)服务的功能接口,ddnsEn参数用于控制DDNS功能的启用状态。
在正常情况下,ddnsEn参数应接受一个布尔值(0或1),但固件中的处理函数在接收该参数时未对输入数据进行边界检查,直接将用户输入复制到固定大小的栈缓冲区中。当攻击者传入超长字符串作为ddnsEn参数的值时,数据将超出栈缓冲区的容量,导致栈缓冲区溢出。
利用方式如下:
1. 攻击者首先通过HTTP POST请求访问/goform/SetDDNSCfg接口;
2. 在请求中构造超长字符串作为ddnsEn参数的值;
3. 服务器端处理该请求时,超长数据溢出栈缓冲区,覆盖返回地址和其他关键栈帧数据;
4. 攻击者可通过精心构造溢出数据来控制程序执行流,实现任意代码执行;
5. 由于该接口仅需低权限认证,攻击者可在获取基本访问权限后轻松利用此漏洞。
由于漏洞位于网络服务中且无需用户交互,攻击者可远程批量扫描并利用暴露在公网上的Tenda AC18设备,潜在威胁巨大。