CVE-2025-15274CVE-2025-15274是FontForge软件中一个严重的安全漏洞,属于堆缓冲区溢出(Heap-based Buffer Overflow)类型,可导致远程代码执行。该漏洞由趋势科技零日 Initiative(ZDI)发现并披露,编号为ZDI-CAN-28544。FontForge是一款开源的字体编辑软件,广泛用于字体设计、编辑和转换工作。漏洞存在于FontForge解析SFD(Splines Font Database)文件的过程中。具体而言,当软件读取并解析恶意的SFD文件时,由于缺乏对用户提供的SFD数据长度的正确验证,导致在将数据复制到堆缓冲区时发生溢出。攻击者可以通过构造包含恶意数据的SFD文件,诱使目标用户打开该文件来触发漏洞。一旦漏洞被成功利用,攻击者可以在当前用户的上下文环境中执行任意代码。这意味着攻击者可以完全控制受害者的系统,执行恶意软件安装、数据窃取或其他恶意操作。由于该漏洞需要用户交互(用户必须打开恶意文件或访问包含恶意文件的网页),因此攻击复杂度相对较高,但一旦成功利用,后果极为严重。建议用户及时更新FontForge到最新版本以修复此漏洞。
该漏洞的根本原因在于FontForge在解析SFD文件时存在安全验证缺陷。SFD格式是FontForge使用的一种字体数据库文件格式,用于存储字体的轮廓、字形和其他元数据。漏洞出现在数据解析流程中,当处理SFD文件中的特定字段时,程序未能正确验证用户提供的SFD数据长度。具体来说,程序在将用户输入的数据复制到堆分配的缓冲区时,没有检查数据长度是否超过目标缓冲区的容量。这种缺陷使得超长的数据可以覆盖相邻的堆内存区域,可能导致以下后果:1)堆元数据损坏,可能被利用来控制程序执行流程;2)覆写函数指针或关键数据结构,可能导致代码执行;3)引发程序崩溃,产生拒绝服务条件。攻击者可以通过精心构造的SFD文件,在特定字段中嵌入超长字符串或恶意数据来触发溢出。漏洞利用需要目标用户打开恶意SFD文件,这可以通过钓鱼邮件、恶意网站下载或社交工程等方式实现。ZDI披露的信息显示,该漏洞影响FontForge的多个版本,CVSS 3.0评分达到8.8分,属于高危漏洞。