CVE-2026-5830Tenda AC15路由器在15.03.05.18版本中存在一个严重的栈溢出漏洞。该漏洞位于/goform/SysToolChangePwd接口的websGetVar函数中。攻击者可以通过精心构造的HTTP请求,操纵oldPwd、newPwd或cfmPwd参数,触发缓冲区溢出。由于无需复杂的用户交互且仅需低权限,攻击者可利用此漏洞在远程设备上执行任意代码,完全控制受影响的路由器,对网络机密性、完整性和可用性造成极高威胁。目前利用代码已公开,建议用户尽快采取防护措施。
该漏洞的根本原因在于Tenda AC15路由器固件中处理密码修改请求的函数对用户输入缺乏严格的长度检查。具体而言,在/goform/SysToolChangePwd端点处理POST请求时,程序调用了websGetVar函数来获取oldPwd、newPwd和cfmPwd参数。开发者未对这三个参数的字符串长度进行有效验证,直接将其拷贝到栈上的固定大小缓冲区中。攻击者可以向这些参数字段发送超长数据,覆盖栈上的返回地址或其他关键数据结构。由于攻击复杂度低(AC:L)且无需用户交互(UI:N),远程攻击者可通过网络发送特制的数据包触发溢出。成功的利用可导致绕过ASLR等保护机制(如果存在),进而劫持程序执行流,最终实现以root权限运行任意系统命令,完全接管设备。