CVE-2023-49463
High · 8.8CVSS
8.8
EPSS
0.8%
Published
Dec 7, 2023
CISA due date
—
Cloudanix analysis
A bug in an image handling library can make programs crash when they try to read certain picture files.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Remote Code Execution
- Component
- Library
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Invalid memory access in find_exif_tag causes segmentation violation during EXIF tag parsing in HEIF image files, resulting in process crash and potential memory corruption.
Why it matters to the business
Applications relying on libheif for image decoding may crash when processing untrusted files, leading to service disruption and possible loss of availability in image-heavy workflows; the issue remains unfixed in listed versions despite public exploit availability for over two years.
How an attack unfolds
An attacker crafts a specially malformed HEIF image containing anomalous EXIF data that triggers the vulnerable code path in find_exif_tag, then delivers the file to a target application that uses libheif for decoding, causing the segmentation violation upon parsing.
How to fix it
Upgrade to a version of libheif newer than 1.17.5 that resolves the EXIF parsing flaw; if no fixed version is available, isolate or replace libheif usage with an alternative library until a patch is released.
How to confirm the fix worked
Test image processing with known-malformed HEIF samples containing invalid EXIF data before and after upgrade; monitor application stability and review source or changelog for fixes to find_exif_tag or exif.cc.
Typical attack path
- Craft malicious HEIF file with crafted EXIF tags
- Host or embed the file in a location reachable by the victim
- Victim application opens or processes the image using libheif
- find_exif_tag executes and dereferences invalid memory
- Process crashes or exhibits memory corruption
How to detect it
Review application crash logs for segmentation faults originating from exif.cc or find_exif_tag when processing HEIF images; inspect file-handling audit logs for recent access to suspicious HEIF files.
What your security team should do
- Prioritize upgrade of libheif in all affected products as soon as a fixed release is published
- Implement input sanitization or sandboxing for image decoding pipelines handling untrusted files
- Track upstream commits and releases for libheif to confirm resolution of the segmentation violation
The record
libheif v1.17.5 was discovered to contain a segmentation violation via the function find_exif_tag at /libheif/exif.cc.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | libheif | 0 | No fix |
| Debian:12 | libheif | 0 | No fix |
| Debian:13 | libheif | 0 | 1.17.6-1 |
| Debian:14 | libheif | 0 | 1.17.6-1 |
| Mageia:9 | libheif | 0 | 1.16.2-1.1.mga9 |
| Mageia:9 | libheif | 0 | 1.16.2-1.1.mga9.tainted |
| Ubuntu:23.10 | libheif | 0 | 1.16.2-2ubuntu1.1 |
| Ubuntu:24.04:LTS | libheif | 0 | 1.17.6-1ubuntu4 |
| Ubuntu:Pro:18.04:LTS | libheif | 0 | 1.1.0-2ubuntu0.1~esm1 |
| Ubuntu:Pro:20.04:LTS | libheif | 0 | 1.6.1-1ubuntu0.1~esm1 |
| Ubuntu:Pro:22.04:LTS | libheif | 0 | 1.12.0-2ubuntu0.1~esm1 |
Related vulnerabilities
- CVE-2024-41311 In Libheif 1.17.6, insufficient checks in ImageOverlay::parse() decoding a heif file… Also affects libheif
- CVE-2024-25269 libheif <= 1.17.6 contains a memory leak in the function JpegEncoder::Encode. Also affects libheif
- CVE-2023-49462 libheif v1.17.5 was discovered to contain a segmentation violation via the component… Also affects libheif
- CVE-2023-49460 libheif v1.17.5 was discovered to contain a segmentation violation via the function… Also affects libheif
- CVE-2023-49464 libheif v1.17.5 was discovered to contain a segmentation violation via the function… Also affects libheif