AcademySoftwareFoundation OpenEXR up to 3.4.10 EXR Image internal_ht.cpp ht_undo_impl integer overflow
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 5.1 | $0-$5k | 2.16- |
Summary
A vulnerability was found in AcademySoftwareFoundation OpenEXR up to 3.4.10. It has been classified as problematic. The affected element is the function ht_undo_impl in the library src/lib/OpenEXRCore/internal_ht.cpp of the component EXR Image Handler. Performing a manipulation results in integer overflow.
This vulnerability is cataloged as CVE-2026-44663. The attack must be initiated from a local position. There is no exploit available.
Upgrading the affected component is recommended.
Details
A vulnerability, which was classified as problematic, was found in AcademySoftwareFoundation OpenEXR up to 3.4.10. This affects the function ht_undo_impl in the library src/lib/OpenEXRCore/internal_ht.cpp of the component EXR Image Handler. The manipulation with an unknown input leads to a integer overflow vulnerability. CWE is classifying the issue as CWE-190. The product performs a calculation that can produce an integer overflow or wraparound, when the logic assumes that the resulting value will always be larger than the original value. This can introduce other weaknesses when the calculation is used for resource management or execution control. This is going to have an impact on integrity, and availability. The summary by CVE is:
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.11, an integer overflow in ht_undo_impl() in src/lib/OpenEXRCore/internal_ht.cpp leads to a heap-buffer overflow when decoding a crafted HTJ2K-compressed EXR file. decode->channels[i].width (int32_t) is multiplied by bytes_per_element in 32-bit signed arithmetic. With large widths (e.g., >= 536870912 for FLOAT data), this overflows, producing a corrupted offset that is later used for pointer arithmetic and can cause a heap out-of-bounds write. The same unchecked multiplication pattern appears in two other HTJ2K paths (bytes-per-line accumulation and pixel-line pointer advancement). As with related CVE-2026-34378 through CVE-2026-34589 fixes in other codecs, validating only after the multiplication is too late because the value may already be overflowed. This issue has been fixed in version 3.4.12.
It is possible to read the advisory at github.com. This vulnerability is uniquely identified as CVE-2026-44663 since 05/07/2026. The exploitability is told to be easy. Attacking locally is a requirement. Technical details of the vulnerability are known, but there is no available exploit.
The vulnerability scanner Nessus provides a plugin with the ID 321448 (Python Library OpenEXR 3.4.x < 3.4.12 Multiple Vulnerabilities), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 3.4.11 eliminates this vulnerability. The upgrade is hosted for download at github.com.
The vulnerability is also documented in the vulnerability database at Tenable (321448). Be aware that VulDB is the high quality source for vulnerability data.
Product
Vendor
Name
Version
License
Website
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 5.2VulDB Meta Temp Score: 5.1
VulDB Base Score: 4.4
VulDB Temp Score: 4.2
VulDB Vector: 🔒
VulDB Reliability: 🔍
CNA Base Score: 6.1
CNA Vector (GitHub_M): 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Integer overflowCWE: CWE-190 / CWE-189
CAPEC: 🔒
ATT&CK: 🔒
Physical: Partially
Local: Yes
Remote: Partially
Availability: 🔒
Status: Not defined
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 321448
Nessus Name: Python Library OpenEXR 3.4.x < 3.4.12 Multiple Vulnerabilities
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: OpenEXR 3.4.11
Timeline
05/07/2026 CVE reserved06/19/2026 Advisory disclosed
06/19/2026 VulDB entry created
06/19/2026 VulDB entry last update
Sources
Product: github.comAdvisory: GHSA-777r-f9x8-7r84
Status: Confirmed
CVE: CVE-2026-44663 (🔒)
GCVE (CVE): GCVE-0-2026-44663
GCVE (VulDB): GCVE-100-372279
Entry
Created: 06/19/2026 07:47Updated: 06/19/2026 09:27
Changes: 06/19/2026 07:47 (67), 06/19/2026 09:27 (2)
Complete: 🔍
Cache ID: 216::103
Be aware that VulDB is the high quality source for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.