Executive brief
OpenEXR is a standard image file format used extensively in the motion picture industry for high-quality visual effects and animation. A security flaw in how the library processes these image files could allow an attacker to crash applications or potentially steal sensitive information from a computer's memory. This occurs when a specially crafted, malicious image file is opened by a vulnerable application.
Technical details
An out-of-bounds read exists in the IDManifest::init() function of OpenEXR due to improper handling of prefix-compressed strings. When reconstructing strings, the code fails to validate that a string has at least two bytes before attempting to read a 2-byte prefix length if the preceding string exceeded 255 bytes. In production builds, this results in a hardware-level heap out-of-bounds read. An attacker can leverage this to cause a denial of service (via std::out_of_range exception) or leak adjacent heap memory by influencing the common prefix length used in subsequent string reconstruction. The vulnerability is patched in versions 3.2.9, 3.3.11, and 3.4.11.
Affected products
- AcademySoftwareFoundation OpenEXR 3.0.0 to 3.2.8, 3.3.0 to 3.3.10, 3.4.0 to 3.4.10
- Red Hat Red Hat Enterprise Linux 6
- Red Hat Red Hat Enterprise Linux 9
- Red Hat Red Hat Enterprise Linux 10
Timeline
- 2026-05-05: advisory: GitHub Advisory GHSA-65j8-95g9-jgj4 published
- 2026-05-07: disclosed: CVE-2026-42216 published