H5Z__filter_fletcher32 in H5Zfletcher32.c in HDF5 through 2.3.0 computes the data length to checksum by subtracting the 4-byte trailing checksum size from the input buffer size without checking that the buffer is at least 4 bytes, allowing a size_t underflow. This allows attackers to cause a denial of service (massively out-of-bounds read and application crash in H5_checksum_fletcher32) via a crafted HDF5 file with a Fletcher32-filtered chunk smaller than 4 bytes, triggered via H5Dread, e.g. by the h5ls or h5dump tools.
| Version | Type | Source | Base | Exp | Imp |
|---|---|---|---|---|---|
| 4.0 | Primary | cve.org | 6.8 | — | — |
| 4.0 | Secondary | ENISA EUVD | 6.8 | — | — |
| 4.0 | Secondary | NVD | 6.8 | — | — |