CVE-2026-45696: OpenEXR HTJ2K decoder heap buffer over-read in ht_undo_impl() (DoS)
OpenEXR is the reference implementation and specification for the EXR image format, widely used in the motion picture industry. In versions 3.4.0 through 3.4.11, the HTJ2K (High-Throughput JPEG 2000) decoder, htundoimpl() in OpenEXRCore is vulnerable to a heap-buffer-overflow READ. The htundoimp function copies decoded pixels out of a per-line OpenJPH buffer using the EXR channel's declared width as the iteration count. The codestream embedded in the EXR chunk can declare different (smaller) tile/line dimensions than the EXR header advertises, but htundoimpl() does not validate this — it pulls width 32-bit samples from curline->i32[] without checking the OpenJPH line buffer's actual length. A crafted EXR file produces a 4-byte heap-buffer-overflow READ immediately after a buffer allocated by ojph::local::codestream::finalizealloc(). The bug is reachable through the standard scanline-decode entry point used by every consumer of exrdecodingrun/Imf::checkOpenEXRFile, including thumbnailers, asset pipelines, and the exrcheck utility — i.e. any application that opens untrusted EXR files. The result is a deterministic crash (DoS) and potential adjacent-heap leak. This issue has been fixed in version 3.4.12.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
OpenEXRto a version that resolves this vulnerability.Fixed in 3.4.12
Event History
Frequently Asked Questions
What is the severity of CVE-2026-45696?
CVE-2026-45696 has a high severity rating of 8.3 according to the CVSS score.
What type of vulnerability is associated with CVE-2026-45696?
CVE-2026-45696 is a vulnerability that involves a heap buffer over-read in the HTJ2K decoder.
Which versions of OpenEXR are affected by CVE-2026-45696?
CVE-2026-45696 affects versions of OpenEXR from 3.4.0 through 3.4.11.
How do I fix CVE-2026-45696?
To fix CVE-2026-45696, upgrade to OpenEXR version 3.4.12 or later.
What impact does CVE-2026-45696 have on systems using OpenEXR?
CVE-2026-45696 can lead to denial of service (DoS) due to the heap buffer over-read.