Every CVE Search/ Get API key

CVE-2026-62377

libheif: Reachable assertion in HeifContext::get_track() aborts on a valid-but-empty HEIF sequence file (context.cc:2110)

4.3 MediumFix available

CVE-2026-62377 is a medium vulnerability (CVSS 4.3) in Strukturag Libheif, published August 1, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.41%, the 35th percentile. Fixed in libheif 1.23.4-r0.

libheif is a HEIF and AVIF file format decoder and encoder. In 1.23.0 and earlier, a crafted HEIF sequence accepted by heif_context_read_from_memory() can leave the context with no registered sequence tracks and crash when heif_context_get_track(ctx, 0) is called. HeifContext::get_track() in libheif/context.cc executes assert(has_sequence()) before its normal error handling, so assert-enabled builds abort instead of allowing the public wrapper in libheif/api/libheif/heif_sequences.cc to return null. In release builds, removing the assertion lets the track_id zero path dereference m_tracks.begin()->second on an empty map, which is undefined behavior and typically crashes. The issue is reachable through documented public APIs after parsing attacker-controlled bytes. This issue is fixed in version 1.23.1.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
Required

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
Low

Exploit likelihood

0.41%Unchanged since Aug 19, 2026
90%50%10%1%

What each source reports

CVE List Score used 4.3

libheif: Reachable assertion in HeifContext::get_track() aborts on a valid-but-empty HEIF sequence file (context.cc:2110)

libheif is a HEIF and AVIF file format decoder and encoder. In 1.23.0 and earlier, a crafted HEIF sequence accepted by heif_context_read_from_memory() can leave the context with no registered sequence tracks and crash when heif_context_get_track(ctx, 0) is called. HeifContext::get_track() in libheif/context.cc executes assert(has_sequence()) before its normal error handling, so assert-enabled builds abort instead of allowing the public wrapper in libheif/api/libheif/heif_sequences.cc to return null. In release builds, removing the assertion lets the track_id zero path dereference m_tracks.begin()->second on an empty map, which is undefined behavior and typically crashes. The issue is reachable through documented public APIs after parsing attacker-controlled bytes. This issue is fixed in version 1.23.1.

Record
CVE-2026-62377
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Weakness
CWE-617, CWE-908
Updated
2026-11-02
EUVDEUVD-2026-62191 4.3

libheif is a HEIF and AVIF file format decoder and encoder. In 1.23.0 and earlier, a crafted HEIF sequence accepted by heif_context_read_from_memory() can leave the context with no registered sequence tracks and crash when heif_context_get_track(ctx, 0) is called. HeifContext::get_track() in libheif/context.cc executes assert(has_sequence()) before its normal error handling, so assert-enabled builds abort instead of allowing the public wrapper in libheif/api/libheif/heif_sequences.cc to return null. In release builds, removing the assertion lets the track_id zero path dereference m_tracks.begin()->second on an empty map, which is undefined behavior and typically crashes. The issue is reachable through documented public APIs after parsing attacker-controlled bytes. This issue is fixed in version 1.23.1.

Record
EUVD-2026-62191
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Updated
2026-11-02
NVD 4.3

libheif is a HEIF and AVIF file format decoder and encoder. In 1.23.0 and earlier, a crafted HEIF sequence accepted by heif_context_read_from_memory() can leave the context with no registered sequence tracks and crash when heif_context_get_track(ctx, 0) is called. HeifContext::get_track() in libheif/context.cc executes assert(has_sequence()) before its normal error handling, so assert-enabled builds abort instead of allowing the public wrapper in libheif/api/libheif/heif_sequences.cc to return null. In release builds, removing the assertion lets the track_id zero path dereference m_tracks.begin()->second on an empty map, which is undefined behavior and typically crashes. The issue is reachable through documented public APIs after parsing attacker-controlled bytes. This issue is fixed in version 1.23.1.

Record
CVE-2026-62377
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Weakness
CWE-617, CWE-908
Updated
2026-11-02
OSVBELL-CVE-2026-62377 4.3
Record
BELL-CVE-2026-62377
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Updated
2026-11-02
OSV 4.3

libheif: Reachable assertion in HeifContext::get_track() aborts on a valid-but-empty HEIF sequence file (context.cc:2110)

libheif is a HEIF and AVIF file format decoder and encoder. In 1.23.0 and earlier, a crafted HEIF sequence accepted by heif_context_read_from_memory() can leave the context with no registered sequence tracks and crash when heif_context_get_track(ctx, 0) is called. HeifContext::get_track() in libheif/context.cc executes assert(has_sequence()) before its normal error handling, so assert-enabled builds abort instead of allowing the public wrapper in libheif/api/libheif/heif_sequences.cc to return null. In release builds, removing the assertion lets the track_id zero path dereference m_tracks.begin()->second on an empty map, which is undefined behavior and typically crashes. The issue is reachable through documented public APIs after parsing attacker-controlled bytes. This issue is fixed in version 1.23.1.

Record
CVE-2026-62377
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Weakness
CWE-617, CWE-908
Updated
2026-11-02
OSVDEBIAN-CVE-2026-62377 4.3

libheif is a HEIF and AVIF file format decoder and encoder. In 1.23.0 and earlier, a crafted HEIF sequence accepted by heif_context_read_from_memory() can leave the context with no registered sequence tracks and crash when heif_context_get_track(ctx, 0) is called. HeifContext::get_track() in libheif/context.cc executes assert(has_sequence()) before its normal error handling, so assert-enabled builds abort instead of allowing the public wrapper in libheif/api/libheif/heif_sequences.cc to return null. In release builds, removing the assertion lets the track_id zero path dereference m_tracks.begin()->second on an empty map, which is undefined behavior and typically crashes. The issue is reachable through documented public APIs after parsing attacker-controlled bytes. This issue is fixed in version 1.23.1.

Record
DEBIAN-CVE-2026-62377
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Updated
2026-11-02
Show 6 moreShow less
OSVUBUNTU-CVE-2026-62377 4.3

libheif is a HEIF and AVIF file format decoder and encoder. In 1.23.0 and earlier, a crafted HEIF sequence accepted by heif_context_read_from_memory() can leave the context with no registered sequence tracks and crash when heif_context_get_track(ctx, 0) is called. HeifContext::get_track() in libheif/context.cc executes assert(has_sequence()) before its normal error handling, so assert-enabled builds abort instead of allowing the public wrapper in libheif/api/libheif/heif_sequences.cc to return null. In release builds, removing the assertion lets the track_id zero path dereference m_tracks.begin()->second on an empty map, which is undefined behavior and typically crashes. The issue is reachable through documented public APIs after parsing attacker-controlled bytes. This issue is fixed in version 1.23.1.

Record
UBUNTU-CVE-2026-62377
CVSS 3.1
4.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Updated
2026-11-02
OSVopenSUSE-SU-2026:11416-1 No score

gdk-pixbuf-loader-libheif-1.23.1-1.1 on GA media

These are all security issues fixed in the gdk-pixbuf-loader-libheif-1.23.1-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2026:11416-1
Updated
2026-11-02
OSVopenSUSE-SU-2026:21644-1 No score

Security update for libheif

This update for libheif fixes the following issues:

Update to version 1.23.1 (jsc#PED-16355).

Security issues fixed:

  • CVE-2026-62289: integer underflow in Fraction constructor via double clap transform application (bsc#1273079).
  • CVE-2026-62291: heap out-of-bounds write in the uncompressed encoder when writing images with mismatched auxiliary alpha dimensions (bsc#1273080).
  • CVE-2026-62292: out-of-bounds read in uncompressed unci tile range slicing (bsc#1273081).
  • CVE-2026-62377: reachable assertion in HeifContext::get_track() aborts on a valid-but-empty HEIF sequence file (bsc#1273082).
  • Heap out-of-bounds write in the uncompressed encoder for RRGGBB images with interleaved bit-depth <= 8 (bsc#1273083).

Changes for libheif:

  • Version 1.23.1
    • FFmpeg decoder plugin gains AV1, VVC, JPEG, and JPEG 2000/HTJ2K decoding.
    • SVT-AV1 encoder: new tune=iq and ms-ssim tune parameters.
    • C++ API: added getters/setters for the CLLI and MDCV HDR metadata boxes.
    • Sequence decoder now scales the alpha auxiliary track to the main image size.
    • Fixed pixi box writing for multi-channel images.
    • Corrected the placement of the TAI clock_type field into the top 2 bits.
    • Empty/unset plugin directory is no longer scanned.
Record
openSUSE-SU-2026:21644-1
Updated
2026-11-02
OSVSUSE-SU-2026:23320-1 No score

Security update for libheif

This update for libheif fixes the following issues:

Update to version 1.23.1 (jsc#PED-16355).

Security issues fixed:

  • CVE-2026-62289: integer underflow in Fraction constructor via double clap transform application (bsc#1273079).
  • CVE-2026-62291: heap out-of-bounds write in the uncompressed encoder when writing images with mismatched auxiliary alpha dimensions (bsc#1273080).
  • CVE-2026-62292: out-of-bounds read in uncompressed unci tile range slicing (bsc#1273081).
  • CVE-2026-62377: reachable assertion in HeifContext::get_track() aborts on a valid-but-empty HEIF sequence file (bsc#1273082).
  • Heap out-of-bounds write in the uncompressed encoder for RRGGBB images with interleaved bit-depth <= 8 (bsc#1273083).

Changes for libheif:

  • Version 1.23.1
    • FFmpeg decoder plugin gains AV1, VVC, JPEG, and JPEG 2000/HTJ2K decoding.
    • SVT-AV1 encoder: new tune=iq and ms-ssim tune parameters.
    • C++ API: added getters/setters for the CLLI and MDCV HDR metadata boxes.
    • Sequence decoder now scales the alpha auxiliary track to the main image size.
    • Fixed pixi box writing for multi-channel images.
    • Corrected the placement of the TAI clock_type field into the top 2 bits.
    • Empty/unset plugin directory is no longer scanned.
Record
SUSE-SU-2026:23320-1
Updated
2026-11-02
OSVSUSE-SU-2026:3597-1 No score

Security update for libheif

This update for libheif fixes the following issues:

Update to version 1.23.1 (jsc#PED-16355).

Security issues fixed:

  • CVE-2026-62289: integer underflow in Fraction constructor via double clap transform application (bsc#1273079).
  • CVE-2026-62291: heap out-of-bounds write in the uncompressed encoder when writing images with mismatched auxiliary alpha dimensions (bsc#1273080).
  • CVE-2026-62292: out-of-bounds read in uncompressed unci tile range slicing (bsc#1273081).
  • CVE-2026-62377: reachable assertion in HeifContext::get_track() aborts on a valid-but-empty HEIF sequence file (bsc#1273082).
  • Heap out-of-bounds write in the uncompressed encoder for RRGGBB images with interleaved bit-depth <= 8 (bsc#1273083).

Changes for libheif:

  • Version 1.23.1
    • FFmpeg decoder plugin gains AV1, VVC, JPEG, and JPEG 2000/HTJ2K decoding.
    • SVT-AV1 encoder: new tune=iq and ms-ssim tune parameters.
    • C++ API: added getters/setters for the CLLI and MDCV HDR metadata boxes.
    • Sequence decoder now scales the alpha auxiliary track to the main image size.
    • Fixed pixi box writing for multi-channel images.
    • Corrected the placement of the TAI clock_type field into the top 2 bits.
    • Empty/unset plugin directory is no longer scanned.
Record
SUSE-SU-2026:3597-1
Updated
2026-11-02
OSVUSN-8774-1 No score

libheif vulnerabilities

Ali Firas discovered that libheif incorrectly handled certain images. An attacker could possibly use this issue to cause a denial of service or execute arbitrary code. (CVE-2026-62291)

Dmitrijs Trizna discovered that libheif incorrectly handled certain image sequences. An attacker could possibly use this issue to cause a denial of service. (CVE-2026-62377)

Record
USN-8774-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
libheif
Alpaquita:stream
1.20.2-r2 up to 1.23.4-r0
1.23.4-r0
libheif
Debian:14
before 1.23.1-1, plus listed versions
1.19.8-11.20.1-11.20.2-11.20.2-21.21.2-11.21.2-21.21.2-31.21.2-4
1.23.1-1
libheif
SUSE:Linux Enterprise Server 16.0
before 1.23.1-160000.1.1
1.23.1-160000.1.1
libheif
SUSE:Linux Enterprise Server for SAP applications 16.0
before 1.23.1-160000.1.1
1.23.1-160000.1.1
libheif
SUSE:Linux Enterprise Module for Desktop Applications 15 SP7
before 1.23.1-150700.3.18.1
1.23.1-150700.3.18.1
libheif
SUSE:Linux Enterprise Module for Package Hub 15 SP7
before 1.23.1-150700.3.18.1
1.23.1-150700.3.18.1
libheif
Ubuntu:26.04:LTS
before 1.21.2-3ubuntu0.5, plus listed versions
1.20.2-11.20.2-21.20.2-2build11.20.2-2build21.20.2-2ubuntu1
Show 6 moreShow less
1.21.2-11.21.2-31.21.2-3ubuntu0.11.21.2-3ubuntu0.21.21.2-3ubuntu0.31.21.2-3ubuntu0.4
1.21.2-3ubuntu0.5
libheif
openSUSE:Tumbleweed
before 1.23.1-1.1
1.23.1-1.1
libheif
openSUSE:Leap 16.0
before 1.23.1-160000.1.1
1.23.1-160000.1.1

History

History
WhenChangedSources
2026-11-02createdCVE List, EUVD, NVD, OSV

References

Show 17 moreShow less
MoveEnter Open