CVE-2026-35444SDL_image库在解析XCF图像格式时存在安全漏洞。在`do_layer_surface`函数中,程序直接使用解码后的XCF图块像素索引作为colormap索引,且未验证索引值是否超出colormap大小。攻击者可构造特制的.xcf文件,利用该漏洞触发堆越界读取,泄露多达762字节的堆内存数据。
该漏洞位于`src/IMG_xcf.c`文件的`do_layer_surface`函数中。当处理`IMAGE_INDEXED`类型的图层(包括bpp=1和bpp=2)时,函数直接使用从XCF图块解码出的像素索引值来访问colormap数组,且未验证这些索引值是否超过colormap的大小(`cm_num`)。当解析一个包含较小colormap但像素索引超出范围的恶意文件时,程序会读取colormap分配内存之后的数据。这些越界读取的堆字节随后被写入输出表面的像素数据中,造成信息泄露。该漏洞由commit 996bf12888925932daace576e09c3053410896f8修复,修复方式为增加边界检查。