关键信息 漏洞概述 漏洞类型: 堆缓冲区溢出 受影响函数: 原因: 不完整的长度检查导致堆缓冲区溢出 影响版本 受影响版本: <= 1.3.3 修复版本: 无 描述 摘要: 在 函数中,由于对 (帧长度)字段的不完整验证检查,存在堆缓冲区溢出漏洞。尽管之前针对 的下溢问题进行了修补,但未能完全防止不安全计算。攻击者仍可构造恶意帧,导致 为负值,进而解释为大无符号值,最终在 调用中引发堆缓冲区溢出。 细节 易受攻击代码位置: 文件中的 函数。 示例代码: 当前补丁不足: 当前补丁仅检查 ,不足以防止 计算中的下溢。例如,当 、 和 时, 变为-1,转换为 后解释为65535,导致大量 操作,破坏堆内存。 概念验证 最小输入帧: 可绕过补丁并触发崩溃。 Asan输出: 显示堆缓冲区溢出。 GDB行为: 表明堆损坏。 影响 拒绝服务(DoS): 堆损坏导致崩溃。 潜在远程代码执行(RCE): 在特定内存布局和保护下。 推荐修复 建议: 替换现有检查,使用更安全的版本验证 计算结果。