已撤销的公告:ImageMagick的Options::fontFamily在清空字体家族时存在释放后使用/双重释放风险 · CVE-2025-65955
漏洞详情
受影响的包及版本
NuGet包:
- Magick.NET-Q16-AnyCPU
- Magick.NET-Q16-HDRI-AnyCPU
- Magick.NET-Q16-HDRI-OpenMP-arm64
- Magick.NET-Q16-HDRI-OpenMP-x64
- Magick.NET-Q16-HDRI-arm64
- Magick.NET-Q16-HDRI-x64
- Magick.NET-Q16-HDRI-x86
- Magick.NET-Q16-OpenMP-arm64
- Magick.NET-Q16-OpenMP-x64
- Magick.NET-Q16-arm64
- Magick.NET-Q16-x64
- Magick.NET-Q16-x86
- Magick.NET-Q8-AnyCPU
- Magick.NET-Q8-OpenMP-arm64
- Magick.NET-Q8-OpenMP-x64
- Magick.NET-Q8-arm64
- Magick.NET-Q8-x64
- Magick.NET-Q8-x86
受影响版本:所有<= 14.9.1的版本 已修复版本:无
公告状态
已撤销:此公告于2025年12月11日被撤销,因为它不影响ImageMagick项目的NuGet包。
原始描述
我们认为在ImageMagick的Magick++层发现了一个潜在的安全漏洞,该漏洞在Options::fontFamily被传入空字符串时触发。
漏洞详情
清空字体家族会调用RelinquishMagickMemory释放_drawInfo->font,但_drawInfo->font仍指向已释放的内存,同时_drawInfo->family被设置为该(现在已无效的)指针。之后任何对_drawInfo->font的清理或重用都会重新释放或解引用悬挂指针。
DestroyDrawInfo和其他设置器(Options::font、Image::font)假设_drawInfo->font保持有效,因此销毁或后续更新会触发崩溃或堆损坏。
|
|
CWE-416(释放后使用):_drawInfo->font被留下为悬挂指针,但仍可通过Options对象访问。 CWE-415(双重释放):DrawInfo拆卸时会再次释放_drawInfo->font,导致分配器中止。
受影响的版本
- 由提交6409f34d637a34a1c643632aa849371ec8b3b5a8引入(“Added fontFamily to the Image class of Magick++",2015-08-01,责任行313)。
- 存在于包含该提交的所有版本中,至少从ImageMagick 7.0.1-0及以后版本(可能还包括具有Magick++字体家族支持的较晚6.9版本)。没有fontFamily的旧版本不受影响。
命令行可触发性
此漏洞无法从命令行界面触发。该错误特定于Magick++ C++ API,特别是Options::fontFamily()方法。命令行实用程序(如convert、magick等)不会暴露此特定代码路径,因为它们通过不同的内部机制运行,不会以触发释放后使用条件的方式直接调用带有空字符串的Options::fontFamily()。
建议的修复方案
|
|
此修复仅释放实际的family字符串,保持_drawInfo->font不变。在清除font()本身时可选地将_drawInfo->font置空可以保持分配器的整洁性。
参考信息
- GHSA-q3hc-j9x5-mp9m
- https://nvd.nist.gov/vuln/detail/CVE-2025-65955
- ImageMagick/ImageMagick@6409f34
- ImageMagick/ImageMagick@6f81eb1
安全评估
严重程度:中等
CVSS总分:4.9/10
CVSS v3基础指标
- 攻击向量:本地
- 攻击复杂性:高
- 所需权限:无
- 用户交互:无
- 范围:未改变
- 机密性:低
- 完整性:低
- 可用性:低
CVSS向量:CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L
EPSS得分
0.016%(第3百分位)
此分数估计此漏洞在未来30天内被利用的概率。数据由FIRST提供。
弱点分类
CWE-415 双重释放:产品对同一内存地址两次调用free()。
标识信息
- CVE ID:CVE-2025-65955
- GHSA ID:GHSA-q3hc-j9x5-mp9m
- 源代码仓库:ImageMagick/ImageMagick
致谢
报告者:LuiginoC