从截图中可以获取以下关于漏洞的关键信息: 漏洞概览 漏洞类型: Heap-buffer-overflow 影响组件: 函数 严重性: Medium 受影响版本及修复版本 受影响版本: <= 3.20.2 已修复版本: 3.21.0 漏洞详情 问题描述: 函数在RLE解码之前没有验证 和 是否在 和 范围内。 问题核心: 缓冲区大小只在上下文重置时计算,导致 函数从 和 计算 并重分配 、 和 。 关键代码片段: - 缓冲区重分配代码: - 解码路径信任未经验证的维度,导致 调用 时基于 和 编写。 - 缺乏检查 和 是否在 和 范围内。 - 大小不匹配导致堆溢出。 证明概念 (PoC) 步骤: 1. 发送具有更大 和 的 ,确保表面尺寸超出 和 。 2. 发送包含带有RLE标志和NA位设置的平面位图的 ,并确保位图头的 和 足够大,以使解码循环超越上下文缓冲区边界。 漏洞影响 潜在风险: 恶意服务器可以触发客户端堆缓冲区溢出,导致崩溃(DoS)和潜在的堆损坏,存在代码执行风险,具体取决于分配器行为和堆布局。