HDF5 versions through 2.2.0 have an uncontrolled recursion vulnerability in the H5B__iterate_helper() function. This occurs when iterating a version 1 B-tree where a crafted file can cause a child node to point back to itself or a previously cached node, bypassing level checks and causing unbounded recursion. Triggering this vulnerability via functions like H5Gget_info() or H5Gget_num_objs() leads to stack exhaustion and application crash, resulting in denial of service.