CVE-2026-25794: ImageMagick heap overflow in WriteUHDRImage

CVE-2026-25794 · Severity: high · CVSS 8.2 · Published 2026-02-24

ImageMagick is a widely used open-source tool for creating, editing, and converting digital images. A vulnerability in how it handles Ultra High Dynamic Range (UHDR) images could allow an attacker to crash the software or potentially execute unauthorized code by providing a specially crafted image with very large dimensions. This could lead to service disruptions or unauthorized access to systems that automatically process user-uploaded images.

Technologies: ImageMagick, Magick.NET-Q16-AnyCPU (NuGet), Magick.NET-Q16-arm64 (NuGet), Magick.NET-Q16-HDRI-AnyCPU (NuGet), Magick.NET-Q16-HDRI-arm64 (NuGet), Magick.NET-Q16-HDRI-OpenMP-arm64 (NuGet), Magick.NET-Q16-HDRI-OpenMP-x64 (NuGet), Magick.NET-Q16-HDRI-x64 (NuGet), Magick.NET-Q16-HDRI-x86 (NuGet), Magick.NET-Q16-OpenMP-arm64 (NuGet), Magick.NET-Q16-OpenMP-x64 (NuGet), Magick.NET-Q16-OpenMP-x86 (NuGet), Magick.NET-Q16-x64 (NuGet), Magick.NET-Q16-x86 (NuGet), Magick.NET-Q8-AnyCPU (NuGet), Magick.NET-Q8-arm64 (NuGet), Magick.NET-Q8-OpenMP-arm64 (NuGet), Magick.NET-Q8-OpenMP-x64 (NuGet), Magick.NET-Q8-x64 (NuGet), Magick.NET-Q8-x86 (NuGet). Vendors: ImageMagick, NuGet.

Quick answers

Is CVE-2026-25794 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-25794 being exploited in the wild.
How severe is CVE-2026-25794?
High severity, with a CVSS score of 8.2, published 24 February 2026.
Which products and versions are affected?
Magick.NET-Q16-AnyCPU (NuGet) ECOSYSTEM:introduced=0,fixed=14.10.3; Magick.NET-Q16-arm64 (NuGet) ECOSYSTEM:introduced=0,fixed=14.10.3; Magick.NET-Q16-HDRI-AnyCPU (NuGet) ECOSYSTEM:introduced=0,fixed=14.10.3; Magick.NET-Q16-HDRI-arm64 (NuGet) ECOSYSTEM:introduced=0,fixed=14.10.3; and 15 more.
Is there a fix for CVE-2026-25794?
Yes. Magick.NET-Q16-AnyCPU (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-arm64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-HDRI-AnyCPU (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-HDRI-arm64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-HDRI-OpenMP-arm64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-HDRI-OpenMP-x64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-HDRI-x64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-HDRI-x86 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-OpenMP-arm64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-OpenMP-x64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-OpenMP-x86 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-x64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q16-x86 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q8-AnyCPU (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q8-arm64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q8-OpenMP-arm64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q8-OpenMP-x64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q8-x64 (NuGet): upgrade to 14.10.3 or later; Magick.NET-Q8-x86 (NuGet): upgrade to 14.10.3 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-25794 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-25794?
Check whether you run ImageMagick, Magick.NET-Q16-AnyCPU (NuGet), Magick.NET-Q16-arm64 (NuGet) or one of the others listed at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • Magick.NET-Q16-AnyCPU (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-AnyCPU --version 14.10.3
  • Magick.NET-Q16-arm64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-arm64 --version 14.10.3
  • Magick.NET-Q16-HDRI-AnyCPU (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-HDRI-AnyCPU --version 14.10.3
  • Magick.NET-Q16-HDRI-arm64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-HDRI-arm64 --version 14.10.3
  • Magick.NET-Q16-HDRI-OpenMP-arm64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-HDRI-OpenMP-arm64 --version 14.10.3
  • Magick.NET-Q16-HDRI-OpenMP-x64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-HDRI-OpenMP-x64 --version 14.10.3
  • Magick.NET-Q16-HDRI-x64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-HDRI-x64 --version 14.10.3
  • Magick.NET-Q16-HDRI-x86 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-HDRI-x86 --version 14.10.3
  • Magick.NET-Q16-OpenMP-arm64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-OpenMP-arm64 --version 14.10.3
  • Magick.NET-Q16-OpenMP-x64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-OpenMP-x64 --version 14.10.3
  • Magick.NET-Q16-OpenMP-x86 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-OpenMP-x86 --version 14.10.3
  • Magick.NET-Q16-x64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-x64 --version 14.10.3
  • Magick.NET-Q16-x86 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q16-x86 --version 14.10.3
  • Magick.NET-Q8-AnyCPU (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q8-AnyCPU --version 14.10.3
  • Magick.NET-Q8-arm64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q8-arm64 --version 14.10.3
  • Magick.NET-Q8-OpenMP-arm64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q8-OpenMP-arm64 --version 14.10.3
  • Magick.NET-Q8-OpenMP-x64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q8-OpenMP-x64 --version 14.10.3
  • Magick.NET-Q8-x64 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q8-x64 --version 14.10.3
  • Magick.NET-Q8-x86 (NuGet): upgrade to 14.10.3 or later
    dotnet add package Magick.NET-Q8-x86 --version 14.10.3

Technical details

An integer overflow vulnerability exists in ImageMagick's `WriteUHDRImage` function within `coders/uhdr.c`. The software uses 32-bit signed integer arithmetic to calculate the pixel buffer size; when processing images with extremely large dimensions, this multiplication overflows, resulting in an undersized heap allocation. Subsequent write operations then exceed the buffer boundaries, leading to a heap-based buffer overflow. A remote attacker can exploit this by providing a malicious UHDR image, potentially causing a denial-of-service (crash) or arbitrary code execution. The issue is fixed in version 7.1.2-15.

Affected products

  • ImageMagick ImageMagick < 7.1.2-15
  • Red Hat Enterprise Linux 6 affected

Identifiers

  • CVE-2026-25794
  • GHSA-vhqj-f5cj-9x8h

Timeline

  • 2026-02-23: disclosed: Initial disclosure by GitHub/ImageMagick
  • 2026-02-23: patched: Version 7.1.2-15 released with fix
  • 2026-02-24: advisory: NVD and Red Hat advisories published

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.