CVE-2024-29159
NoneCVSS
—
EPSS
0.9%
Published
May 14, 2024
CISA due date
—
Cloudanix analysis
A bug in a popular scientific data library can let attackers crash programs or run malicious code simply by tricking the software into opening a specially made file.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Remote Code Execution
- Component
- Library
- Class
- Buffer Overflow
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Buffer overflow in H5Z__filter_scaleoffset corrupts the instruction pointer, enabling denial of service or arbitrary code execution during HDF5 file processing.
Why it matters to the business
Applications relying on HDF5 for scientific data may experience crashes or compromise, disrupting data pipelines and analysis workflows; the issue has persisted for over two years with low observed exploit activity.
How an attack unfolds
An attacker creates a malicious HDF5 file with specially crafted scaleoffset filter metadata that triggers the buffer overflow on parse; the overflow allows control of the instruction pointer for code execution or crash when the file is opened by vulnerable library code.
How to fix it
Upgrade hdfgroup/hdf5 to commit 88429b015e29c59de604b0f552001fb7cb7ed5d0 or a release after 1.14.3; rebuild dependent applications against the patched library.
How to confirm the fix worked
Confirm library version or git commit hash matches the fixed revision; test processing of scaleoffset-encoded files with the updated library to ensure no overflow occurs.
Typical attack path
- Craft malicious HDF5 file containing malformed scaleoffset filter data
- Deliver the file to a target system or application using HDF5
- Trigger file open or processing operation in the vulnerable library
- Exploit resulting instruction pointer corruption for denial of service or code execution
How to detect it
Review application and system logs for segmentation faults or crashes during HDF5 file handling; search for error messages referencing scaleoffset filter processing failures.
What your security team should do
- Prioritize upgrade of HDF5 library in all data-processing environments
- Inventory applications and pipelines that depend on HDF5
- Implement file validation or sandboxing for untrusted HDF5 inputs until patched
The record
HDF5 through 1.14.3 contains a buffer overflow in H5Z__filter_scaleoffset, resulting in the corruption of the instruction pointer and causing denial of service or potential code execution.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | hdf5 | 0 | No fix |
| Debian:12 | hdf5 | 0 | No fix |
| Debian:13 | hdf5 | 0 | No fix |
| Debian:13 | hdf5 | 0 | 1.14.5+repack-1 |
| Ubuntu:20.04:LTS | hdf5 | 0 | No fix |
| Ubuntu:22.04:LTS | hdf5 | 0 | No fix |
| Ubuntu:24.04:LTS | hdf5 | 0 | No fix |
| Ubuntu:24.10 | hdf5 | 0 | No fix |
| Ubuntu:25.04 | hdf5 | 0 | No fix |
| Ubuntu:25.10 | hdf5 | 0 | No fix |
| Ubuntu:Pro:14.04:LTS | hdf5 | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | hdf5 | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | hdf5 | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | hdf5 | 0 | No fix |
Related vulnerabilities
- CVE-2024-32608 [Unknown description] Also affects hdf5
- CVE-2024-33876 HDF5 Library through 1.14.3 has a heap buffer overflow in H5S__point_deserialize in… Also affects hdf5
- CVE-2024-33875 HDF5 Library through 1.14.3 has a heap-based buffer overflow in H5O__layout_encode in… Also affects hdf5
- CVE-2024-33877 HDF5 Library through 1.14.3 has a heap-based buffer overflow in H5T__conv_struct_opt in… Also affects hdf5
- CVE-2024-33873 HDF5 Library through 1.14.3 has a heap-based buffer overflow in H5D__scatter_mem in… Also affects hdf5
- CVE-2024-33874 HDF5 Library through 1.14.3 has a heap buffer overflow in H5O__mtime_new_encode in… Also affects hdf5
- CVE-2024-32624 HDF5 Library through 1.14.3 contains a heap-based buffer overflow in H5T__ref_mem_setnull… Also affects hdf5
- CVE-2024-32619 HDF5 Library through 1.14.3 contains a heap-based buffer overflow in H5T_copy_reopen in… Also affects hdf5