Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft HEIF with iovl + mismatched alpha bit-depth
-
DeliveryDeliver file via email, web, or upload
-
ExploitVictim app invokes libheif decoder
-
ExecutionHeifPixelImage::overlay() over-reads alpha plane
-
PersistAdjacent heap bytes leak into output or process crashes
-
ImpactAttacker retrieves rendered image to harvest leaked memory
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK
1 technique across 1 tactic: Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the victim to open or process a crafted HEIF file with libheif ≤ 1.21.2, and the malicious file must include an overlay item (iovl box) whose referenced child image has a different bit depth for the alpha channel than for the color channels (e.g., 10-bit color with 8-bit alpha) - files without this bit-depth mismatch or without an iovl construction do not trigger the bug. Per the CVSS vector, attack is network-deliverable and unauthenticated but requires user interaction (UI:R), so it is gated on a user, automated thumbnailer, or server-side image pipeline actually invoking the libheif overlay code path on the attacker-supplied file. Heap-disclosure value is further limited to deployments that return the decoded image back to the attacker. |
| Impact | CVSS 7.1 (AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:H) reflects a network-reachable, unauthenticated bug that requires user interaction (opening a malicious HEIF file) with high availability impact and low confidentiality impact - consistent with the heap over-read description. No EPSS score, no KEV listing, and no public exploit identified at time of analysis, so this is not currently a mass-exploited issue, but the attack surface is broad because HEIF parsing is silently invoked by file managers, thumbnailers, browsers (iOS/Safari, Chrome via AVIF), and media frameworks that bundle libheif. The realistic risk is moderate: crash-level DoS in client apps is reliable, while heap disclosure is opportunistic and depends on allocator layout. SSVC inputs (exploitation status, automatable, technical impact) were not supplied - treat the prioritization above as inferred from CVSS and tags only. |
| Exploit ScenarioDerived | An attacker emails or hosts a malicious HEIF file containing an iovl-referenced overlay image where the color channels use 10-bit depth and the alpha channel uses 8-bit depth; when a victim previews the image in a file manager, mail client, or web app that uses libheif, HeifPixelImage::overlay() over-reads the alpha plane and either crashes the host process (DoS) or embeds adjacent heap bytes into the decoded output. If the rendered image is returned to the attacker (e.g., via a service that re-encodes uploaded HEIFs), the leaked bytes can be exfiltrated to disclose secrets co-located on the heap. No public exploit identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 19, 2026
Heap buffer over-read in libheif versions 1.21.2 and prior allows remote attackers to crash applications or potentially leak adjacent heap memory by supplying a crafted HEIF/AVIF file with an overlay image (iovl) whose alpha channel bit depth differs from its color channels. The flaw in HeifPixelImage::overlay() uses the color channel stride to index into the alpha plane, reading up to 3,123 bytes beyond the alpha buffer for a 100×50 image with 10-bit color and 8-bit alpha. No public exploit identified at time of analysis, and the issue is fixed in version 1.22.0.
RemediationAI
Vendor-released patch: upgrade libheif to version 1.22.0 or later, available at https://github.com/strukturag/libheif/releases/tag/v1.22.0; downstream packagers and applications that bundle libheif must rebuild against this release. Until upgrading, mitigations are limited because HEIF parsing is typically invoked implicitly - practical compensating controls include disabling or removing HEIF/AVIF thumbnailers and preview handlers, blocking image/heic and image/avif MIME types at mail/web gateways for untrusted sources, and avoiding opening HEIF files from untrusted origins; the trade-off is loss of legitimate HEIF/AVIF rendering for users. Consult the GHSA advisory at https://github.com/strukturag/libheif/security/advisories/GHSA-hg7q-rjr2-8x46 for vendor guidance.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
libheif is a widely-used open-source C++ decoder/encoder library for HEIF (High Efficiency Image File Format) and AVIF, developed by struktur AG and embedded in many image viewers, browsers, and media pipelines (CPE: cpe:2.3:a:strukturag:libheif). The bug is a classic CWE-125 out-of-bounds read in libheif/pixelimage.cc: when compositing an overlay image with mismatched bit depths between the alpha and color planes, HeifPixelImage::overlay() retrieves alpha_stride but then incorrectly uses in_stride (the color channel stride) when walking the alpha plane. Because higher bit depths produce larger strides, the read pointer advances faster than the alpha allocation, leaking bytes from whatever heap memory follows the alpha buffer into the rendered output pixels - turning a parsing flaw into a potential heap information disclosure channel.
Know when Libheif 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:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:H
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
libheif is a HEIF and AVIF file format decoder and encoder. Versions 1.21.2 and prior contain a heap buffer over-read in HeifPixelImage::overlay() in libheif/pixelimage.cc. When compositing an overlay image (iovl) whose child image has a different bit depth for the alpha channel than for the color channels, the function indexes into the alpha plane using the color channel stride (in_stride) instead of the previously retrieved alpha_stride, causing reads past the end of the alpha buffer (up to 3,123 bytes for a 100×50 image with 10-bit color and 8-bit alpha). A crafted HEIF file can exploit this to cause a denial of service (crash) or potentially disclose adjacent heap memory through leaked bytes embedded in the decoded output pixels. This issue has been fixed in versionThis issue has been fixed in version 1.22.0.
Executive ViewAI
libheif library versions 1.21.2 and earlier contain a high-severity heap buffer over-read vulnerability in image overlay processing that allows remote attackers to crash applications or leak sensitive heap data through specially crafted HEIF/AVIF files. Organizations using libheif for image handling, content management, or media processing face service disruption and information disclosure risks. No public exploit identified at time of analysis, but the vulnerability can be triggered by anyone able to submit a malicious image file to an affected application.
Apply vendor patch: libheif version 1.22.0.
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
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
libheif v1.17.5 was discovered to contain a segmentation violation via the function UncompressedImageCodec::get_luma_bit
libheif v1.17.5 was discovered to contain a segmentation violation via the function find_exif_tag at /libheif/exif.cc. R
libheif v1.17.5 was discovered to contain a segmentation violation via the component /libheif/exif.cc. Rated high severi
libheif v1.17.5 was discovered to contain a segmentation violation via the function UncompressedImageCodec::decode_uncom
libheif 1.4.0 has a use-after-free in heif::HeifContext::Image::set_alpha_channel in heif_context.h because heif_context
In Libheif 1.17.6, insufficient checks in ImageOverlay::parse() decoding a heif file containing an overlay image with fo
libheif <= 1.17.6 contains a memory leak in the function JpegEncoder::Encode. Rated high severity (CVSS 7.5), this vulne
Out-of-bounds read in libheif's HEIF/HEIC overlay processing can disclose limited memory contents and crash affected app
A Segmentation fault caused by a floating point exception exists in libheif 1.15.1 using crafted heif images via the hei
Buffer Overflow vulnerability in libheif 1.19.7 allows a local attacker to execute arbitrary code via the SAO (Sample Ad
Heap-based buffer overflow in libheif before 1.23.2 allows remote attackers to corrupt memory and potentially achieve co
Heap buffer overflow write in libheif (versions ≤ 1.21.2) lets a crafted HEIF/AVIF file write 64 bytes of attacker-contr
Same weakness CWE-125 – Out-of-bounds Read
View allSame technique Buffer Overflow
View allVendor StatusVendor
SUSE
Severity: High| Product | Status |
|---|---|
| SUSE Linux Enterprise Desktop 15 SP7 | Fixed |
| SUSE Linux Enterprise High Performance Computing 15 SP7 | Fixed |
| SUSE Linux Enterprise Module for Desktop Applications 15 SP7 | Fixed |
| SUSE Linux Enterprise Module for Package Hub 15 SP7 | Fixed |
| SUSE Linux Enterprise Server 15 SP7 | Fixed |
| SUSE Linux Enterprise Server 16.0 | Fixed |
| SUSE Linux Enterprise Server 16.1 | Fixed |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Fixed |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Fixed |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Fixed |
| openSUSE Leap 16.0 | Fixed |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | Fixed |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Fixed |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | Fixed |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Fixed |
| SUSE Linux Enterprise Module for Desktop Applications 15 SP4 | Fixed |
| SUSE Linux Enterprise Module for Desktop Applications 15 SP5 | Fixed |
| SUSE Linux Enterprise Module for Desktop Applications 15 SP6 | Fixed |
| SUSE Linux Enterprise Server 15 SP4 | Fixed |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Fixed |
| SUSE Linux Enterprise Server 15 SP5 | Fixed |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Fixed |
| SUSE Linux Enterprise Server 15 SP6 | Fixed |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Fixed |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Fixed |
| SUSE Manager Proxy 4.3 | Fixed |
| SUSE Manager Retail Branch Server 4.3 | Fixed |
| SUSE Manager Server 4.3 | Fixed |
| SUSE Linux Enterprise Desktop 15 SP4 | Fixed |
| SUSE Linux Enterprise Desktop 15 SP5 | Fixed |
| SUSE Linux Enterprise Desktop 15 SP6 | Fixed |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Fixed |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Fixed |
| SUSE Linux Enterprise High Performance Computing 15 SP6 | Fixed |
| SUSE Linux Enterprise Module for Package Hub 15 SP5 | Fixed |
| SUSE Linux Enterprise Module for Package Hub 15 SP6 | Fixed |
| SUSE Linux Enterprise Real Time 15 SP4 | Fixed |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Fixed |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Fixed |
| openSUSE Leap 15.4 | Fixed |
| openSUSE Leap 15.5 | Fixed |
| openSUSE Leap 15.6 | Fixed |
EUVD-2026-30981
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB