CVE-2026-21691

5.4 MEDIUM

📋 TL;DR

A type confusion vulnerability in iccDEV's CIccTag::IsTypeCompressed() function allows attackers to potentially execute arbitrary code or cause denial of service by processing malicious ICC color profiles. This affects all users of iccDEV library versions prior to 2.3.1.2 who handle ICC color profiles in their applications.

💻 Affected Systems

Products:
  • iccDEV library
  • Applications using iccDEV for ICC profile processing
Versions: All versions prior to 2.3.1.2
Operating Systems: All platforms where iccDEV is used
Default Config Vulnerable: ⚠️ Yes
Notes: Any application linking against vulnerable iccDEV versions is affected when processing ICC profiles.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete system compromise if the vulnerable library processes attacker-controlled ICC profiles.

🟠

Likely Case

Application crash or denial of service when processing malformed ICC profiles.

🟢

If Mitigated

Limited impact if the library only processes trusted ICC profiles from controlled sources.

🌐 Internet-Facing: MEDIUM - Applications that accept user-uploaded ICC profiles or process external content are at risk.
🏢 Internal Only: LOW - Internal systems processing only trusted ICC profiles have minimal exposure.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

Exploitation requires the application to process a malicious ICC profile, which could be delivered via various vectors.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.3.1.2

Vendor Advisory: https://github.com/InternationalColorConsortium/iccDEV/security/advisories/GHSA-c9q5-x498-jv92

Restart Required: Yes

Instructions:

1. Identify applications using iccDEV
2. Update iccDEV to version 2.3.1.2 or later
3. Recompile applications with updated library
4. Restart affected services

🧯 If You Can't Patch

  • Restrict ICC profile processing to trusted sources only
  • Implement input validation and sanitization for ICC profile data

🔍 How to Verify

Check if Vulnerable:

Check linked libraries for iccDEV version < 2.3.1.2 using ldd (Linux) or dependency walker tools

Check Version:

Check library version in build configuration or use: strings /path/to/libiccdev.so | grep 'iccDEV version'

Verify Fix Applied:

Verify iccDEV version is 2.3.1.2 or later in application dependencies

📡 Detection & Monitoring

Log Indicators:

  • Application crashes when processing ICC profiles
  • Memory access violation errors in application logs

Network Indicators:

  • Unexpected ICC profile uploads to applications
  • Suspicious file transfers containing .icc/.icm files

SIEM Query:

source="application_logs" AND ("segmentation fault" OR "access violation" OR "type confusion") AND "icc"

🔗 References

📤 Share & Export