CVE-2025-50659D-Link DI-8003 路由器固件版本 16.07.26A1 中存在一个严重的缓冲区溢出漏洞。该漏洞源于设备 Web 管理接口的 /user.asp 端点未能正确验证 custom_error 参数的输入长度。由于未对用户数据进行边界检查,远程攻击者可以通过发送特制的恶意数据包触发该漏洞。攻击无需任何身份认证且无需用户交互,成功利用可导致设备服务拒绝,或在特定环境下实现远程代码执行,从而完全控制受影响设备。
该漏洞属于典型的栈缓冲区溢出。在 D-Link DI-8003 的固件代码中,处理 /user.asp 请求时,程序直接使用了不安全的内存拷贝函数(如 strcpy)将 custom_error 参数的值复制到栈上的固定长度缓冲区。由于没有检查输入数据的长度,当攻击者发送超长字符串(例如数千个字节)时,多余的数据将溢出缓冲区边界,覆盖栈上的返回地址或其它关键寄存器。CVSS 向量显示无需权限且影响可用性,攻击者可通过网络直接发起攻击。如果设备缺乏 ASLR 或 DEP 等内存保护机制,攻击者可以精心构造 payload 覆盖返回地址,使其指向恶意代码,从而获得系统的最高权限。