CVE-2025-15280CVE-2025-15280是FontForge软件中一个高危安全漏洞,CVSS评分达到8.8分。该漏洞属于Use-After-Free(释放后重用)类型,存在于FontForge对SFD(Splines Font Database)文件格式的解析过程中。攻击者可以通过精心构造恶意的SFD文件来触发此漏洞。当目标用户打开该恶意文件时,FontForge在解析SFD文件过程中未能正确验证对象的有效性和存在性,导致程序在对象被释放后继续对其进行操作。这种情况下,攻击者可以控制已释放的内存区域,并在后续操作中实现任意代码执行。漏洞的成功利用需要用户交互,即目标用户必须主动打开恶意文件或访问包含恶意文件的网页。由于该漏洞影响机密性、完整性和可用性三个安全属性均为高影响,且攻击复杂度较低,无需认证即可发起攻击,因此被评定为高危漏洞。此漏洞由Zero Day Initiative(ZDI)发现并披露,编号为ZDI-CAN-28525。
该漏洞的根本原因在于FontForge在解析SFD文件时缺乏对对象存在性的验证机制。SFD文件是FontForge使用的字体源文件格式,包含字形、轮廓、字体元数据等信息。在解析过程中,当程序释放某个对象后,如果在后续代码中仍尝试访问该已释放对象的成员或调用其方法,就会产生Use-After-Free条件。攻击者可以通过在SFD文件中嵌入精心构造的数据,使得解析器在处理特定字段时触发对象的释放,但随后又有代码路径尝试使用该对象。具体而言,漏洞存在于SFD文件的特定解析模块中,攻击者可以控制释放的时机和内存布局。通过堆喷射(heap spraying)或其他内存布局操控技术,攻击者能够在对象释放后将其占用的内存重新填充为恶意数据,从而在程序尝试访问该“悬挂指针”时执行任意代码。成功利用此漏洞可实现与当前用户相同权限的代码执行,从而完全控制受害系统。