---
id: CVE-2026-34588
title: OpenEXR has a signed 32-bit Overflow in PIZ Decoder Leads to OOB Read/Write
summary: >-
  OpenEXR provides the specification and reference implementation of the EXR
  file format, an image storage format for the motion picture industry. From
  3.1.0 to before 3.2.7, 3.3.9, and 3.4.9, internal_exr_undo_piz() advances the
  working w…
severity: high
cvss: 8.6
cvssVector: 'CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'
cvssSource: cna
cwe:
  - CWE-125
  - CWE-190
  - CWE-787
vendor: AcademySoftwareFoundation
product: openexr
affected:
  - 'openexr >= 3.1.0, <= 3.1.13'
  - 'openexr >= 3.2.0, < 3.2.7'
  - 'openexr >= 3.3.0, < 3.3.9'
  - 'openexr >= 3.4.0, < 3.4.9'
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: total
  timestamp: '2026-04-07T03:56:04.356566Z'
published: '2026-04-06'
updated: '2026-09-09'
sourceUpdated: '2026-09-09T12:05:01.982Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-34588'
references:
  - url: >-
      https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-588r-cr5c-w6hf
    label: >-
      https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-588r-cr5c-w6hf
  - url: 'https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.2.7'
    label: 'https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.2.7'
  - url: 'https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.3.9'
    label: 'https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.3.9'
  - url: 'https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.4.9'
    label: 'https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.4.9'
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-34588.json
  - url: 'https://access.redhat.com/security/cve/CVE-2026-34588'
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2455408'
  - url: 'https://www.cve.org/CVERecord?id=CVE-2026-34588'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-34588'
  - url: 'https://access.redhat.com/errata/RHSA-2026:17656'
  - url: 'https://access.redhat.com/errata/RHSA-2026:15888'
  - url: 'https://access.redhat.com/errata/RHSA-2026:19146'
  - url: 'https://access.redhat.com/errata/RHSA-2026:19587'
  - url: 'https://access.redhat.com/errata/RHSA-2026:17659'
  - url: 'https://access.redhat.com/errata/RHSA-2026:17658'
  - url: 'https://access.redhat.com/errata/RHSA-2026:17660'
  - url: 'https://access.redhat.com/errata/RHSA-2026:15887'
  - url: 'https://access.redhat.com/errata/RHSA-2026:19359'
  - url: 'https://access.redhat.com/errata/RHSA-2026:30078'
  - url: 'https://access.redhat.com/errata/RHSA-2026:30089'
  - url: 'https://access.redhat.com/errata/RHSA-2026:30088'
  - url: 'https://access.redhat.com/errata/RHSA-2026:30087'
  - url: 'https://github.com/AcademySoftwareFoundation/openexr'
tags:
  - cve.org
  - csaf
  - vex
  - red-hat
  - osv
  - pip
epss: 0.00567
epssPercentile: 0.44684
aliases:
  - GHSA-588r-cr5c-w6hf
  - PYSEC-2026-2845
ecosystem: pip
patched:
  - enterprise_linux_appstream_eus_v_10_0
  - enterprise_linux_appstream_v_10
  - enterprise_linux_appstream_e4s_v_9_0
  - enterprise_linux_appstream_e4s_v_9_2
  - enterprise_linux_appstream_eus_v_9_4
  - enterprise_linux_appstream_eus_v_9_6
  - enterprise_linux_appstream_v_9
  - enterprise_linux_codeready_linux_builder_eus_v_10_0
  - enterprise_linux_codeready_linux_builder_v_10
  - codeready_linux_builder_eus_v_9_4
  - codeready_linux_builder_eus_v_9_6
  - enterprise_linux_codeready_linux_builder_v_9
  - ai_inference_server 3.3
scores:
  cna: 8.6
  vendor: 8.8
ingestedAt: '2026-07-13T18:57:53.072Z'
---

## Overview

OpenEXR provides the specification and reference implementation of the EXR file format, an image storage format for the motion picture industry. From 3.1.0 to before 3.2.7, 3.3.9, and 3.4.9, internal_exr_undo_piz() advances the working wavelet pointer with signed 32-bit arithmetic. Because nx, ny, and wcount are int, a crafted EXR file can make this product overflow and wrap. The next channel then decodes from an incorrect address. The wavelet decode path operates in place, so this yields both out-of-bounds reads and out-of-bounds writes. This vulnerability is fixed in 3.2.7, 3.3.9, and 3.4.9.

## Affected

- `openexr >= 3.1.0, <= 3.1.13`
- `openexr >= 3.2.0, < 3.2.7`
- `openexr >= 3.3.0, < 3.3.9`
- `openexr >= 3.4.0, < 3.4.9`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2026-34588)

Affected packages:

- `openexr >= 3.1.0, < 3.2.7`
- `openexr >= 3.3.0, < 3.3.9`
- `openexr >= 3.4.0, < 3.4.9`

Patched in:

- `openexr 3.2.7`
- `openexr 3.3.9`
- `openexr 3.4.9`

Source: https://osv.dev/vulnerability/GHSA-588r-cr5c-w6hf

## Vendor advisories

- **RHSA-2026:17656** · Red Hat · fixed in: Red Hat Enterprise Linux AppStream EUS (v. 10.0), Red Hat Enterprise Linux CodeReady Linux Builder EUS (v. 10.0) · released 2026-05-14 · [advisory](https://access.redhat.com/errata/RHSA-2026:17656)
- **RHSA-2026:15888** · Red Hat · fixed in: Red Hat Enterprise Linux AppStream (v. 10), Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) · released 2026-05-11 · [advisory](https://access.redhat.com/errata/RHSA-2026:15888)
- **RHSA-2026:19146** · Red Hat · fixed in: Red Hat Enterprise Linux AppStream (v. 10), Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) · released 2026-05-19 · [advisory](https://access.redhat.com/errata/RHSA-2026:19146)
- **RHSA-2026:19587** · Red Hat · fixed in: Red Hat Enterprise Linux AppStream E4S (v.9.0) · released 2026-05-20 · [advisory](https://access.redhat.com/errata/RHSA-2026:19587)
- **RHSA-2026:17659** · Red Hat · fixed in: Red Hat Enterprise Linux AppStream E4S (v.9.2) · released 2026-05-14 · [advisory](https://access.redhat.com/errata/RHSA-2026:17659)
- **RHSA-2026:17658** · Red Hat · fixed in: Red Hat Enterprise Linux AppStream EUS (v.9.4), Red Hat CodeReady Linux Builder EUS (v.9.4) · released 2026-05-14 · [advisory](https://access.redhat.com/errata/RHSA-2026:17658)
- **RHSA-2026:17660** · Red Hat · fixed in: Red Hat Enterprise Linux AppStream EUS (v.9.6), Red Hat CodeReady Linux Builder EUS (v.9.6) · released 2026-05-14 · [advisory](https://access.redhat.com/errata/RHSA-2026:17660)
- **RHSA-2026:15887** · Red Hat · fixed in: Red Hat Enterprise Linux AppStream (v. 9), Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) · released 2026-05-11 · [advisory](https://access.redhat.com/errata/RHSA-2026:15887)
- **RHSA-2026:19359** · Red Hat · fixed in: Red Hat Enterprise Linux AppStream (v. 9), Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) · released 2026-05-19 · [advisory](https://access.redhat.com/errata/RHSA-2026:19359)
- **RHSA-2026:30078** · Red Hat · fixed in: Red Hat AI Inference Server 3.3 · released 2026-06-25 · [advisory](https://access.redhat.com/errata/RHSA-2026:30078)
- **RHSA-2026:30089** · Red Hat · fixed in: Red Hat AI Inference Server 3.3 · released 2026-06-25 · [advisory](https://access.redhat.com/errata/RHSA-2026:30089)
- **Red Hat VEX** · Important · affected: Red Hat Enterprise Linux 6, Red Hat Enterprise Linux 7 · no fix planned: Red Hat Enterprise Linux 6, Red Hat Enterprise Linux 7 · updated 2026-09-08 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-34588.json)
