libheif: unbounded heap allocation in HEIF sequence parser (stsz fixed-size mode missing bound check)
38Vexday Risk Score
No sign of exploitation. It has a public proof of concept.
ssvc Attendcvss 7.5
from disclosure to weapon0 days
Published on NVDAug 18
1st PoCJun 4
exploitation probability
—
observed exploitation
nono source reports it
1 public exploit(s)
libheif is a HEIF and AVIF file format decoder and encoder. From 1.19.0 until 1.23.0, a crafted HEIF sequence accepted by heif_context_read_from_memory() with the msf1 sequence brand can cause unbounded heap allocation. In libheif/sequences/seq_boxes.cc, Box_stsz::parse() applies max_sequence_frames only to variable-size samples, so fixed-size mode accepts an attacker-controlled sample_count without a bound. In libheif/sequences/track.cc, Track::load() also adds current_sample_idx and samples_per_chunk in 32-bit arithmetic, allowing the consistency check to be bypassed by wraparound. The resulting values reach the Chunk::Chunk() allocation path, which can consume gigabytes of memory and crash or stall the process through memory exhaustion. This issue is fixed in version 1.23.0.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Affected products
strukturag · libheifpublic PoCs found — 1
githubgithub.com/MuhammedHussein17/libheif-cve-2026-50142★ 0⚠ Public resources, to assess the exposure of systems you control or are authorized to test. Test only with authorization.