Skip to main content

OpenEXR CVE-2026-59184

| EUVDEUVD-2026-65583 HIGH
Use After Free (CWE-416)
2026-08-25 GitHub_M
7.1
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft EXR file with nonzero dataWindow.min
  2. Delivery
    Deliver file to vulnerable image-processing service or pipeline
  3. Exploit
    Service calls FlatHalfChannel::row() on loaded image
  4. Execution
    '_base' pointer references location outside heap allocation
  5. Persist
    Out-of-bounds or use-after-free memory write occurs
  6. Impact
    Process crash (DoS) or potential heap corruption for code execution

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory lifecycle management
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires all of the following: (1) the target application links against an affected OpenEXR version (before 3.2.11, 3.3.0-3.3.12, or 3.4.0-3.4.13); (2) the application uses the OpenEXRUtil library and specifically invokes the TypedFlatImageChannel::row() or FlatHalfChannel::row() code path when writing pixel rows - applications that read EXR files without using this particular API are not vulnerable; (3) the application processes EXR files sourced from an attacker-controlled or untrusted input (the crafted file must have a nonzero dataWindow.min, which is a legitimate value per the EXR specification and passes normal format validation); and (4) a user or automated pipeline component must trigger the processing of the crafted file (CVSS UI:R). Applications operating exclusively on internally-generated EXR files with origin-aligned data windows (dataWindow.min = 0,0) are not at risk. Authentication requirements are not confirmed beyond the CVSS PR:N rating, which indicates no privileges are needed to submit the file to a processing service.

Impact

The CVSS 3.1 score of 7.1 with vector AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:H accurately characterizes a network-reachable vulnerability requiring no privileges but demanding that a user or automated pipeline component process the crafted file. The UI:R requirement meaningfully reduces exposure compared to fully autonomous exploitation - only pipeline components or applications that actively ingest external EXR files are reachable. The high availability impact (A:H) reflects a likely process crash from the memory corruption, while the low integrity rating (I:L) reflects that uncontrolled heap writes may corrupt limited data without confirmed code execution. EPSS data was not provided, so quantitative exploitation probability cannot be stated. The vulnerability is absent from CISA KEV and no public proof-of-concept has been identified, which substantially lowers operational urgency relative to the raw CVSS score. Real-world exposure is concentrated in VFX render farms, compositing tools, and image-processing microservices that accept externally-sourced EXR files; internal production pipelines operating exclusively on trusted, internally-generated EXR assets face negligible risk. The memory write primitive (out-of-bounds/use-after-free) is theoretically escalatable to code execution with sufficient exploit development effort, but no evidence of such capability exists in the available intelligence.

Exploit ScenarioDerived

An attacker uploads or delivers a crafted EXR image file containing a nonzero dataWindow.min value to a rendering service, compositing tool, or image-conversion API that uses OpenEXR. When the service processes the file and calls FlatHalfChannel::row() to write pixel data, the miscalculated '_base' pointer causes writes to an invalid heap location, crashing the process and causing denial of service. No public proof-of-concept exploit has been identified at the time of analysis, but the memory write primitive could theoretically be developed further into a code execution capability.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 25, 2026

Out-of-bounds and use-after-free memory writes in OpenEXR's FlatImageChannel row() API expose rendering pipelines and image-processing services to denial-of-service and potential memory corruption when handling untrusted EXR files. Affected versions include all releases before 3.2.11, 3.3.0 through 3.3.12, and 3.4.0 through 3.4.13; the flaw is triggered specifically when an application calls FlatHalfChannel::row() on an EXR image with a nonzero dataWindow.min value. No active exploitation has been confirmed (not listed in CISA KEV), and no public exploit code has been identified at the time of analysis.

RemediationAI

Upgrade to OpenEXR 3.2.11, 3.3.13, or 3.4.14, which contain the corrected row() pointer arithmetic replacing '_base' with the direct buffer pointer in all affected channel types. Patch commits are available at https://github.com/AcademySoftwareFoundation/openexr/commit/37f03b6ed90f3dd9910f31de3a40f25f2bc2aca1, https://github.com/AcademySoftwareFoundation/openexr/commit/55b7958ecb5ac32c427ff39c1e063f6f7bbee77c, and https://github.com/AcademySoftwareFoundation/openexr/commit/aef02224ba282a802de65d16c49c1cdb82089dec, with the full advisory at https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-pqp9-558c-453q. If immediate patching is not feasible, restrict EXR-processing pipeline components so they only ingest files from trusted, internally-generated sources - this eliminates the attacker-controlled input path required for exploitation, though it may not be operationally viable for services that accept user-uploaded assets. Sandboxing EXR-processing tools in a container or isolated process (e.g., using seccomp or namespaces) limits memory corruption impact to the sandboxed process rather than the host or main render server, at the cost of added inter-process overhead. Do not rely on EXR file-format validation to filter malicious inputs: a nonzero dataWindow.min is a perfectly valid field per the EXR specification and will not be rejected by a conformant parser.

Affected VersionsENISA

OpenEXR 3.3.0, < 3.3.13
OpenEXR 3.4.0, < 3.4.14
OpenEXR < 3.2.11

Affected Packages

euvd openexr fix: 3.2.11, 3.3.13, 3.4.14

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

OpenEXR (CPE: cpe:2.3:a:academysoftwarefoundation:openexr:*:*:*:*:*:*:*:*) is the Academy Software Foundation's reference C++ implementation of the EXR high-dynamic-range image format, standard in professional VFX and film production pipelines. The root cause (CWE-416: Use After Free) lies in the TypedFlatImageChannel<T>::row() template method in ImfFlatImageChannel.h. Prior to the fix, row() computed its return pointer as '_base + r * pixelsPerRow()', where '_base' is a pre-adjusted pointer that incorporates the image's data window origin offset. When dataWindow.min is nonzero, '_base' is displaced from the actual heap-allocated pixel buffer ('_pixels'), causing the computed row pointer to reference memory outside the allocation - resulting in out-of-bounds or use-after-free writes when pixel data is subsequently written through that pointer. The same class of bug existed in the DeepImageChannel ('_sampleListPointers') and SampleCountChannel ('_numSamples') code paths. The fix, applied across three commits (37f03b6, 55b7958, aef0222), replaces '_base' with the directly allocated buffer pointer in all three channel types, and regression tests asserting correct pointer arithmetic for nonzero-origin data windows were added to testDeepImage.cpp.

Know when Openexr gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.1 HIGH
AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:H
vuln.today AI 7.1 HIGH

File delivery over network requires no privileges; UI:R because a processing component must consume the file; A:H for likely crash, I:L for limited heap writes, C:N as no data disclosure path exists.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N
SUSE HIGH
Red Hat 7.1 HIGH

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
High

Lifecycle Timeline

2
Patch available
Aug 25, 2026 - 18:17 EUVD
CVE Published
Aug 25, 2026 - 16:28 cve.org
HIGH 7.1

DescriptionCVE.org

OpenEXR is the reference implementation and specification for the EXR image format, widely used in the motion picture industry. Versions before 3.2.11, 3.3.0 through 3.3.12, and 3.4.0 through 3.4.13 allow a crafted EXR with a nonzero dataWindow.min to make TypedFlatImageChannel::row() return an invalid heap pointer, causing out-of-bounds or use-after-free writes. This occurs when an application writes rows through FlatHalfChannel::row(). Affected consumers are tools, converters, render pipeline components, or image-processing services that accept untrusted EXR files and use FlatHalfChannel::row() on loaded images. This issue is fixed in versions 3.2.11, 3.3.13, and 3.4.14.

Executive ViewAI

Why It Matters

OpenEXR image-processing library versions 3.2.x, 3.3.x, and 3.4.x (before 3.2.11, 3.3.13, and 3.4.14) contain memory safety flaws that cause denial-of-service crashes and potential memory corruption when handling untrusted EXR files. Organizations operating rendering farms, video processing pipelines, or automated image-ingestion services-particularly those accepting external image uploads-face operational disruption and data integrity risk until vendor patches are released.

Business Impact: High
Compensating Controls

Isolate image-processing services on dedicated network segments to limit blast radius of crashes; implement strict file-source validation to reject EXR files from untrusted origins; deploy process monitoring and automatic restart for rendering services to mitigate denial-of-service impact; temporarily defer non-critical EXR processing workflows to reduce exposure surface; maintain continuous monitoring of OpenEXR security advisories and vendor communications for patch release timelines.

Threat Intelligence Overview

EPSS Score
0.2%
Top 88% exploitable
Prevalence
Medium
standard EXR library in professional VFX and film pipelines, not general-purpose
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Use-after-free vulnerabilities occur when a program continues to access memory through a pointer after that memory has been deallocated.

Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.

CVE-2018-18444 HIGH POC
8.8 Oct 17

makeMultiView.cpp in exrmultiview in OpenEXR 2.3.0 has an out-of-bounds write, leading to an assertion failure or possib

CVE-2026-27622 HIGH POC
8.4 Mar 03

Out-of-bounds heap write in OpenEXR's CompositeDeepScanLine::readPixels lets a crafted multi-part deep-scanline EXR file

CVE-2017-12596 HIGH POC
7.8 Aug 07

In OpenEXR 2.2.0, a crafted image causes a heap-based buffer over-read in the hufDecode function in IlmImf/ImfHuf.cpp du

CVE-2026-26981 MEDIUM POC
6.5 Feb 24

OpenEXR versions 3.3.0-3.3.6 and 3.4.0-3.4.4 are vulnerable to a heap buffer overflow in file parsing due to improper in

CVE-2021-3598 MEDIUM POC
5.5 Jul 06

There's a flaw in OpenEXR's ImfDeepScanLineInputFile functionality in versions prior to 3.0.5. Rated medium severity (CV

CVE-2020-16589 MEDIUM POC
5.5 Dec 09

A head-based buffer overflow exists in Academy Software Foundation OpenEXR 2.3.0 in writeTileData in ImfTiledOutputFile.

CVE-2020-16588 MEDIUM POC
5.5 Dec 09

A Null Pointer Deference issue exists in Academy Software Foundation OpenEXR 2.3.0 in generatePreview in makePreview.cpp

CVE-2020-16587 MEDIUM POC
5.5 Dec 09

A heap-based buffer overflow vulnerability exists in Academy Software Foundation OpenEXR 2.3.0 in chunkOffsetReconstruct

CVE-2020-11765 MEDIUM POC
5.5 Apr 14

An issue was discovered in OpenEXR before 2.4.1. Rated medium severity (CVSS 5.5), this vulnerability is no authenticati

CVE-2020-11764 MEDIUM POC
5.5 Apr 14

An issue was discovered in OpenEXR before 2.4.1. Rated medium severity (CVSS 5.5), this vulnerability is no authenticati

CVE-2020-11763 MEDIUM POC
5.5 Apr 14

An issue was discovered in OpenEXR before 2.4.1. Rated medium severity (CVSS 5.5), this vulnerability is no authenticati

CVE-2020-11762 MEDIUM POC
5.5 Apr 14

An issue was discovered in OpenEXR before 2.4.1. Rated medium severity (CVSS 5.5), this vulnerability is no authenticati

Vendor StatusVendor

SUSE

Severity: Important
Product Status
openSUSE Tumbleweed Fixed
SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS Affected
SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS Affected
SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS Affected
SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy