ImageMagick is free and open-source software used for editing and manipulating digital images. Prior to 7.1.2-9 and 6.9.13-34, there is a vulnerability in ImageMagick’s Magick++ layer that manifests when Options::fontFamily is invoked with an empty string. Clearing a font family calls RelinquishMagickMemory on _drawInfo->font, freeing the font string but leaving _drawInfo->font pointing to freed memory while _drawInfo->family is set to that (now-invalid) pointer. Any later cleanup or reuse of _drawInfo->font re-frees or dereferences dangling memory. DestroyDrawInfo and other setters (Options::font, Image::font) assume _drawInfo->font remains valid, so destruction or subsequent updates trigger crashes or heap corruption. This vulnerability is fixed in 7.1.2-9 and 6.9.13-34.
| Package (Ecosystem) | Introduced | Fixed | Limit |
|---|---|---|---|
| Magick.NET-Q16-AnyCPU(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q16-HDRI-AnyCPU(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q16-HDRI-OpenMP-arm64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q16-HDRI-OpenMP-x64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q16-HDRI-arm64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q16-HDRI-x64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q16-HDRI-x86(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q16-OpenMP-arm64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q16-OpenMP-x64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q16-arm64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q16-x64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q16-x86(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q8-AnyCPU(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q8-OpenMP-arm64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q8-OpenMP-x64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q8-arm64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q8-x64(NuGet) | 0 | N/A | N/A |
| Magick.NET-Q8-x86(NuGet) | 0 | N/A | N/A |
CVSS Metrics