CVE-2026-24405: 
Homebrew vulnerability analysis and mitigation

Overview

CVE-2026-24405 is a heap-based buffer overflow vulnerability in the CIccMpeCalculator::Read() function of iccDEV, a library and toolset for interacting with ICC color management profiles maintained by the International Color Consortium. It affects iccDEV versions 2.3.1.1 and below, and was disclosed on January 24, 2026, with the initial bug report filed on January 18, 2026. The vulnerability carries a CVSS v3.1 base score of 8.8 (High) (GitHub Advisory, Red Hat CVE).

Technical details

The root cause is improper input validation (CWE-20) leading to a heap-based buffer overflow (CWE-122) in IccProfLib/IccMpeCalc.cpp at line 4698. When parsing the nSubElem field from an ICC profile's Multi-Process Element (MPE) calculator tag, the code allocates memory based on a user-controlled 32-bit integer without enforcing an upper bound, allowing an attacker to supply an excessively large value that causes a heap buffer overflow during subsequent reads. The fix adds a cap of 65,536 subelements (MAX_CALC_ELEMENTS) before the allocation occurs. A proof-of-concept malicious ICC file (heap-buffer-overflow-CIccMpeCalculatorRead-IccProfLibIccMpeCalc_cpp-Line4677.icc) was publicly demonstrated using the iccToXml tool, triggering the overflow and confirmed via AddressSanitizer (GitHub Issue #479, Patch Commit).

Impact

Successful exploitation can result in denial of service (application crash), data manipulation, bypass of application logic, and potentially arbitrary code execution in contexts where vulnerable native libraries process the malformed ICC profile. Because ICC profiles are commonly embedded in images and documents processed by downstream applications (e.g., image editors, print pipelines, browsers with color management), the attack surface extends to any software that uses iccDEV to parse untrusted profile data. All three security pillars — confidentiality, integrity, and availability — are rated High in the CVSS scoring (GitHub Advisory).

Exploitability

A public proof-of-concept exploit file is available in the xsscx Commodity Injection Signatures repository and was referenced in the original GitHub issue report (GitHub Issue #479). Exploitation requires user interaction (e.g., opening or processing a malicious ICC profile) but no authentication or special privileges. There is no confirmed evidence of in-the-wild exploitation at this time, and the vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. The EPSS score is approximately 0.062%, indicating a currently low probability of active exploitation (Feedly).

Exploitation steps

  1. Craft a malicious ICC profile: Create or obtain a specially crafted ICC profile file with an inflated nSubElem value in the Multi-Process Element (MPE) calculator tag. A ready-made PoC file is publicly available in the xsscx Commodity Injection Signatures repository.
  2. Deliver the payload: Distribute the malicious .icc file via a web page, email attachment, image upload, or any channel where the target application processes ICC profiles from untrusted sources.
  3. Trigger parsing: Induce the victim to open or process the file using an application that relies on iccDEV (e.g., running iccToXml malicious.icc output.xml or any image-processing pipeline that calls CIccProfile::Read()).
  4. Trigger the overflow: The CIccMpeCalculator::Read() function reads the oversized nSubElem value, allocates an undersized heap buffer, and then performs a READ of 4 bytes beyond the allocated region at IccMpeCalc.cpp:4698, causing a heap buffer overflow.
  5. Achieve impact: Depending on heap layout and platform mitigations, the overflow may crash the application (DoS), corrupt adjacent heap metadata to manipulate data or bypass logic, or — in a favorable memory layout — enable arbitrary code execution (GitHub Issue #479, GitHub Advisory).

Indicators of compromise

  • File System: Presence of unexpected or externally sourced .icc files in directories processed by iccDEV-based applications; files matching the known PoC filename pattern heap-buffer-overflow-CIccMpeCalculatorRead-IccProfLibIccMpeCalc_cpp-Line4677.icc.
  • Process: Application crashes or abnormal termination of processes invoking iccToXml, iccApplyProfiles, or other iccDEV tools when processing ICC files; AddressSanitizer output referencing CIccMpeCalculator::Read() at IccMpeCalc.cpp:4698.
  • Logs: Crash dumps or core files generated by iccDEV-linked applications; error logs containing stack traces referencing CIccMpeCalculator::Read, CIccTagMultiProcessElement::Read, or CIccProfile::LoadTag; ASan reports with heap-buffer-overflow at address offsets consistent with the PoC.
  • Network: Unexpected downloads of .icc files from external or untrusted sources to systems running iccDEV-based tooling (GitHub Issue #479).

Mitigation and workarounds

Upgrade iccDEV to version 2.3.1.2 or later, which limits the number of MPE calculator subelements to a maximum of 65,536 to prevent the overflow and excessive allocation. No official workarounds are provided by the vendor for systems that cannot immediately upgrade. Organizations processing ICC profiles from untrusted sources should prioritize this patch given the CVSS 8.8 (High) score and the availability of a public PoC (GitHub Advisory, Patch Commit).

Community reactions

The vulnerability received coverage from The Hacker Wire and was noted in CISA's vulnerability bulletin for the week of January 19, 2026. Red Hat tracked the CVE and published an advisory entry. Social media activity was observed on Mastodon and Bluesky shortly after disclosure. Community sentiment was generally focused on the availability of a patch and the public PoC, with no major controversy or widespread alarm noted (Red Hat CVE, CISA Bulletin).

Additional resources


Source: This report was generated using AI

Related Homebrew vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-112390HIGH8.2
  • Python logoPython
  • open-webui
NoYesOct 19, 2026
CVE-2026-14511MEDIUM6.5
  • IBM WebSphere MQ logoIBM WebSphere MQ
  • cpe:2.3:a:ibm:mq
NoNoOct 19, 2026
CVE-2026-112778MEDIUM6.4
  • NixOS logoNixOS
  • traefik
NoYesOct 19, 2026
CVE-2026-112391MEDIUM6.3
  • Python logoPython
  • nemo-gym
NoYesOct 19, 2026
CVE-2026-111678MEDIUM4.8
  • NixOS logoNixOS
  • antiword
NoNoOct 16, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Additional Wiz resources

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management