
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-120208 is a heap-based buffer overflow vulnerability in libheif's ISO/IEC 23001-17 uncompressed-image (unci) mixed-interleave decoder, specifically in the unc_decoder_mixed_interleave::processTile() function. It affects libheif versions 1.18.0 through 1.23.2 (inclusive), and was disclosed on October 31, 2026, with a patch released in version 1.23.3. The vulnerability allows an attacker to trigger file-controlled heap out-of-bounds writes by crafting a HEIF image with chroma components (Cb and Cr) declaring unequal bit depths. It carries a CVSS v3.1 base score of 7.5 (High) and a CVSS v4.0 base score of 7.7 (High) (Feedly, GitHub Advisory).
The root cause (CWE-787: Out-of-bounds Write; CWE-122: Heap-based Buffer Overflow) lies in unc_decoder_mixed_interleave::processTile(), which processes both Cb and Cr chroma planes using only the byte width of whichever chroma component is declared first in the uncC component list. Each chroma plane is allocated according to its own component's bit depth, but the code reuses the first component's bytes_per_component_sample for both writes. A crafted HEIF file declaring, for example, 16-bit Cb and 8-bit Cr causes the Cr plane (allocated for 1 byte/sample) to receive 2-byte writes, overrunning the heap allocation once per chroma sample with attacker-controlled bytes (GitHub Advisory). The vulnerable code path is unc_decoder_mixed_interleave.cc:101 → unc_decoder_legacybase::memcpy_to_native_endian(), and exploitation requires libheif to be built with WITH_UNCOMPRESSED_CODEC=ON (libheif source). A proof-of-concept HEIF file (overflow.heif) and generator script (poc.py) were submitted with the advisory, and the overflow was confirmed with AddressSanitizer against the official libheif 1.23.2 release (GitHub Advisory).
Successful exploitation results in an attacker-controlled heap out-of-bounds write, which can corrupt adjacent heap data at a scale proportional to the chroma-plane dimensions. In a demonstrated WordPress 7.1 deployment using PHP Imagick, ImageMagick, and libheif 1.23.2, a researcher achieved arbitrary file read (e.g., /etc/passwd) and arbitrary PHP code execution on the server, with the self-copy exploit succeeding in 29 of 30 independent attempts (GitHub Advisory). The impact is deployment-specific and depends on exact architecture, ABI, library builds, and heap behavior; a complete portable RCE has not been demonstrated, but confidentiality, integrity, and availability are all rated High (Feedly).
A proof-of-concept HEIF file and Python generator script were included in the original advisory submission, but no public PoC has been released as of disclosure (Feedly). There is no evidence of in-the-wild exploitation at this time, and the vulnerability is not listed in the CISA KEV catalog. The EPSS score is 0.0, reflecting the absence of observed exploitation (EUVD). Exploitation requires user interaction (a victim or server-side pipeline must process a malicious HEIF file) and specific build conditions (WITH_UNCOMPRESSED_CODEC=ON), which moderately limits the attack surface. The vulnerability was discovered by Alex Thomas (Wordfence) using the Wordfence Argus agentic adversarial testing framework during a WordPress 7.1 security assessment (GitHub Advisory).
poc.py generator or manually, construct a HEIF unci image with mixed-interleave YCbCr 4:2:0 encoding, declaring Y=8-bit, Cb=16-bit, and Cr=8-bit components. The Cr plane will be allocated for 1 byte/sample while the decoder will write 2 bytes/sample to it.WITH_UNCOMPRESSED_CODEC=ON (e.g., a WordPress site using PHP Imagick/ImageMagick with libheif support).overflow.heif to the target's image-processing pipeline (e.g., via a WordPress Media Library upload as an Author-level user or higher).unc_decoder_mixed_interleave::processTile() processes both chroma planes using the Cb byte width (2 bytes), overrunning the Cr heap allocation once per chroma sample with attacker-controlled bytes./etc/passwd to a web-accessible path), or achieve code execution (e.g., write a PHP webshell to a publicly accessible directory) (GitHub Advisory)..php files in WordPress wp-content/uploads/); copies of sensitive system files (e.g., /etc/passwd) appearing in public directories; HEIF files with unusual uncC component declarations (Y=8-bit, Cb=16-bit, Cr=8-bit, mixed interleave, 4:2:0 sampling).heap-buffer-overflow WRITE in unc_decoder_legacybase::memcpy_to_native_endian() or unc_decoder_mixed_interleave::processTile().SIGABRT signals from image-processing daemons with double free or corruption messages.Upgrade libheif to version 1.23.3 or later, which is ABI- and API-compatible with 1.23.2 and serves as a drop-in replacement; the fix tracks each chroma plane's own byte width independently in ChannelListEntry (libheif v1.23.3 release, fix commit). As an interim workaround, restrict processing of HEIF images from untrusted sources, implement input validation to reject malformed HEIF files before they reach libheif, and consider disabling HEIF support entirely if not actively required (Feedly). Organizations using libheif in server-side image pipelines (e.g., WordPress with Imagick) should treat this as a priority upgrade given the demonstrated file-read and code-execution potential in specific deployments.
The vulnerability was discovered by Alex Thomas of Wordfence using the Wordfence Argus agentic adversarial testing framework during a WordPress 7.1 security assessment, and the advisory credits both the human researcher and the AI framework (GitHub Advisory). The libheif maintainer (farindk) rated the issue critical and released v1.23.3 as a security release, strongly advising all users to upgrade (libheif v1.23.3 release). The disclosure attracted automated tracking across vulnerability aggregators and social platforms including Mastodon (infosec.exchange) and Bluesky shortly after publication, reflecting standard community monitoring of high-severity image-parsing vulnerabilities.
Fix availability across major Linux distributions and their releases.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."