CVE-2025-68950ImageMagick是一款免费开源的图像处理软件,广泛用于命令行图像转换、编辑和处理。2025年12月披露的安全漏洞显示,在ImageMagick 7.1.2-12之前的版本中,程序在处理MVG(Magick Vector Graphics)格式文件时存在循环引用检查缺陷。当两个MVG文件相互引用时,程序会陷入无限递归调用,最终导致栈空间耗尽而崩溃。该漏洞属于拒绝服务(DoS)类型,CVSS评分4.0分,中危级别。攻击向量为本地攻击,无需认证和用户交互即可触发。由于ImageMagick被广泛应用于Web服务器、图像处理服务、内容管理系统等环境中,任何允许用户上传或处理图像文件的场景都可能受到此漏洞影响。攻击者可通过构造恶意的MVG文件,利用图像处理流程触发栈溢出,导致服务中断或程序崩溃。
MVG(Magick Vector Graphics)是ImageMagick的矢量图形描述语言,允许在图像中嵌入矢量图形指令。漏洞根源在于ImageMagick在解析MVG文件时未对引用关系进行循环检测。当攻击者构造两个相互引用的MVG文件(如A.mvg引用push graphic-image并指向B.mvg,同时B.mvg引用A.mvg),程序在解析过程中会递归加载被引用的文件。由于缺乏循环引用检测机制,递归调用会持续进行直到栈空间耗尽。在x86_64架构下,每次函数调用会消耗一定的栈空间,无限递归会导致栈溢出(Stack Overflow),触发程序崩溃或产生段错误(Segmentation Fault)。利用此漏洞需要攻击者能够控制被ImageMagick处理的MVG文件内容,常见场景包括:1)Web应用允许用户上传SVG/MTV等格式文件并由ImageMagick处理;2)邮件系统使用ImageMagick生成缩略图;3)内容管理系统自动处理用户提交的图像资源。修复方案在7.1.2-12版本中增加了循环引用检测逻辑,在递归解析前检查引用链是否形成环。