CVE-2023-22845

7.5 HIGH

📋 TL;DR

An out-of-bounds read vulnerability in OpenImageIO's TGA file parser allows attackers to read memory beyond allocated buffers via specially crafted Targa files. This can lead to information disclosure of sensitive data from the application's memory. Affects systems processing TGA files with OpenImageIO v2.4.7.1.

💻 Affected Systems

Products:
  • OpenImageIO
Versions: v2.4.7.1
Operating Systems: All platforms running OpenImageIO
Default Config Vulnerable: ⚠️ Yes
Notes: Any application using OpenImageIO to process TGA files is vulnerable. The vulnerability is in the TGAInput::decode_pixel() function.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Memory contents including sensitive data like passwords, keys, or other application data could be exfiltrated, potentially enabling further attacks.

🟠

Likely Case

Application crashes or information leakage from memory, possibly revealing internal data structures or partial memory contents.

🟢

If Mitigated

With proper input validation and memory protections, impact limited to application instability or denial of service.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: LOW

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires providing a malicious TGA file to the vulnerable application. The vulnerability is in file parsing code.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: v2.4.8.0 or later

Vendor Advisory: https://github.com/OpenImageIO/oiio/security/advisories/GHSA-5j5x-g36c-8x4v

Restart Required: Yes

Instructions:

1. Update OpenImageIO to version 2.4.8.0 or later. 2. Rebuild any applications using OpenImageIO. 3. Restart affected services.

🔧 Temporary Workarounds

Disable TGA file processing

all

Configure applications to reject or not process TGA files

Input validation

all

Implement file type validation before passing to OpenImageIO

🧯 If You Can't Patch

  • Implement strict file upload controls to block TGA files
  • Run OpenImageIO in sandboxed/isolated environment with limited memory access

🔍 How to Verify

Check if Vulnerable:

Check OpenImageIO version: oiiotool --version

Check Version:

oiiotool --version | grep -i version

Verify Fix Applied:

Verify version is 2.4.8.0 or later and test with known malicious TGA files

📡 Detection & Monitoring

Log Indicators:

  • Application crashes when processing TGA files
  • Memory access violation errors
  • Unexpected file parsing errors

Network Indicators:

  • Uploads of TGA files to vulnerable endpoints
  • Unusual file transfer patterns

SIEM Query:

source="application.log" AND ("segmentation fault" OR "access violation" OR "out of bounds") AND "tga"

🔗 References

📤 Share & Export