Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconCraft malicious TGA file with palette index overflow
-
DeliveryUser opens TGA in VFX software
-
ExploitOpenImageIO TGAInput decoder invoked
-
InstallInteger wrap-around bypasses bounds check
-
C2Out-of-bounds palette read triggered
-
ExecuteSegmentation fault
-
ImpactApplication crash
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK
1 technique across 1 tactic: Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the following specific conditions: (1) OpenImageIO version prior to 3.0.18.0 or 3.1.13.0 must be in use; (2) the attacker-controlled TGA image file must be processed by the TGAInput decoder, meaning it must be a valid TGA file format; (3) the TGA file must use indexed/palette color mode (palette data must be present in the file); (4) the palette index offset k must equal exactly 0xFFFFFFFC in the decoder context; (5) palbytespp (palette bytes per pixel) must equal 4; (6) a local user must open or load the malicious TGA file, either directly or as part of automated batch processing. The vulnerability does NOT require network access, does NOT require elevated privileges, and does NOT require prior authentication to the system. However, the user interaction requirement (UI:R per CVSS) means the attack cannot be fully automated; an attacker must either social-engineer file opening or place the malicious TGA in a location where it will be opened during normal workflow. The vulnerability is specific to TGA format processing - other image formats supported by OpenImageIO are not affected. |
| Impact | This vulnerability presents moderate but specific real-world risk. CVSS score of 5.5 with local attack vector (AV:L), low complexity (AC:L), no privileges required (PR:N), but mandatory user interaction (UI:R) accurately reflects the threat profile. The attack requires an end-user to manually open a specially crafted TGA image file, typically within VFX/animation software that uses OpenImageIO as its imaging backend. The impact is denial of service via segmentation fault - the application crashes when processing the malicious file. Exploitation probability (EPSS) cannot be assessed without score data, but the attack is deterministic once triggered: the integer overflow condition is mathematically guaranteed when the specific k and palbytespp values align. No active exploitation (KEV status unknown from input) or public exploit code (POC status unknown) is confirmed. The vulnerability is not remotely exploitable and requires no authentication, but the UI:R requirement significantly limits attack surface compared to automated exploitation. For VFX studios or animation teams using OpenImageIO, the risk is primarily supply-chain based: a malicious TGA file embedded in project assets could be opened by unknowing users, causing work interruption. Patching is straightforward and addresses a clear integer arithmetic flaw with no known workarounds. |
| Exploit ScenarioDerived | A VFX artist receives a project archive containing image assets from an external collaborator. The archive includes a specially crafted TGA file with a malicious palette index (k = 0xFFFFFFFC) and palette entry size of 4 bytes. When the artist opens the project in their VFX software (which uses OpenImageIO to load images), the application automatically loads the TGA file. The TGAInput decoder triggers the integer overflow, wraps the bounds check, and attempts to read palette data 4 GB beyond the buffer, causing a segmentation fault that crashes the application and potentially interrupts production work. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 14, 2026
Integer overflow in OpenImageIO TGA image decoder allows local attackers to trigger out-of-bounds buffer read and denial of service. When processing TGA image files, the bounds check in TGAInput::decode_pixel computes k + palbytespp using unsigned 32-bit arithmetic; specifically, when k equals 0xFFFFFFFC and palbytespp equals 4, the sum wraps to zero, bypassing the palette size validation. The subsequent palette access then uses the unwrapped value as an array index, reading approximately 4 GB past the palette buffer start, causing a segmentation fault. Affects OpenImageIO versions prior to 3.0.18.0 and 3.1.13.0; requires local file access and user interaction to open a malicious TGA file. CVSS score of 5.5 reflects local-only attack vector with high availability impact but no confidentiality or integrity impact.
RemediationAI
Upgrade to OpenImageIO 3.0.18.0 or later for the 3.0 branch, or 3.1.13.0 or later for the 3.1 branch. These patched versions correct the integer overflow by performing bounds checking using proper unsigned integer arithmetic or by adding additional validation before the palette access. The patch should be applied to all applications and libraries that depend on OpenImageIO, including VFX software, image processing tools, and animation pipelines. No workarounds are available; patching is the primary remediation. For organizations unable to immediately upgrade, mitigate risk by restricting file import to trusted TGA sources, disabling TGA format support if not essential to workflows, or isolating image processing operations in sandboxed environments to limit crash impact. Note that the latter mitigations do not prevent denial of service, only limit scope. Refer to the GitHub Advisory at https://github.com/AcademySoftwareFoundation/OpenImageIO/security/advisories/GHSA-mq8j-73c4-cr55 for release notes and migration guidance.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
OpenImageIO is an Academy Software Foundation library for image I/O operations in VFX/animation workflows. The vulnerability exists in the TGA (Truevision Graphics Adapter) image format decoder, specifically in the TGAInput::decode_pixel function that processes palette-based TGA images. The root cause is a classic integer overflow leading to insufficient bounds checking (CWE-125: Out-of-bounds Read). TGA files support indexed color modes with palette data; the decoder reads palette entries during decompression. The vulnerability exploits the implicit unsigned integer wrap-around behavior in C/C++: when k (current palette index) is 0xFFFFFFFC (4,294,967,292 in unsigned 32-bit terms) and palbytespp (palette bytes per pixel, typically 4) is added, the sum wraps from 0x100000000 back to 0x00000000, making the wrapped value appear valid against palette_alloc_size. However, the actual palette access then uses the original k value, resulting in a massive out-of-bounds read that causes a segmentation fault due to access to unmapped memory regions.
Know when Openimageio 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
AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
OpenImageIO is a toolset for reading, writing, and manipulating image files of any image file format relevant to VFX / animation. Prior to 3.0.18.0 and 3.1.13.0, the bounds check in TGAInput::decode_pixel computes k + palbytespp as unsigned 32-bit arithmetic. When k = 0xFFFFFFFC and palbytespp = 4, the addition wraps to 0, which compares less than palette_alloc_size and passes the check. The subsequent palette access uses the unwrapped k (0xFFFFFFFC) as the index, reading ~4 GB past the start of the palette buffer - SEGV. This vulnerability is fixed in 3.0.18.0 and 3.1.13.0.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
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.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
More in Openimageio
View allBuffer Overflow vulnerability in OpenImageIO oiio v.2.4.12.0 allows a remote attacker to execute arbitrary code and caus
A code execution vulnerability exists in the DDS scanline parsing functionality of OpenImageIO Project OpenImageIO v2.4.
An out-of-bounds write vulnerability exists in the OpenImageIO::add_exif_item_to_spec functionality of OpenImageIO Proje
A heap based buffer overflow vulnerability exists in the PSD thumbnail resource parsing code of OpenImageIO 2.3.19.0. Ra
A heap based buffer overflow vulnerability exists in tile decoding code of TIFF image parser in OpenImageIO master-branc
A heap out-of-bounds write vulnerability exists in the way OpenImageIO v2.3.19.0 processes RLE encoded BMP images. Rated
A heap out of bounds read vulnerability exists in the handling of IPTC data while parsing TIFF images in OpenImageIO v2.
An issue in OpenImageIO oiio v.2.4.12.0 allows a remote attacker to execute arbitrary code and cause a denial of service
Multiple code execution vulnerabilities exist in the IFFOutput::close() functionality of OpenImageIO Project OpenImageIO
Multiple code execution vulnerabilities exist in the IFFOutput::close() functionality of OpenImageIO Project OpenImageIO
Multiple code execution vulnerabilities exist in the IFFOutput::close() functionality of OpenImageIO Project OpenImageIO
Multiple code execution vulnerabilities exist in the IFFOutput::close() functionality of OpenImageIO Project OpenImageIO
EUVD-2026-30417
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB