Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-59189— OpenEXR: Out-of-bounds read in DeepImageChannel::row() for non-zero dataWindow origin

Quick assessment

Affected
AcademySoftwareFoundation openexr
Exploitation
Public or AI PoC available; prioritize validation
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

OpenEXR 是 EXR 图像格式的参考实现和官方规范,广泛应用于电影制作行业。在 OpenEXRUtil 3.3.0 至 3.3.12 以及 3.4.0 至 3.4.12 版本中,已记录的 API 在深层图像(deep image)的 原点非零时,可能返回一个越界指针,从而导致堆内存越界读取(heap out-of-bounds read)并引发程序崩溃;在特定的堆布局条件下,还可能造成信息泄露。 该漏洞的根本原因在于 内部使用了两种相互冲突的坐标模型: 方法使用绝对坐标(以 加上 作为偏移),而 方法则被记录

CVSS 7.1 · High

Possible ATT&CK Techniques 1 AI

T1530 · Data from Cloud Storage

Affected Version Matrix 3

VendorProduct Version RangeStatus
AcademySoftwareFoundation openexr < 3.2.11 affected
>= 3.3.0, < 3.3.13 affected
>= 3.4.0, < 3.4.14 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-59189

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
OpenEXR: Out-of-bounds read in DeepImageChannel::row() for non-zero dataWindow origin
Source: CVE Program / CVE List V5
Vulnerability Description
OpenEXR is the reference implementation and specification for the EXR image format, widely used in the motion picture industry. In OpenEXRUtil versions 3.3.0 through 3.3.12 and 3.4.0 through 3.4.12, the documented TypedDeepImageChannel<T>::row() API can return an out-of-bounds pointer when a deep image has a non-zero dataWindow origin, resulting in a heap out-of-bounds read and crash, with potential information disclosure under a controlled heap layout. The flaw arises because ImfDeepImageChannel uses two conflicting coordinate models: at(x, y) uses absolute coordinates (with _base offset by dataWindow.min), while row(r) is documented as 0-based logical access. For a non-zero dataWindow.min, row(0) therefore points outside the _sampleListPointers allocation instead of at the first logical row. This issue is fixed in versions 3.3.13 and 3.4.13.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
跨界内存读
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
AcademySoftwareFoundation openexr < 3.2.11 -

II. Public POCs for CVE-2026-59189

# POC Description Source Link Shenlong Link
AI-Generated POC Premium
Qwen3.6-35B-A3B · 11135 chars
Pro+ exclusive includes:
Vulnerability reproduction recording (real sandbox build + trigger, exclusive)
In-depth vulnerability mechanism
Trigger conditions & impact
Full executable POC code
Exploit chain & mitigation
POC zip download
100+ AI POC generations per month

III. Intelligence Information for CVE-2026-59189

登录查看更多情报信息。

Patches & Fixes for CVE-2026-59189 (3)

Vendor Advisories for CVE-2026-59189 (1)

Same Patch Batch · AcademySoftwareFoundation · 2026-08-25 · 20 CVEs total

CVE-2026-59981 7.1 HIGH OpenEXR: Heap OOB read in SampleCountChannel row when using nonzero dataWindow
CVE-2026-59184 7.1 HIGH OpenEXR: OpenEXRUtil FlatImageChannel row nonzero dataWindow heap OOB write
CVE-2026-59186 7.1 HIGH OpenEXR: Heap out-of-bounds write in TiledRgbaInputFile via integer overflow on 32-bit (IL
CVE-2026-59187 7.1 HIGH OpenEXR: exrmetrics deep pixelmode heap buffer overflow
CVE-2026-59982 7.1 HIGH OpenEXR: DWAA InputFile AC buffer overflow on ILP32 platforms
CVE-2026-68515 7.1 HIGH OpenEXR: Heap out-of-bounds write in exrmultiview with subsampled channel union
CVE-2026-68513 7.1 HIGH OpenEXR: Heap buffer overflow in PyOpenEXR from literal/prefixed RGB channel name collisio
CVE-2026-55371 6.9 MEDIUM OpenEXR: OpenEXRCore exr_attr_set_bytes() accepts NULL type_hint with positive hint_length
CVE-2026-65979 6.7 MEDIUM OpenEXR: Out-of-bounds read in HTJ2K decoder from unvalidated chunk header length (PLEN)
CVE-2026-55373 6.2 MEDIUM OpenEXR: OpenEXRUtil SampleCountChannel endEdit() can loop forever on UINT_MAX sample coun
CVE-2026-55059 6.1 MEDIUM OpenEXR: OpenEXRUtil SampleCountChannel row setter heap has an out-of-bounds write vulnera
CVE-2026-59984 5.5 MEDIUM OpenEXR: Scratch buffer overflow decoding B44-compressed InputFile on ILP32
CVE-2026-68514 5.5 MEDIUM OpenEXR: Heap buffer overflow in PyOpenEXR from literal/prefixed RGB channel name collisio
CVE-2026-61555 5.5 MEDIUM OpenEXR: Empty multiView viewFromChannelName file crash
CVE-2026-59985 5.5 MEDIUM OpenEXR: Heap out-of-bounds read in OpenEXRCore RLE decoding on ILP32
CVE-2026-59983 5.5 MEDIUM OpenEXR: Out-of-bounds read in DeepTiledInputFile sample-count table decode on ILP32
CVE-2026-59183 5.5 MEDIUM OpenEXR: Signed Integer Overflow Leading to Out-of-Bounds Memory Access in Deep Tile Decod
CVE-2026-62986 4.3 MEDIUM OpenEXR: PyOpenEXR deep prefixed RGB stale lane disclosure
CVE-2026-54920 OpenEXR: Integer overflow and uninitialized pointer cause invalid delete in OpenEXRUtil im

IV. Related Vulnerabilities

V. Comments for CVE-2026-59189

No comments yet


Leave a comment