You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This PR fixes issue #5383, which was occurring due to actual_len + H5C_IMAGE_EXTRA_SPACE being 0. When realloc was called, it freed image, but gets sent to done before new_image can be assigned to image. Because the pointer for image isn't null, it attempts to free it here again, causing the double free to occur. This PR addresses Quincey's concern and fixes the issue while preserving new_image and image.
The bug was first reproduced using the fuzzer and the POC file from #5383. With this change, the double free no longer occurs.
Copy file name to clipboardExpand all lines: release_docs/CHANGELOG.md
+5Lines changed: 5 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -585,6 +585,11 @@ Added Fortran wrapper h5fdsubfiling_get_file_mapping_f() for the subfiling file
585
585
586
586
Fixes GitHub issue #5329
587
587
588
+
### Fixed security issue CVE-2025-2925
589
+
Actual_len + H5C_IMAGE_EXTRA_SPACE, which was used by H5MM_realloc as the size input, could equal 0 due to bad inputs. When H5MM_realloc was called, it freed image, but then could get sent to done before new_image could be assigned to image. Because the pointer for image wasn't null, it was freed again in done, causing a double-free vulnerability. H5C__load_entry() now checks for an image buffer length of 0 before calling H5MM_realloc.
590
+
591
+
Fixes Github issue #5383
592
+
588
593
### Fixed security issue CVE-2025-6857
589
594
590
595
An HDF5 file had a corrupted v1 B-tree that would result in a stack overflow when performing a lookup on it. This has been fixed with additional integrity checks.
0 commit comments