CVE-2026-30983: 
Homebrew vulnerability analysis and mitigation

Overview

CVE-2026-30983 is a stack-based buffer overflow vulnerability in the icFixXml() function of iccDEV, a set of libraries and tools for working with ICC color management profiles maintained by the International Color Consortium. The vulnerability affects all iccDEV versions prior to 2.3.1.5 and was discovered and reported by researcher xsscx on February 27, 2026, with the fix merged on March 1, 2026, and the patched release published on March 8, 2026. It carries a CVSS v3.1 base score of 7.8 (High) (GitHub Advisory, Red Hat CVE).

Technical details

The root cause is an unsafe use of strcpy in icFixXml() at IccXML/IccLibXML/IccUtilXml.cpp:314, which copies input data into a stack-allocated buffer without validating that the input size is within the buffer's bounds (CWE-120, CWE-121, CWE-787). This results in a 7-byte write stack buffer overflow, corrupting adjacent stack memory. Exploitation requires a local attack vector and user interaction — specifically, a user must open or process a maliciously crafted ICC color profile file (e.g., via the iccToXml tool), which triggers the overflow through the call chain: main → CIccProfileXml::ToXml() → CIccTagXmlNamedColor2::ToXml() → icFixXml(). The fix, contributed by ChrisCoxArt in PR #634, ensures that prefix and suffix buffers are properly null-terminated before the copy operation (GitHub Issue #624, GitHub PR #634).

Impact

Successful exploitation can result in stack memory corruption, application crash (denial of service), and potentially arbitrary code execution in the context of the user running the iccDEV tool. The CVSS assessment rates confidentiality, integrity, and availability impacts all as High, meaning an attacker could potentially read sensitive stack memory, alter program execution flow, or cause a crash. Because the attack vector is local and requires user interaction (opening a malicious ICC profile), the blast radius is limited to the affected workstation or system processing the file, with no direct network-based lateral movement path (GitHub Advisory).

Exploitability

No public proof-of-concept exploit code has been released beyond the fuzzer-generated test case (a malicious .icc file) used to reproduce the issue during responsible disclosure. There is no evidence of in-the-wild exploitation, no known threat actor attribution, and the vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. The EPSS score is approximately 0.014% (0.000140), indicating a very low probability of exploitation in the near term (GitHub Issue #624, Red Hat CVE).

Exploitation steps

  1. Craft a malicious ICC profile: Create or obtain a specially crafted ICC color profile file (.icc) containing a named color tag with an oversized prefix or suffix string that exceeds the fixed-size stack buffer in icFixXml(). The researcher's fuzzer-generated PoC file (sbo-icFixXml-IccUtilXml_cpp-Line314.icc) is publicly referenced as a reproduction artifact.
  2. Deliver the file to the target: Use social engineering, a shared file system, or a malicious download to place the crafted .icc file on a system where iccDEV tools are installed.
  3. Trigger processing: Induce the target user to process the file using an iccDEV tool such as iccToXml, e.g., iccToXml malicious.icc output.xml. This triggers the call chain through CIccTagXmlNamedColor2::ToXml() into icFixXml() at IccUtilXml.cpp:314.
  4. Overflow the stack buffer: The unsafe strcpy call writes beyond the 256-byte fix stack buffer, corrupting adjacent stack memory including saved return addresses or other local variables.
  5. Achieve objective: Depending on memory layout and platform mitigations, the outcome ranges from a crash (denial of service) to potential control of the instruction pointer for arbitrary code execution in the context of the user running the tool (GitHub Issue #624, GitHub Advisory).

Indicators of compromise

  • File System: Presence of unexpected or externally sourced .icc files in user download directories, temp folders, or shared drives; particularly files with unusually large named color tag prefix/suffix fields.
  • Process: Unexpected crashes or abnormal termination of iccToXml, iccFromXml, or other iccDEV tools; crash dump files (core dumps on Linux, minidumps on Windows) generated by these processes.
  • Logs: AddressSanitizer output (if enabled) referencing stack-buffer-overflow in strcpy at IccUtilXml.cpp:314; application error logs showing abrupt termination of iccDEV processes.
  • Network: Unusual downloads of .icc files from untrusted or external sources to systems running iccDEV tools (GitHub Issue #624).

Mitigation and workarounds

Upgrade iccDEV to version 2.3.1.5 or later, which contains the fix ensuring prefix and suffix buffers are properly null-terminated before the strcpy call in icFixXml(). No official workarounds are provided by the maintainers. As an interim measure, restrict users from opening untrusted or externally sourced ICC color profile files with iccDEV tools, and monitor for unexpected application crashes as a potential indicator of exploitation attempts (GitHub Release v2.3.1.5, GitHub Advisory).

Community reactions

The vulnerability received limited but standard community coverage, with automated CVE tracking services (CVEfeed, VulDB, Radar Offseq) and social media accounts (Mastodon, Bluesky, Nitter/CVEnew) picking up the disclosure shortly after publication. No notable independent researcher commentary or major media coverage has been identified beyond routine vulnerability aggregation. Red Hat acknowledged the CVE in their security tracking system on March 26, 2026 (Red Hat CVE).

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-112393CRITICAL9.2
  • Python logoPython
  • open-webui
NoYesOct 19, 2026
CVE-2026-112392HIGH8.2
  • Python logoPython
  • pillow-python2
NoYesOct 19, 2026
CVE-2026-112395HIGH8.2
  • Python logoPython
  • kubeflow-pipelines-visualization-server
NoYesOct 19, 2026
CVE-2026-112396HIGH7.5
  • Python logoPython
  • pillow-python2
NoYesOct 19, 2026
CVE-2026-112394MEDIUM6.3
  • Python logoPython
  • python-pillow
NoYesOct 19, 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