CVE-2026-2271CVE-2026-2271是GIMP图像处理软件PSP文件解析器中的一个安全缺陷。该漏洞源于read_creator_block()函数在处理文件数据时存在整数溢出问题。攻击者可以诱导用户打开特制的PSP图像文件来利用此漏洞。问题出在未经验证使用文件中的32位长度值进行内存分配,导致堆溢出和越界写入。成功利用此漏洞可能导致应用程序级别的拒绝服务,影响用户正常使用。
该漏洞的技术原理在于GIMP解析PSP文件时的整数溢出逻辑,具体位于read_creator_block()函数内部。当GIMP尝试解析PSP文件格式时,程序从文件中读取一个32位长度值,并将其直接用于计算后续所需的内存大小。由于缺乏对该值的边界检查和溢出验证,攻击者可以提供一个超大或经过特殊计算的数值。当该数值参与内存分配运算时(例如malloc(len + offset)),会发生整数溢出,导致实际分配的内存块远小于预期。随后,程序向该内存块复制数据时,由于复制大小基于原始的、未溢出的数值,就会发生堆缓冲区溢出和越界写入。攻击利用需要用户交互(打开文件),主要后果是程序崩溃或拒绝服务。