CVE-2026-43903 OpenImageIO: SGI RLE decoder heap buffer overflow OIIO_DASSERT bounds checks are no-ops in release builds

High 8.4 Published Updated

A heap buffer overflow in OpenImageIO's SGI RLE decoder allows attackers to cause crashes or potentially execute code via crafted image files.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Local or same network only
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2026-43903?

CVE-2026-43903 is a high-severity memory corruption vulnerability in Openimageio Openimageio, published on 14 May 2026. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.

Official description

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.

Weakness: CWE-787

Which versions are affected by CVE-2026-43903?

It affects 1 product.

Products include Openimageio Openimageio.

How do I fix CVE-2026-43903?

Upgrade to a fixed version.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is CVE-2026-43903 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-43903 exists.

All Openimageio Openimageio vulnerabilities

Sources

Also known as DEBIAN-CVE-2026-43903, GHSA-jg3q-vm3q-2j35, UBUNTU-CVE-2026-43903.

Is CVE-2026-43903 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free