Talos 漏洞报告总结 (TALOS-2026-2363) 漏洞概述 CVE 编号: CVE-2026-24450 漏洞名称: LibRaw uncompressed_fp_dng_load_raw integer overflow vulnerability 漏洞类型: 整数溢出 (Integer Overflow) 导致堆缓冲区溢出 (Heap Buffer Overflow) CVSS 评分: 8.1 (高) 描述: 在 功能中存在整数溢出漏洞。攻击者可以通过提供特制的恶意文件来触发此漏洞,导致堆缓冲区溢出。 注意: 该漏洞在默认的 设置(2048 MB)下不可利用,因为该限制会拒绝触发溢出的维度。如果应用程序增加了此限制,则变得易受攻击。 影响范围 受影响版本: LibRaw Commit 8dc69e2 技术细节与 POC 代码 漏洞发生在 文件中的 函数内。 关键代码片段 (Vulnerable Code): 漏洞分析: 1. 第 [1] 行: 代码正确使用了 强制转换来计算所需的缓冲区大小 ( )。 2. 第 [2] 行: 内存检查也正确使用了 64 位算术。 3. 第 [3] 行 (漏洞点): 实际分配内存时, 的第一个参数使用了 32 位算术乘法 ( ),没有 转换。当乘积超过 时会发生溢出,导致分配的缓冲区远小于实际需要的空间。 4. 第 [4] 行和第 [5] 行: 索引计算同样使用了 32 位算术,导致写入操作超出分配的缓冲区边界,引发堆缓冲区溢出。 利用示例:** 当使用 , , 时,预期大小约为 42 亿元素,超过了 的最大值。这导致分配了约 284 KB 的缓冲区,但程序试图写入约 256 MB 的数据,从而触发溢出。 修复方案 修复 调用(第 [3] 行)中的算术运算,确保所有乘法操作都使用 64 位整数( )进行,以防止溢出。同时,确保后续内存访问(第 [4]、[5] 行)的索引计算也使用 64 位算术。