CVE-2026-120754 PUBLISHED

Uninitialized Heap Memory Disclosure via Truncated Chunk in HDF5 Scale-Offset Filter

Assigner: HDFG
Reserved: 02.11.2026 Published: 03.11.2026 Updated: 03.11.2026

HDF5 through 2.2.0 contains an uninitialized memory read vulnerability in H5Z__filter_scaleoffset() in src/H5Zscaleoffset.c. The decode path validates reads against the allocated size of the chunk buffer rather than the number of bytes actually read from the file. Because H5D__chunk_lock() deliberately sizes filtered chunk buffers to the larger of the stored and unfiltered chunk sizes and fills only the stored bytes, a truncated chunk passes these bounds checks and is decompressed from the uninitialized remainder of the allocation. Unrelated heap contents are then returned to the caller as dataset data. Because the reads remain within the allocation, the issue is not detected by AddressSanitizer. An attacker who can get a user or application to read a dataset from a crafted HDF5 file can cause disclosure of process memory. This issue exists because of an incomplete fix for CVE-2026-19029.

Metrics

CVSS Vector: CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:P
CVSS Score: 1.9

Product Status

Vendor The HDF Group
Product Scale-Offset Filter
Versions Default: unaffected
  • Version < 2.3.0 is affected

References

Problem Types

  • CWE-908 Use of uninitialized resource CWE

Impacts

  • CAPEC-540 Overread Buffers