Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessDeliver weaponized .sgi file
-
DeliverySocial engineer victim to open image
-
ExploitTrigger RLE decoder in OpenImageIO
-
ExecutionOverflow heap buffer with crafted count
-
PersistOverwrite function pointers or metadata
-
ImpactExecute arbitrary code with user privileges
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, write limits
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires victim to process a malicious SGI format (.sgi, .rgb, .rgba, .bw, .int, .inta) image file using an application built against vulnerable OpenImageIO versions (pre-3.0.18.0 or 3.1.x before 3.1.13.0) in release build configuration. The SGI file must use RLE compression (not all SGI files do) with crafted count fields exceeding scanline dimensions. User interaction is mandatory (UI:A in CVSS) - the file must be explicitly opened or processed by the victim. Exploitation is LIMITED by requiring local file access (AV:L) rather than remote network delivery, though files can arrive via email attachments, cloud storage, or supply chain (malicious asset libraries). Defense is complicated by SGI format legitimacy in VFX workflows where blocking the format entirely disrupts production. |
| Impact | Real-world risk is MODERATE despite the 8.4 CVSS score. CVSS vector (AV:L/AC:L/PR:N/UI:A) indicates local attack requiring user interaction - attacker must deliver a malicious .sgi file and convince a user to open it, limiting remote exploitation scenarios. SSVC framework classifies this as POC exploitation (publicly available proof-of-concept exists), non-automatable (requires social engineering), with total technical impact (arbitrary code execution). However, no active exploitation confirmed (not in CISA KEV, EPSS data unavailable suggests low observed targeting). The attack surface is significant in VFX/animation studios where OpenImageIO processes untrusted image assets from external sources, vendors, or public repositories. Priority should be HIGH for organizations in media production pipelines, MEDIUM for general enterprise environments where SGI format processing is rare. The presence of POC code elevates risk from theoretical to practical, though the local+UI requirements prevent wormable exploitation. |
| Exploit ScenarioDerived | Attacker crafts a malicious .sgi image file with RLE-compressed scanline data containing a count value exceeding the declared scanline width. VFX artist receives the file via email, shared storage, or asset repository and opens it in compositing software (Nuke, Houdro, Blender) or image viewer using OpenImageIO. The RLE decoder writes attacker-controlled pixel data beyond the heap buffer boundary, corrupting adjacent memory structures to achieve code execution with the privileges of the rendering application, typically the user's full desktop access in production environments. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 14, 2026
Heap buffer overflow in OpenImageIO's SGI image decoder allows arbitrary code execution via specially crafted .sgi files. Affects versions before 3.0.18.0 and 3.1.13.0 when processing malicious SGI images with invalid RLE compression parameters. Publicly available exploit code exists (SSVC POC status confirmed). Attack requires local file access and user interaction to open the malicious file, but CVSS 8.4 reflects high impact potential (code execution) in VFX/animation production environments where SGI format handling is common. EPSS data unavailable, not listed in CISA KEV.
RemediationAI
Upgrade to OpenImageIO version 3.0.18.0 or later for the 3.0.x branch, or version 3.1.13.0 or later for the 3.1.x branch per vendor advisory at https://github.com/AcademySoftwareFoundation/OpenImageIO/security/advisories/GHSA-jg3q-vm3q-2j35. These versions replace OIIO_DASSERT with runtime bounds validation in the RLE decoder. If immediate patching is not feasible, implement file validation controls: restrict SGI file processing to trusted sources only, sandbox image processing workflows using containers or VMs with limited privileges, and deploy application whitelisting to prevent execution of payloads delivered via image files. Note that input filtering cannot reliably detect malicious RLE parameters without full format parsing, making patching the only comprehensive fix. Organizations using OpenImageIO as a dependency in proprietary applications must rebuild against patched library versions.
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 industry-standard library used in visual effects and animation pipelines for reading and writing numerous image formats including Silicon Graphics Image (SGI/RGB) files. The vulnerability stems from CWE-787 (Out-of-bounds Write) in the RLE (Run-Length Encoding) decompression routine within sgiinput.cpp. The code uses OIIO_DASSERT macros for bounds validation at lines 265 and 274, which are compiled to no-ops (void sizeof operations) in release builds per dassert.h:210. When processing SGI files with RLE-compressed scanlines, the decoder fails to validate that the RLE count value doesn't exceed the scanline width, allowing attacker-controlled data to write beyond allocated heap buffer boundaries. This affects the Academy Software Foundation's OpenImageIO library (CPE: cpe:2.3:a:academysoftwarefoundation:openimageio), a critical dependency in professional media production workflows.
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
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
4DescriptionCVE.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, sgiinput.cpp:265,274 use OIIO_DASSERT for bounds checking in the RLE decode loop. In release builds, OIIO_DASSERT compiles to ((void)sizeof(x)) (dassert.h:210), making all bounds checks no-ops. A crafted .sgi file with RLE count exceeding scanline width causes heap buffer overflow and crash. This vulnerability is fixed in 3.0.18.0 and 3.1.13.0.
Executive ViewAI
OpenImageIO versions before 3.0.18.0 and 3.1.13.0 contain a critical heap buffer overflow in SGI image processing that allows arbitrary code execution when users open malicious image files. Organizations using OpenImageIO for VFX, animation, or media production face direct risk of system compromise if staff open untrusted SGI files, potentially exposing production environments and sensitive project data.
Apply vendor patch. Until patching is complete: (1) restrict SGI file imports to pre-verified sources with cryptographic validation; (2) isolate systems accepting external SGI files on air-gapped networks or sandboxed environments; (3) disable SGI format support in OpenImageIO configuration if not actively required for workflows.
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.
Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.
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-30387
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB