Talos 漏洞报告总结 漏洞概述 CVE 编号: CVE-2026-24660 漏洞名称: LibRaw x3f_load_huffman heap-based buffer overflow vulnerability (LibRaw x3f_load_huffman 堆缓冲区溢出漏洞) 漏洞类型: 堆缓冲区溢出 (Heap-based Buffer Overflow) / 整数溢出 (Integer Overflow) CVSS 评分: 8.1 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) CWE 编号: CWE-190 (Integer Overflow or Wraparound) 详细描述: 该漏洞存在于 LibRaw Commit d20315b 的 功能中。LibRaw 是一个用于读取、解码和处理 RAW 图像文件的开源 C/C++ 库,支持 Sigma/Foveon X3F 文件。 霍夫曼解码例程存在堆缓冲区溢出风险,因为像素缓冲区的尺寸计算使用了 32 位算术。当处理攻击者控制的维度值( 和 )时,乘法运算可能溢出(当乘积超过 时)。这导致分配的缓冲区远小于预期。随后,解码器会将数据写入该缓冲区,导致堆缓冲区溢出,攻击者可利用此漏洞执行任意代码。 注意: 在默认的 设置下,此漏洞不可利用。 影响范围 受影响版本: LibRaw Commit d20315b 触发条件: 应用程序在 大于约 11GB 的情况下调用 函数处理未信任的 X3F 文件。 利用条件: 需要 X3F 支持,且 LibRaw 需使用 编译。 修复方案 厂商补丁: 厂商已发布补丁(Vendor Patch Release)。 规避措施: 确保 限制在安全范围内(小于约 11GB),或者升级至修复后的版本。 代码逻辑修复: 修复 函数中的整数溢出问题,确保在计算缓冲区大小时使用 64 位算术或进行溢出检查。 关键代码块 (POC/相关代码) 1. x3f_load_huffman 函数 (存在整数溢出) 2. huffman_decode_row 函数 (导致溢出写入) 3. LibRaw 内存限制检查 (src/decoders/unpack.cpp)