OpenEXR: DWA Lossy Decoder Heap Out-of-Bounds Write
OpenEXR provides the specification and reference implementation of the EXR file format, an image storage format for the motion picture industry. From 3.2.0 to before 3.2.7, 3.3.9, and 3.4.9, the DWA lossy decoder constructs temporary per-component block pointers using signed 32-bit arithmetic. For a large enough width, the calculation overflows and later decoder stores operate on a wrapped pointer outside the allocated rowBlock backing store. This vulnerability is fixed in 3.2.7, 3.3.9, and 3.4.9.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-34589
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 3 Nov 2026, 02:59 UTC · Revision 1
Source evidence
OpenEXR: DWA Lossy Decoder Heap Out-of-Bounds Write
core-osv · Original sourcePublished 6 Apr 2026, 15:33 UTC
OpenEXR provides the specification and reference implementation of the EXR file format, an image storage format for the motion picture industry. From 3.2.0 to before 3.2.7, 3.3.9, and 3.4.9, the DWA lossy decoder constructs temporary per-component block pointers using signed 32-bit arithmetic. For a large enough width, the calculation overflows and later decoder stores operate on a wrapped pointer outside the allocated rowBlock backing store. This vulnerability is fixed in 3.2.7, 3.3.9, and 3.4.9.
osv:CVE-2026-34589
Complete source record
{
"id": "7eff879da2f50f0bd5ca6ec928a85cc917b742a18176672261af80781c4e1c50",
"url": "https://osv.dev/vulnerability/CVE-2026-34589",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "OpenEXR: DWA Lossy Decoder Heap Out-of-Bounds 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.2.0 to before 3.2.7, 3.3.9, and 3.4.9, the DWA lossy decoder constructs temporary per-component block pointers using signed 32-bit arithmetic. For a large enough width, the calculation overflows and later decoder stores operate on a wrapped pointer outside the allocated rowBlock backing store. This vulnerability is fixed in 3.2.7, 3.3.9, and 3.4.9.",
"evidence": "osv:CVE-2026-34589",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2026-34589",
"aliases": [
"CVE-2026-34589",
"GHSA-p8xc-w3q4-h64x",
"PYSEC-2026-2848"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/academysoftwarefoundation/openexr",
"type": "GIT",
"events": [
{
"introduced": "456bf42dc2fddb647c0e9ab911656e5cf757fc36"
},
{
"fixed": "f6f9cee0da36e8e806f7c9186f737db487782b69"
},
{
"introduced": "c7d3eac70ccde2c4ed484c6638b83ba872f71464"
},
{
"fixed": "8bb3562bd7bd833bd052224c596cb4aba94afb1b"
},
{
"introduced": "20a65852895894434bea88613f6d29ac8e88bd6e"
},
{
"fixed": "b5fa98ac6b5fc660c0295123c1d02bbf687dbec3"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:openexr:openexr:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "3.2.0"
},
{
"fixed": "3.2.7"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:openexr:openexr:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "3.3.0"
},
{
"fixed": "3.3.9"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:openexr:openexr:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "3.4.0"
},
{
"fixed": "3.4.9"
}
],
"source": "CPE_RANGE"
},
{
"range": [
{
"fixed": "f6f9cee0da36e8e806f7c9186f737db487782b69"
}
],
"source": "REFERENCES_TAG",
"original_tag": "v3.2.7"
},
{
"range": [
{
"fixed": "8bb3562bd7bd833bd052224c596cb4aba94afb1b"
}
],
"source": "REFERENCES_TAG",
"original_tag": "v3.3.9"
},
{
"range": [
{
"fixed": "b5fa98ac6b5fc660c0295123c1d02bbf687dbec3"
}
],
"source": "REFERENCES_TAG",
"original_tag": "v3.4.9"
}
]
}
}
],
"versions": [
"v3.3.9-rc",
"v3.2.6-rc",
"v3.2.6",
"v3.3.8-rc",
"v3.3.8",
"v3.4.9-rc",
"v3.4.8-rc",
"v3.4.8",
"v3.4.7",
"v3.4.7-rc",
"v3.4.6",
"v3.4.6-rc",
"v3.2.5-rc",
"v3.2.5",
"v3.3.7-rc4",
"v3.3.7",
"v3.4.5",
"v3.4.5-rc",
"v3.3.7-rc3",
"v3.3.7-rc2",
"v3.3.7-rc",
"v3.3.6",
"v3.4.4-rc2",
"v3.4.4",
"v3.4.4-rc",
"v3.4.3-rc3",
"v3.4.3",
"v3.3.6-rc4",
"v3.3.6-rc3",
"v3.4.3-rc2",
"v3.2.4-rc2",
"v3.2.4",
"v3.3.6-rc2",
"v3.4.3-rc",
"v3.3.6-rc",
"v3.3.5",
"v3.4.2-rc2",
"v3.4.2",
"v3.4.2-rc",
"v3.4.1-rc2",
"v3.4.1",
"v3.4.1-rc",
"v3.4.0",
"v3.3.5-rc3",
"v3.3.5-rc",
"v3.3.4-rc",
"v3.3.4",
"v3.3.3-rc1",
"v3.3.3",
"v3.3.3-rc",
"v3.3.2-rc4",
"v3.3.2",
"v3.3.2-rc3",
"v3.3.2-rc2",
"v3.3.2-rc",
"v3.3.1-rc",
"v3.3.1",
"v3.3.0-rc2",
"v3.3.0",
"v3.2.4-rc",
"v3.2.3-rc2",
"v3.2.3",
"v3.2.3-rc",
"v3.2.2",
"v3.2.2-rc2",
"v3.2.2-rc",
"v3.2.1-rc",
"v3.2.1",
"v3.2.0-rc4",
"v3.2.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-34589.json"
}
}
],
"modified": "2026-10-28T02:30:25.296901915Z",
"provider": "osv",
"references": [
"https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.2.7",
"https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.3.9",
"https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.4.9",
"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-34589.json",
"https://access.redhat.com/security/cve/CVE-2026-34589",
"https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-p8xc-w3q4-h64x",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/34xxx/CVE-2026-34589.json",
"https://nvd.nist.gov/vuln/detail/CVE-2026-34589",
"https://bugzilla.redhat.com/show_bug.cgi?id=2455411"
],
"provider_metadata": {
"cwe_ids": [
"CWE-190",
"CWE-787"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/34xxx/CVE-2026-34589.json"
}
},
"related_cves": [
{
"value": "CVE-2026-34589",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 492079,
"published_at": "2026-04-06T15:33:03.276+00:00"
}