CVE-2026-120689
Received Received - Intake

Uncontrolled Recursion in HDF5 Library

Vulnerability report for CVE-2026-120689, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-11-02

Last updated on: 2026-11-02

Assigner: HDFG

Description

HDF5 through 2.2.0 contains an uncontrolled recursion vulnerability in H5B__iterate_helper() in src/H5B.c. When iterating a version 1 B-tree, the function does not verify that a child node’s level matches the expected level. That check is performed only in H5B__cache_deserialize() when a node is first loaded into the metadata cache. A crafted HDF5 file whose B-tree child pointer refers back to a node already in the cache, such as a node that points to itself, bypasses the check and causes unbounded recursion, leading to stack exhaustion and a crash. This can be triggered by calling H5Gget_info() or H5Gget_num_objs() on a group in the crafted file, which reaches H5B_iterate() through H5G__obj_info() and H5G__stab_count(). An attacker who can get a user or application to open a malicious file can cause a denial of service.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-11-02
Last Modified
2026-11-02
Generated
2026-11-02
AI Q&A
2026-11-02
EPSS Evaluated
N/A
NVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
The HDF Group HDF5 <2.3.0

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-674 The product does not properly control the amount of recursion that takes place, consuming excessive resources, such as allocated memory or the program stack.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability is a stack overflow issue in the HDF5 library through version 2.2.0. It occurs in the H5B__iterate_helper() function when processing a version 1 B-tree. The function fails to verify that a child node's level matches the expected level during iteration. A crafted HDF5 file can exploit this by having a B-tree child pointer refer back to a node already in the cache, causing infinite recursion and stack exhaustion.

Detection Guidance

The vulnerability can be detected by attempting to open a crafted HDF5 file with the HDF5 library and checking for stack overflow errors. Use tools like AddressSanitizer to trace recursive calls in H5B__iterate_helper when calling H5Gget_info or H5Gget_num_objs. Monitor for crashes or excessive recursion during file processing.

Impact Analysis

An attacker who tricks you into opening a malicious HDF5 file can cause a denial of service by crashing the application or system using the HDF5 library. This happens when functions like H5Gget_info() or H5Gget_num_objs() are called on a group in the crafted file, triggering the unbounded recursion.

Mitigation Strategies

Update the HDF5 library to the latest version where the issue is resolved. Avoid opening untrusted HDF5 files. Implement file validation checks before processing. Restrict access to HDF5 files to trusted users only.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-120689. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart

Security Radar

News mentioning this vulnerability
Loading related security news...