Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft HEIF file with integer-wrapping icef offsets
-
DeliveryDeliver file to target via web upload, email, or link
-
ExploitVictim or pipeline invokes libheif decoder
-
Executionunit_offset + unit_size wraps, bypasses range check
-
PersistVector constructed from out-of-bounds heap iterators
-
ImpactApplication crash (DoS)
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 | The vulnerable code path is reached only when processing HEIF files that use the uncompressed codec path with icef (item content extent fragment) box data present - not all HEIF files trigger this decoder. Exploitation requires that the target application invoke libheif's uncompressed HEIF decoder on an attacker-supplied file, which happens either through direct user action (opening a file) or an automated pipeline that ingests HEIF/AVIF content. No authentication or special privilege is required from the attacker's perspective; the only prerequisite is file delivery to a vulnerable consumer. Exploitation is limited by: (1) mandatory file-open interaction or pipeline trigger (UI:R in isolated desktop contexts); (2) scope restricted to the process running libheif - no lateral movement is implied by the crash; (3) the vulnerability does not affect AVIF files processed through other decoder paths, only HEIF files exercising the uncompressed icef path. Applications that only process AVIF or HEIF files via non-uncompressed codec paths are not exposed through this specific vector. |
| Impact | The CVSS 3.1 base score of 6.5 (AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H) accurately characterises this as a network-reachable, unauthenticated denial-of-service requiring only that a victim open a crafted file - a common, low-friction precondition in consumer and server image-processing contexts. Attack complexity is low once a malformed file is constructed. The mandatory user interaction (UI:R) or automated pipeline trigger moderates urgency compared to a fully autonomous server-side flaw. No EPSS score was supplied; given no KEV listing and no confirmed public POC, real-world exploitation probability is presently low but non-negligible given that libheif is embedded in many downstream applications (GNOME, FFmpeg pipelines, Apple ecosystem wrappers) that routinely ingest untrusted images. The 'Information Disclosure' tag and CWE-125 classification introduce a theoretical secondary risk - heap contents adjacent to the buffer could be transiently readable - but because the crash terminates the process, reliable data extraction is unlikely without a more controlled exploitation primitive. Overall this is a genuine patch-priority item for any service that auto-processes user-supplied HEIF/AVIF files (attack surface broadens to AV:N/AC:L effectively) and a lower-urgency item for desktop applications where UI:R is a real friction factor. |
| Exploit ScenarioDerived | An attacker hosts or emails a maliciously crafted HEIF image file containing icef box fields engineered to trigger the unit_offset + unit_size integer wrap. When a victim opens the file in any application linked against libheif prior to 1.22.1 - such as an image viewer, a photo management app, or a web service that auto-generates thumbnails - the uncompressed decoder bypasses the range check, constructs an iterator outside the heap buffer, and the application crashes. In automated server-side pipelines (e.g., image transcoding APIs), no user interaction beyond file upload is required, effectively reducing the UI:R constraint to near-zero friction. No confirmed public POC exists at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 19, 2026
Out-of-bounds heap read in libheif's uncompressed HEIF decoder allows a remote attacker to crash any application processing crafted HEIF files. Versions prior to 1.22.1 fail to safely validate icef compressed-unit offsets because the addition of unit_offset + unit_size can integer-wrap, bypassing the range check and permitting a C++ vector to be constructed from iterators pointing outside the compressed item buffer. Exploitation requires a user or automated pipeline to open an attacker-supplied HEIF file; no public exploit or CISA KEV listing exists at time of analysis.
RemediationAI
Upgrade libheif to version 1.22.1, which patches the integer-overflow range check in the uncompressed HEIF decoder (vendor advisory: https://github.com/strukturag/libheif/security/advisories/GHSA-r7qj-cg5r-r6vf). Downstream packages - distribution packages (apt, dnf, brew), embedded copies in media applications, and statically linked builds - must each be independently rebuilt or updated against the patched library; a system libheif upgrade alone does not protect statically linked binaries. If immediate upgrade is not feasible, the most effective compensating control is to disable or block ingestion of HEIF/AVIF files at the application or gateway layer (e.g., reject files with MIME types image/heif, image/heic, image/avif at upload endpoints); this entirely eliminates the attack surface but breaks HEIF/AVIF support. For server-side image processing pipelines, sandboxing the decoding process (e.g., via seccomp or a dedicated low-privilege worker process) limits the blast radius of a crash or potential heap read to the isolated worker rather than the main application. No known workaround eliminates the vulnerability while preserving full HEIF decode functionality.
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 (CPE: cpe:2.3:a:strukturag:libheif:*:*:*:*:*:*:*:*) is a widely embedded open-source C++ library from strukturag used by image editors, media players, mobile platforms, and transcoding pipelines to parse ISO Base Media File Format-derived HEIF and AVIF containers. The vulnerable code path lies in the uncompressed HEIF decoder, specifically where it validates icef (item content extent fragment) box fields. The decoder computes an inclusive upper bound as unit_offset + unit_size using native unsigned arithmetic; on 32-bit or size_t-constrained builds - or with pathologically large field values - this sum wraps to a small number that falls within apparent bounds, passing the check. The library then constructs a std::vector or similar iterator range anchored to a position beyond the allocated compressed-item buffer, and the subsequent read triggers a heap out-of-bounds access (CWE-125: Out-of-Bounds Read). The tags note 'Information Disclosure' alongside the crash, consistent with OOB reads that may transiently expose adjacent heap contents before the process terminates.
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:N/I:N/A:H
File delivered over network (AV:N), trivial to craft (AC:L), no attacker privilege needed (PR:N), victim must open file (UI:R), impact is crash only (A:H, C:N, I:N).
AV:L/AC:L/PR:N/UI:R/S:U/C:N/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. Prior to version 1.22.1, the uncompressed HEIF decoder validates explicit icef compressed-unit offsets using unit_offset + unit_size. Because the addition can wrap, a crafted HEIF file can pass the range check and then construct a vector from iterators outside the compressed item buffer, producing an out-of-bounds heap read and crash. Version 1.22.1 patches the issue.
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.
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: Moderate| Product | Status |
|---|---|
| SUSE Linux Enterprise Desktop 15 SP7 SUSE Linux Enterprise High Performance Computing 15 SP7 SUSE Linux Enterprise Module for Desktop Applications 15 SP7 SUSE Linux Enterprise Server 15 SP7 SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Fixed |
| SUSE Linux Enterprise Module for Package Hub 15 SP7 | Fixed |
| SUSE Linux Enterprise Server 16.0 SUSE Linux Enterprise Server for SAP applications 16.0 | Fixed |
| openSUSE Leap 16.0 | Fixed |
| openSUSE Tumbleweed | Fixed |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Desktop 15 SP7 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP7 | Affected |
| SUSE Linux Enterprise Module for Desktop Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise Module for Desktop Applications 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Module for Desktop Applications 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Module for Desktop Applications 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Not-Affected |
| SUSE Manager Proxy 4.3 | Not-Affected |
| SUSE Manager Retail Branch Server 4.3 | Not-Affected |
| SUSE Manager Server 4.3 | Not-Affected |
| SUSE Linux Enterprise Desktop 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Desktop 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Desktop 15 SP6 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Not-Affected |
| openSUSE Leap 15.4 | Not-Affected |
| openSUSE Leap 15.5 | Not-Affected |
| openSUSE Leap 15.6 | Not-Affected |
EUVD-2026-38055
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB