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

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-62986— OpenEXR: PyOpenEXR deep prefixed RGB stale lane disclosure

Quick assessment

Affected
AcademySoftwareFoundation openexr
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

OpenEXR 是 EXR 图像文件格式的参考实现与规范,在影视行业被广泛使用。在 OpenEXR 版本 3.3.0 至 3.3.12 以及 3.4.0 至 3.4.13 中,PyOpenEXR(Python 绑定库)在读取使用带前缀 RGB 通道的精心构造的深层扫描线(deep scanline)EXR 文件时,会返回过期的堆内存数据。 在默认启用通道合并(即 )的情况下,PyOpenEXR 包装器会将例如 、 和 这类通道组合到一个单一的 RGB 样本数组中。然而, 方法中的车道(lane)偏移量计算仅能识别完

CVSS 4.3 · Medium

Possible ATT&CK Techniques 1 AI

T1059 · Command and Scripting Interpreter

Affected Version Matrix 2

VendorProduct Version RangeStatus
AcademySoftwareFoundation openexr >= 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-62986

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: PyOpenEXR deep prefixed RGB stale lane disclosure
Source: CVE Program / CVE List V5
Vulnerability Description
OpenEXR is the reference implementation and specification for the EXR image file format, widely used in the motion picture industry. In versions 3.3.0 through 3.3.12 and 3.4.0 through 3.4.13, the PyOpenEXR Python bindings return stale heap data when reading a crafted deep scanline EXR that uses layer-prefixed RGB channels. With the default channel coalescing (separate_channels=False), the wrapper groups channels such as left.R, left.G, and left.B into a single RGB sample array, but the lane-offset calculation in PyPart::setDeepSliceData() only recognizes the exact unprefixed names G, B, and A. As a result, prefixed channels like left.G and left.B are decoded into lane 0 while lanes 1 and 2 are left uninitialized and returned to Python. A Python application that reads untrusted deep EXR files through the default OpenEXR.File API and then logs, serializes, previews, or otherwise processes the resulting NumPy sample arrays may expose uninitialized same-process heap contents, in addition to receiving incorrect green and blue channel data. This issue is fixed in versions 3.3.13 and 3.4.14.
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:N
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.3.0, < 3.3.13 -

II. Public POCs for CVE-2026-62986

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-62986

登录查看更多情报信息。

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

Vendor Advisories for CVE-2026-62986 (1)

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

CVE-2026-59982 7.1 HIGH OpenEXR: DWAA InputFile AC buffer overflow on ILP32 platforms
CVE-2026-59981 7.1 HIGH OpenEXR: Heap OOB read in SampleCountChannel row when using nonzero dataWindow
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-59189 7.1 HIGH OpenEXR: Out-of-bounds read in DeepImageChannel::row() for non-zero dataWindow origin
CVE-2026-59187 7.1 HIGH OpenEXR: exrmetrics deep pixelmode heap buffer overflow
CVE-2026-59186 7.1 HIGH OpenEXR: Heap out-of-bounds write in TiledRgbaInputFile via integer overflow on 32-bit (IL
CVE-2026-59184 7.1 HIGH OpenEXR: OpenEXRUtil FlatImageChannel row nonzero dataWindow heap OOB write
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-59983 5.5 MEDIUM OpenEXR: Out-of-bounds read in DeepTiledInputFile sample-count table decode on ILP32
CVE-2026-59985 5.5 MEDIUM OpenEXR: Heap out-of-bounds read in OpenEXRCore RLE decoding on ILP32
CVE-2026-61555 5.5 MEDIUM OpenEXR: Empty multiView viewFromChannelName file crash
CVE-2026-68514 5.5 MEDIUM OpenEXR: Heap buffer overflow in PyOpenEXR from literal/prefixed RGB channel name collisio
CVE-2026-59183 5.5 MEDIUM OpenEXR: Signed Integer Overflow Leading to Out-of-Bounds Memory Access in Deep Tile Decod
CVE-2026-54920 OpenEXR: Integer overflow and uninitialized pointer cause invalid delete in OpenEXRUtil im

IV. Related Vulnerabilities

V. Comments for CVE-2026-62986

No comments yet


Leave a comment