PyPI: openexr

CVE-2026-34543

Safety vulnerability ID: SFTY-20260403-56831

Safety legacy ID: pyup.io-91736

Affected versions of the openexr package are vulnerable to Information Disclosure due to the undo_pxr24_impl() function in internal_pxr24.c ignoring the actual decompressed size returned by exr_uncompress_buffer() and instead reading from the scratch buffer based on the header-derived expected size, combined with exr_uncompress_buffer() in compression.c treating LIBDEFLATE_SHORT_OUTPUT as a successful result rather than an error. When a crafted PXR24 EXR file contains a valid but truncated zlib stream, the decompressor writes fewer bytes than expected to the scratch buffer while the subsequent byte-plane reconstruction loop reads the full expected size, incorporating uninitialised heap memory into the output pixel data. An attacker can craft a malicious EXR file that, when decoded under default settings, leaks sensitive heap memory contents through the rendered pixel output.

Created at: Apr 17, 2026Updated at: Apr 17, 2026

Overview

OpenEXR: Heap information disclosure in PXR24 decompression via unchecked decompressed size (undo_pxr24_impl)

Advisory

Affected versions of the openexr package are vulnerable to Information Disclosure due to the undo_pxr24_impl() function in internal_pxr24.c ignoring the actual decompressed size returned by exr_uncompress_buffer() and instead reading from the scratch buffer based on the header-derived expected size, combined with exr_uncompress_buffer() in compression.c treating LIBDEFLATE_SHORT_OUTPUT as a successful result rather than an error. When a crafted PXR24 EXR file contains a valid but truncated zlib stream, the decompressor writes fewer bytes than expected to the scratch buffer while the subsequent byte-plane reconstruction loop reads the full expected size, incorporating uninitialised heap memory into the output pixel data. An attacker can craft a malicious EXR file that, when decoded under default settings, leaks sensitive heap memory contents through the rendered pixel output.

Affected Package

Affecting openexr package, versions
>=3.2.0,<=3.2.6
>=3.3.0,<=3.3.8
>=3.4.0,<=3.4.7

Also affects

---

How to Fix

Upgrade
openexr
to
3.2.7
3.3.9
3.4.8
or higher.

Mitigation and Workarounds

---

Vulnerable Functions

Functions linked to known vulnerabilities.

Vulnerable function data is available for Enterprise customers

Book a call with us to see Safety in action.

Safety

Verified by Safety

Our Cybersecurity Intelligence Team reviewed this vulnerability. We combine public data with our own research to find issues not yet reported to public sources.

Learn more