关键信息 漏洞概述 设备: D-Link DIR-825路由器 固件版本: REVB_FIRMWARE_2.03 下载链接: https://legacycfyles.us.dlink.com/DIR-825/REVB/FIRMWARE/DIR-825_REVB_FIRMWARE_2.03.ZIP 漏洞细节 1. 漏洞触发位置 - 在函数 中存在基于堆栈的缓冲区溢出漏洞,位于偏移量 处。 - 函数在没有适当边界检查的情况下被调用,精心构造的POST请求可以触发溢出。 2. 漏洞分析 - 当程序处理用户的POST请求时,如果请求路径不以白名单前缀(如 或 等)开头,并且没有 扩展名,则会进入逻辑,将请求路径附加到 并尝试定位相应的文件。 - 使用不安全的 函数进行拼接,目标缓冲区只能容纳最多14字节的数据。如果POST请求超过这个限制,可能会发生堆栈缓冲区溢出。 - 通过精心构造的输入可以触发此漏洞。 POC (概念验证) Python脚本: 提供了一个Python脚本来演示漏洞利用过程。 Payload.txt: 包含用于测试的payload,注意使用CRLF(回车和换行)作为行分隔符。 漏洞验证截图 显示了在尝试利用漏洞时发生的段错误(核心转储)。 发现者 m20247218@hust.edu.cn