CVE-2022-38529
High · 7.8CVSS
7.8
EPSS
0.3%
Published
Sep 6, 2022
CISA due date
—
Cloudanix analysis
A bug in software that reads certain image files could let an attacker run harmful code on a computer simply by getting the user to open a bad picture.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Full Compromise
- Component
- Library
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Heap buffer overflow in rleUncompress during RLE decompression of EXR image data, enabling out-of-bounds memory writes.
Why it matters to the business
Applications handling untrusted EXR files risk crashes or arbitrary code execution, potentially disrupting image-processing pipelines or enabling system compromise.
How an attack unfolds
An attacker supplies a malformed EXR file containing crafted RLE data that triggers the overflow in rleUncompress when the library parses the file.
How to fix it
Upgrade tinyexr to a commit after 0647fb3 that resolves the bounds issue in rleUncompress; where updates are unavailable, sandbox image processing or reject untrusted EXR inputs.
How to confirm the fix worked
Rebuild with address sanitizer and replay known triggering EXR samples, or inspect source for proper buffer sizing before rleUncompress calls.
Typical attack path
- Craft malicious EXR file with oversized RLE payload
- Deliver file via email, web download, or shared storage
- Victim application opens the file using the vulnerable tinyexr library
- Overflow occurs during decompression leading to code execution or denial of service
How to detect it
Search application and system logs for segmentation faults or heap errors immediately after EXR file access; correlate with file-creation timestamps from untrusted sources.
What your security team should do
- Inventory all products shipping tinyexr and schedule upgrades
- Apply strict file-type and size controls on EXR ingestion points
- Add runtime memory-error monitoring around image decoders
The record
tinyexr commit 0647fb3 was discovered to contain a heap-buffer overflow via the component rleUncompress.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | tinyexr | 0 | 1.0.0+dfsg-1+deb11u1 |
| Debian:12 | tinyexr | 0 | 1.0.1+dfsg-4 |
| Debian:13 | tinyexr | 0 | 1.0.1+dfsg-4 |
| Ubuntu:22.04:LTS | tinyexr | 0 | No fix |
| Ubuntu:24.04:LTS | tinyexr | 0 | No fix |
| Ubuntu:24.10 | tinyexr | 0 | No fix |
| Ubuntu:25.04 | tinyexr | 0 | No fix |
| Ubuntu:25.10 | tinyexr | 0 | No fix |
Related vulnerabilities
- CVE-2026-111497 A buffer overflow vulnerability in the Brotli decoder (c/dec/decode.c) in Google Brotli… CWE-787
- CVE-2026-112397 Pillow is a Python imaging library. CWE-787
- CVE-2026-112059 libLAS through 1.8.1 contains a heap out-of-bounds write vulnerability in the point… CWE-787
- CVE-2026-89088 A flaw was found in parted. CWE-787
- CVE-2026-89085 A flaw was found in parted. CWE-787
- CVE-2026-85746 MariaDB server is a community developed fork of MySQL server. CWE-787
- CVE-2026-107815 MariaDB server is a community developed fork of MySQL server. CWE-787
- CVE-2026-56851 The Nickname profile can panic with an out-of-bounds slice error when transforming… CWE-787