Iccdev
CVE-2026-34536
MEDIUM
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Recursion depth limits
|
| Impact | CVSS 6.2 with local attack vector (AV:L), no privileges required (PR:N), and no user interaction (UI:N) indicates moderate severity with high availability impact (A:H). However, the attack is limited to local file processing-a remote attacker cannot directly trigger this without first delivering a malicious ICC profile through an application accepting untrusted profile uploads. The denial-of-service impact is significant but not critical; no confidentiality or integrity compromise occurs. Real-world risk depends heavily on deployment context: graphic design tools, image processing servers, or automated ICC profile validation pipelines face higher risk if they process untrusted profiles. The uncontrolled recursion flaw is a known architectural weakness; the low attack complexity means exploitation is straightforward once a malicious profile is crafted. This is a legitimate priority for applications processing user-supplied ICC profiles, but secondary for systems with strict input validation. |
| Exploit ScenarioDerived | An attacker crafts a malicious ICC color profile containing deeply nested or cyclical calculator operations designed to trigger recursive calls in SIccCalcOp::ArgsUsed(). When a user opens this profile in a graphic design application or an automated image processing pipeline processes it via iccApplyProfiles, the stack overflows and the application crashes, resulting in denial of service. Attack complexity is low because the attacker simply needs to deliver the malicious profile file-no special privileges or user interaction beyond opening or processing the file is required. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Mar 31, 2026
Stack overflow in iccDEV's SIccCalcOp::ArgsUsed() function allows local attackers to trigger a denial of service by supplying a crafted ICC color profile to iccApplyProfiles. The vulnerability affects iccDEV versions prior to 2.3.1.6 and requires no authentication or user interaction; exploitation manifests as application crash during calculator argument computation. No public exploit code or active exploitation has been identified at time of analysis.
RemediationAI
Vendor-released patch: iccDEV version 2.3.1.6 or later. Applications using iccDEV should update their dependencies to the patched version immediately. Users unable to upgrade should implement input validation on ICC profile files, rejecting profiles from untrusted sources or those with suspicious calculator operation structures. The fix is available in the official repository (https://github.com/InternationalColorConsortium/iccDEV/pull/684). Additional defense-in-depth measures include running ICC profile processing in a sandboxed environment or with resource limits (stack size limits via ulimit) to prevent complete system impact.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
iccDEV is a C++ library implementing ICC color profile management, used for reading and processing color management data in imaging workflows. The vulnerability exists in the SIccCalcOp::ArgsUsed() function, which is called during stack-based calculator evaluation when processing ICC profile data. The root cause (CWE-674: Uncontrolled Recursion) indicates the function does not properly limit recursive depth or stack usage when parsing maliciously crafted profile structures. When iccApplyProfiles processes an ICC profile containing specially crafted calculator operations, the recursive call chain in ArgsUsed() exhausts the stack without proper bounds checking, leading to stack overflow. The local attack vector and low attack complexity suggest the attacker simply needs to provide a malicious ICC file to an application using iccDEV.
Know when Iccdev 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
AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
DescriptionGitHub Advisory
iccDEV provides a set of libraries and tools for working with ICC color management profiles. Prior to version 2.3.1.6, a crafted ICC profile can trigger a stack overflow (SO) in SIccCalcOp::ArgsUsed(). The issue is observable under AddressSanitizer as a stack-overflow when iccApplyProfiles processes a malicious profile, with the crash occurring while computing argument usage during calculator underflow/overflow checks. This issue has been patched in version 2.3.1.6.
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
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Affected Products (CPE)GitHub Advisory
iccDEV ICC color profile library (through 2.3.1) has a use-after-free in CIccXform::Create() when processing hint object
Heap buffer overflow in iccDEV versions 2.3.1.1 and below allows remote code execution through maliciously crafted ICC c
Heap buffer overflow in iccDEV versions 2.3.1.1 and below allows remote code execution when processing maliciously craft
Heap buffer overflow in iccDEV versions 2.3.1.1 and earlier allows remote code execution through maliciously crafted ICC
Type confusion in iccDEV library versions before 2.3.1.2 allows unauthenticated attackers to achieve remote code executi
iccDEV color management library versions 2.3.1 and earlier contain undefined behavior in the CLUT initialization functio
iccDEV ICC color profile libraries versions 2.3.1.1 and earlier suffer from undefined behavior and out-of-memory errors
Heap buffer overflow in iccDEV versions before 2.3.1.2 allows remote code execution when processing malicious ICC color
Type confusion in iccDEV versions before 2.3.1.2 allows attackers to corrupt memory and achieve high-impact outcomes inc
Type confusion in iccDEV versions before 2.3.1.2 allows unauthenticated attackers to achieve remote code execution throu
Heap buffer overflow in iccDEV versions before 2.3.1.2 allows remote code execution when processing malicious ICC color
Heap buffer overflow in iccDEV versions prior to 2.3.1.2 allows remote attackers to execute arbitrary code through the C
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB