---
id: CVE-2026-84446
title: libheif is a HEIF and AVIF file format decoder and encoder
summary: >-
  libheif is a HEIF and AVIF file format decoder and encoder. Prior to 1.23.2,
  crafted HEIF sequence timing and edit-list data can make
  Track::init_sample_timing_table() compute a logical m_num_output_samples value
  that exceeds the uint32_…
severity: high
cvss: 7.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'
cwe:
  - CWE-835
vendor: strukturag
product: libheif
affected:
  - libheif < 1.23.2
published: '2026-09-18'
updated: '2026-09-21'
sourceUpdated: '2026-09-21T21:17:13.683'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-84446'
references:
  - url: >-
      https://github.com/strukturag/libheif/commit/3a7a69ae325f652e48c026b8241ab25bedf44d9b
    label: security-advisories@github.com
  - url: 'https://github.com/strukturag/libheif/releases/tag/v1.23.2'
    label: security-advisories@github.com
  - url: >-
      https://github.com/strukturag/libheif/security/advisories/GHSA-xw34-mjcp-jqh8
    label: security-advisories@github.com
tags:
  - nvd
  - cve.org
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-09-18T20:13:16.634765Z'
epss: 0.00655
epssPercentile: 0.49171
ingestedAt: '2026-09-18T16:45:41.394Z'
---

## Overview

libheif is a HEIF and AVIF file format decoder and encoder. Prior to 1.23.2, crafted HEIF sequence timing and edit-list data can make Track::init_sample_timing_table() compute a logical m_num_output_samples value that exceeds the uint32_t counters used by Track_Visual::decode_next_image_sample() and Track::get_next_sample_raw_data(). The resulting comparison can never reach the oversized output count, causing non-terminating decode or raw-sample loops and bypassing max_sequence_frames. The same sequence path repeatedly calls Box_stts::get_sample_duration() and allocates Chunk::m_sample_ranges and Track::m_presentation_timeline outside MemoryHandle accounting, allowing severe CPU and memory exhaustion from a small file. This issue is fixed in version 1.23.2.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
