IPBUF安全漏洞报告
English
CVE-2026-23952 CVSS 6.5 中危

CVE-2026-23952 ImageMagick MSL解析器空指针解引用拒绝服务漏洞

披露日期: 2026-01-22

漏洞信息

漏洞编号
CVE-2026-23952
漏洞类型
NULL指针解引用
CVSS评分
6.5 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
ImageMagick

相关标签

NULL指针解引用拒绝服务ImageMagickMSL解析器CVE-2026-23952脚本注入DoS漏洞

漏洞概述

ImageMagick是一款免费开源的图像处理软件,广泛应用于图像格式转换、编辑和操作。2026年1月披露的安全漏洞影响ImageMagick 14.10.1及以下版本。该漏洞存在于MSL(Magick Scripting Language)脚本解析器中,当处理<script>标签或<comment>标签时,在图像加载之前触发NULL指针解引用。在调试构建版本中可导致断言失败(assertion failure),在发布版本中可导致空指针解引用,最终引发拒绝服务(DoS)攻击。攻击者可通过构造恶意MSL脚本文件,诱导目标系统处理该文件,从而造成应用程序崩溃。由于该漏洞利用无需特殊权限且可通过网络触发,危害性较高。建议受影响的用户尽快升级到14.10.2或更高版本以修复此安全问题。

技术细节

该漏洞的根本原因在于ImageMagick的MSL(Magick Scripting Language)解析器在处理<script>和<comment>标签时存在空指针解引用问题。当解析器在图像加载之前遇到<comment>标签时,会尝试访问尚未初始化的指针,导致NULL指针解引用。具体来说:1)MSL解析器在处理<script>标签时会创建图像上下文;2)当解析器遇到<comment>标签时,它试图在图像对象尚未完全初始化的情况下访问其成员;3)在调试版本中,这会触发assert()失败;在发布版本中,直接解引用NULL指针导致程序崩溃。攻击者可以通过创建一个包含恶意<comment>标签的MSL脚本文件(如.mvg或.msl文件),并诱导ImageMagick处理该文件来触发漏洞。由于漏洞位于解析器层面,任何使用ImageMagick处理不可信图像输入的应用都可能受到影响。

攻击链分析

STEP 1
步骤1: 信息收集
攻击者识别目标系统是否使用存在漏洞的ImageMagick版本(<=14.10.1),并确认其处理MSL脚本的能力
STEP 2
步骤2: 恶意脚本制作
攻击者构造包含<comment>或<script>标签的恶意MSL脚本文件,在图像加载之前触发NULL指针解引用
STEP 3
步骤3: 诱导用户处理
通过社交工程、文件上传接口或自动化处理流程,诱导目标用户或系统处理恶意MSL脚本文件
STEP 4
步骤4: 漏洞触发
ImageMagick解析MSL脚本时,在处理<comment>标签时访问未初始化的指针,导致NULL指针解引用
STEP 5
步骤5: DoS效果达成
程序崩溃或assert失败,导致图像处理服务中断,实现拒绝服务攻击

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<?xml version="1.0" encoding="UTF-8"?> <image> <read filename="test.png"/> <!-- Comment tag triggers NULL pointer dereference before image is fully loaded --> <comment>malicious payload</comment> <write filename="output.png"/> </image> # Alternative PoC using script syntax: # Create a .msl file with the following content: # <?xml version="1.0" encoding="UTF-8"?> # <image> # <script> # <!-- This triggers the vulnerability --> # </script> # <read filename="input.png"/> # </image> # Usage: # convert poc.msl output.png # or # magick -script poc.msl output.png

影响范围

ImageMagick <= 14.10.1

防御指南

临时缓解措施
如果无法立即升级,可采取以下临时缓解措施:1)禁用或限制MSL脚本处理功能,通过修改ImageMagick的policy.xml配置文件;2)对所有图像输入进行严格的文件格式白名单验证;3)在沙箱环境中处理不可信的图像文件;4)监控系统日志,及时发现异常崩溃行为;5)考虑使用其他图像处理库作为临时替代方案。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表