CVE-2025-12839CVE-2025-12839是Academy Software Foundation OpenEXR中的一个高危安全漏洞,CVSS评分7.8,属于堆缓冲区溢出(Heap-based Buffer Overflow)类型。该漏洞允许远程攻击者在受影响系统上执行任意代码。攻击成功需要用户交互,即目标用户必须访问恶意页面或打开恶意文件。漏洞存在于OpenEXR对EXR(Extended Dynamic Range)图像文件的解析过程中,由于缺乏对用户提供的EXR文件数据长度的正确验证,在将数据复制到堆缓冲区时发生溢出。攻击者可利用此漏洞在当前进程上下文中执行代码。此漏洞由ZDI(Zero Day Initiative)披露,编号为ZDI-CAN-27947。OpenEXR广泛应用于电影特效、动画制作和数字图像处理领域,因此该漏洞可能影响大量使用该库的软件和系统。
该漏洞的根本原因在于OpenEXR库在解析EXR文件时,对文件中的数据块长度缺乏充分的验证。当解析器读取EXR文件中的特定字段时,它会根据文件头中声明的长度信息分配堆内存,但在将文件数据复制到该缓冲区之前,没有正确检查源数据的长度是否超过目标缓冲区的容量。攻击者可以构造一个恶意的EXR文件,通过精心设计文件中的长度字段和实际数据,使解析器分配一个较小的堆缓冲区,然后写入超出该缓冲区边界的数据。这种堆缓冲区溢出可能导致相邻堆内存区域的数据被覆盖,如果攻击者能够控制溢出数据的内容和长度,可能实现代码执行。在OpenEXR的ImfChromaticities、ImfCompression等关键解析函数中可能存在此问题。攻击者需要诱骗受害者打开特制的EXR文件即可触发漏洞。