Impact
An uninitialized memory read occurs in the H5Z__filter_scaleoffset() decoder routine of HDF5. The decoder bounds‑checks the allocated size of a chunk buffer instead of the actual number of bytes read from the file. When a chunk is deliberately sized larger than the stored data and only the stored bytes are filled, the remaining buffer memory remains uninitialized. If an attacker supplies a truncated chunk in a HDF5 file, the decoder will decompress those uninitialized bytes and return them as part of the dataset, exposing arbitrary content of the process’s heap to the caller. This results in disclosure of potentially sensitive information that was not intended to be part of the dataset.
Affected Systems
The vulnerability affects the HDF Group’s Scale‑Offset Filter implementation in HDF5 versions up to and including 2.2.0. Any system that uses HDF5 2.2.0 or older to read datasets from untrusted HDF5 files is impacted. Systems that rely on the filter for decompression of scientific data or other binary arrays are particularly at risk.
Risk and Exploitability
The calculated CVSS score is 1.9, reflecting a low overall severity, and the EPSS score is not available. The vulnerability is not listed in CISA’s KEV catalog. An attacker only needs the ability to supply or influence a read operation on a crafted HDF5 file. Because the bounds check passes, the issue is not detected by AddressSanitizer, and the compromised data is returned safely to the application, making the attack relatively straightforward if the attacker can get the target to parse the malicious file.
OpenCVE Enrichment