Skip to main content

OpenEXR CVE-2026-53532

HIGH
Reachable Assertion (CWE-617)
2026-08-24 GitHub_M
7.1
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Recon
    Craft EXR file with HTJ2K compression and zeroed QCD marker lower bits
  2. Delivery
    Deliver file to vulnerable ingestion endpoint or user
  3. Exploit
    Application calls exr_start_read() on crafted input
  4. Install
    OpenEXR passes QCD marker to unguarded OpenJPH codestream construction
  5. C2
    OpenJPH assertion fires on invalid quantization delta
  6. Execute
    abort() terminates host process unconditionally
  7. Impact
    Application becomes unavailable

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V16 - Security Logging and Error Handling Reachable assertion handling
Exploitation Conditions

The vulnerability requires that an application call exr_start_read() on attacker-controlled EXR data encoded with HTJ2K compression where the QCD marker has its lower five bits set to zero. CVSS PR:N confirms no authentication is required to deliver the crafted file to an exposed ingestion endpoint. CVSS UI:P indicates at least one user or process action is required to open the file, though in automated processing pipelines (render farms, DAM ingest workers, thumbnail services) this condition is effectively eliminated. Exploitation is strictly bounded to denial of service - there is no code execution, memory disclosure, or privilege escalation pathway. The vulnerability is version-bounded to OpenEXR 3.4.0-3.4.12; prior versions lacking HTJ2K support and version 3.4.13 onward are not affected. No special operating system, platform, or configuration is required beyond having a vulnerable OpenEXR version linked into the processing application.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N, score 7.1) accurately reflects a remotely triggerable, low-complexity denial of service requiring only that a user or automated process open the crafted file (UI:P). The impact is strictly limited to availability - no confidentiality or integrity exposure exists. The vulnerability does not appear in the CISA KEV catalog and no public exploit code was identified in available intelligence, so exploitation is currently unconfirmed; however, the trigger condition is precisely documented in the CVE description, making independent reproduction straightforward. EPSS data was not provided in the available intelligence sources, leaving probabilistic exploitation likelihood unquantified. The practical risk is heavily context-dependent: automated media ingest pipelines, digital asset management systems, and VFX render farms that accept externally sourced EXR files effectively eliminate the UI:P friction, raising real-world exposure significantly above what the score alone implies. Environments where EXR files originate exclusively from trusted internal sources face minimal risk. The abort()-based crash mechanism is non-recoverable, meaning affected services cannot degrade gracefully and must be restarted, making sustained denial of service trivially achievable through repeated file submission.

Exploit ScenarioDerived

An attacker crafts an EXR file using HTJ2K compression with a QCD marker whose lower five bits are all zero, then submits it to a service that calls exr_start_read() - such as a web-based image preview service, a digital asset manager thumbnail generator, or an automated VFX render pipeline job queue. Upon ingestion, OpenJPH's internal assertion fires unconditionally, calling abort() and terminating the host process with no error recovery. If the service is configured to auto-restart, repeated submission of the single crafted file sustains a denial of service condition with minimal attacker effort.

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

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

Alert me

AnalysisAIv1 – Aug 24, 2026

Process-aborting denial of service in OpenEXR 3.4.0 through 3.4.12 allows an unauthenticated remote attacker to crash any application that calls exr_start_read() on a crafted HTJ2K-compressed EXR file. The crash originates in the vendored OpenJPH library, which invokes abort() unconditionally when a QCD marker's lower five bits are zero - an assertion failure that OpenEXR's partial error handling cannot intercept because codestream read and construction calls are left unprotected. No public exploit has been identified at time of analysis; the vulnerability is patched in version 3.4.13.

RemediationAI

Upgrade to OpenEXR 3.4.13, available at https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.4.13, which validates HTJ2K chunk header length before decode and addresses this vulnerability along with four other CVEs (CVE-2026-55373, CVE-2026-55371, CVE-2026-55059, CVE-2026-54920) in the same patch release. If an immediate upgrade is not feasible, restrict exr_start_read() call paths to trusted file sources only by gating any pipeline stage that ingests externally supplied EXR files - for example, by quarantining uploads and requiring explicit operator review before processing; this workaround requires architectural changes to ingestion pipelines and carries operational overhead. No in-process mitigation is available because the abort() call bypasses all C++ exception handling and signal handlers. Disabling HTJ2K support entirely at build time would also prevent the vulnerable code path from being reachable, but this requires a custom build of OpenEXR and prevents processing of legitimate HTJ2K-compressed files.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

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

Technical ContextAI · show details

The vulnerability sits at the boundary between OpenEXR (CPE: cpe:2.3:a:academysoftwarefoundation:openexr:*:*:*:*:*:*:*:*, versions 3.4.0-3.4.12) and its vendored copy of OpenJPH, the open-source High Throughput JPEG 2000 codec. CWE-617 (Reachable Assertion) precisely describes the root cause: OpenJPH validates quantization delta parameters in QCD (Quantization Default) markers using a C assert() macro rather than a conditional error return, so when the lower five bits of a QCD marker are zero - signaling invalid quantization data - the assertion fires and calls abort(), terminating the host process immediately with no recovery path. OpenEXR compounds the exposure by wrapping only its internal HT header parser in error-handling logic while leaving subsequent codestream read and construction calls to OpenJPH unguarded, meaning the abort propagates to the calling application with no possibility of interception. The v3.4.13 release note confirms the fix as 'Validate HTJ2K chunk header length before decode,' indicating the correction is applied at the OpenEXR layer before the invalid marker reaches OpenJPH.

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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 6.5 MEDIUM

Network-delivered crafted file requires no authentication and impacts only availability via unconditional abort; user/pipeline action to open file maps to UI:R.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

OpenEXR is the reference implementation and specification for the EXR image format, widely used in the motion picture industry. In versions 3.4.0 through 3.4.12, a crafted HTJ2K-compressed EXR file causes an unconditional process abort in any application that calls exr_start_read() on untrusted input, resulting in denial of service. The crash is triggered by a QCD marker whose lower five bits are zero, which OpenEXR passes into the vendored OpenJPH library while constructing the codestream and evaluating its quantization delta parameters. OpenJPH uses an assertion rather than a recoverable error to validate those bits, so any invalid value calls abort() directly and cannot be intercepted by surrounding error handling, a problem compounded by OpenEXR wrapping only its internal HT header parser in error handling while leaving the later codestream read and construction calls unprotected. This issue has been resolved in version 3.4.13.

Executive ViewAI

Why It Matters

OpenEXR 3.4.0-3.4.12 contains a denial-of-service vulnerability enabling remote attackers to crash production applications processing image files, with no public exploit identified at time of analysis. Organizations relying on OpenEXR for rendering, image processing, or visual computing face immediate risk of service outages from processing untrusted or external image data. Immediate patching to version 3.4.13 is required to restore application resilience and protect business-critical workflows.

Business Impact: High
Compensating Controls

Vendor-released patch: version 3.4.13.

Threat Intelligence Overview

EPSS Score
0.3%
Top 82% exploitable
Prevalence
Medium
widely used in VFX and film production, limited footprint outside media industry
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High

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.3%
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· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

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

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

Affected Products (CPE)CVE.org

cpe:2.3:a:academysoftwarefoundation:openexr:*:*:*:*:*:*:*:*
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: Moderate
Product Status
openSUSE Tumbleweed Fixed
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise High Performance Computing 12 Not-Affected
SUSE Linux Enterprise Module for Desktop Applications 15 SP7 Not-Affected
SUSE Linux Enterprise Server 15 SP7 Not-Affected

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