libheif: Wrapped icef compressed-unit range check causes out-of-bounds read in uncompressed HEIF decoder
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-125 and the CVSS impact.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| strukturag | libheif | before 1.22.1 | 1.22.1 | Patch available | CNA |
- libheif Vendorstrukturag Affected before 1.22.1 Fixed in 1.22.1 Patch available CNA
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:struktur:libheif:*:*:*:*:*:*:*:* | before 1.22.1 | Vulnerable | strukturag |
- cpe:2.3:a:struktur:libheif:*:*:*:*:*:*:*:* Versions before 1.22.1 Vulnerable ·strukturag
Remediation
- Fix · CNA libheif (strukturag) Fixed in 1.22.1
Vendor assessments
Timeline
- 2026-10-02 Threatist record created from CVE-2026-49271
References
More strukturag Libheif vulnerabilities
- TI-2023-27020 libheif v1.17.5 was discovered to contain a segmentation violation via the function… CVSS 3.1HIGH 8.8
- TI-2026-34830 libheif Vulnerable to Heap Information Disclosure via Grid Image Gap + Uninitialized Pixel Plane Allocation CVSS 3.1HIGH 7.5
- TI-2024-16668 libheif <= 1.17.6 contains a memory leak in the function JpegEncoder::Encode. CVSS 3.1HIGH 7.5
- TI-2024-27575 In Libheif 1.17.6, insufficient checks in ImageOverlay::parse() decoding a heif file… CVSS 3.1HIGH 8.1
- TI-2026-35472 libheif: heap OOB read in ImageItem_Grid::decode_grid_tile via irot-induced tile-coordinate underflow CVSS 3.1HIGH 7.1
- TI-2026-35212 libheif has a NULL pointer dereference in heif_image_handle_get_image_tiling for malformed unci image missing ispe CVSS 4.0MEDIUM 6.9
Sources
- CVE-2026-49271 · CVE Program
- CVE-2026-49271 · NVD
- FIRST EPSS
- CVE-2026-49271 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences