Skip to main content

HDF5 EUVDEUVD-2026-116012

| CVE-2026-120757 MEDIUM
Out-of-bounds Read (CWE-125)
2026-11-03 HDFG
6.9
CVSS 4.0 · Vendor: HDFG
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft HDF5 file with malformed external link
  2. Delivery
    Victim opens an object through the link
  3. Exploit
    Default traversal callback runs strlen() on unterminated udata
  4. Execution
    Unbounded read past heap buffer end
  5. Impact
    Crash (DoS) or adjacent heap bytes folded into target path

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK

1 technique across 1 tactic: Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires a crafted HDF5 file containing an external link (H5L_TYPE_EXTERNAL) whose stored user data is either not NULL-terminated or too short to hold both the target file name and object path strings. The flaw lives in the default external-link traversal callback H5L__extern_traverse() and needs no special configuration - it is reachable in default operation. It triggers only when that specific malformed link is actually traversed, for example when the application opens an object through the link (H5Oopen/traversal). Limiting factors: attack vector is local (the crafted file must be delivered to and processed by the victim), and user/application interaction is required to open the file and traverse the link (UI:P); there is no remote network trigger and no authentication bypass. Affects HDF5 through 2.2.0.

Impact

This is a moderate, non-emergency issue, and the signals are internally consistent. The CVSS 4.0 vector (6.9) uses AV:L with UI:P, meaning there is no remote network trigger - a local user or application must open and traverse a crafted HDF5 file, matching the description. PR:N reflects that no authentication is needed once the file is processed, but the user-interaction requirement is the real brake on exploitation. The input provides no EPSS score, no CISA KEV listing, and no public exploit; the only reference is the upstream fix (HDFGroup PR #6708), not a PoC, so there is no public exploit identified at time of analysis. The vuln.today decision label is 'this_month' - routine prioritized patching, not act_now/emergency. Primary impact is denial of service via an unbounded heap over-read (VA:H); the confidentiality impact is limited and indirect (VC:L) - adjacent heap bytes may be pulled into the file name or object path the library then tries to open, which is not a direct read-back of memory to the attacker, so treat the information-disclosure angle as plausible leakage rather than reliable data exfiltration. Net: a real but low-urgency bug most relevant where HDF5 processes untrusted files.

Exploit ScenarioDerived

An attacker supplies a crafted HDF5 file (e.g., a shared dataset, model file, or upload) containing an external link whose user data is not NULL-terminated or is too short to hold both the file name and object path strings. When a victim user or application opens an object through that link, H5L__extern_traverse() calls strlen() past the end of the udata heap buffer, crashing the application or incorporating adjacent heap contents into the path it attempts to open. No public exploit identified at time of analysis; the trigger path is confirmed by the upstream fix diff and its regression test.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Nov 03, 2026

HDF5 through 2.2.0 reads past the end of the heap buffer holding an external link's user data when that link is traversed, because the default traversal callback H5L__extern_traverse() located the target file name and object path with strlen() without ever validating the payload against its recorded size. The flaw is reachable in default operation and requires a crafted HDF5 file whose external link data is not NULL-terminated or is too short to hold both strings; it triggers when a user or application opens an object through that link (CVSS 4.0 6.9, AV:L/PR:N/UI:P, availability high, confidentiality low). No public exploit code was identified at time of analysis and there is no KEV entry; the practical outcome is a crash/denial of service, with the additional possibility that adjacent heap bytes get folded into the file name or object path the library then attempts to open, and the upstream fix is the pull request referenced below (no released patched version independently confirmed).

RemediationAI

Apply the upstream fix from PR #6708 (https://github.com/HDFGroup/hdf5/pull/6708), which adds size validation to H5L__extern_traverse() - rejecting payloads of two bytes or fewer, requiring a terminal NUL at the end of the stored data, and verifying that a complete object path remains after the file name - and ships a regression test for malformed external links. The fix is currently tracked as an upstream pull request and CHANGELOG entry rather than a confirmed tagged release, so no patched version number can be cited here and consumers should confirm the release that contains this commit before relying on it; no vendor workaround is documented in the supplied sources, and the vendor's CHANGELOG presents the validation as the remedy. Until a build containing the fix is deployed, the only exposure-reducing control consistent with the evidence is to avoid traversing external links in files from untrusted or unverified sources, since the over-read only occurs when the malformed link is actually traversed; that restriction costs functionality for legitimate external-link workflows and does not protect applications that must open arbitrary user-supplied HDF5 files. Track HDFGroup release notes for the version that formally incorporates PR #6708; classification of this item places it within the current month's patch window rather than an emergency response.

Affected VersionsENISA

HDF5 < 2.3.0

Affected Packages

euvd hdf5 fix: 2.3.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

HDF5 (Hierarchical Data Format) external links are stored as H5L_TYPE_EXTERNAL link user data whose payload is a version/flags byte followed by two NULL-terminated strings - the target file name and the object path inside that file. H5L__extern_traverse() in src/H5Lexternal.c is the library's default traversal callback for that link class, and in affected versions it received the payload length as a parameter marked H5_ATTR_UNUSED, so it never consulted the stored size: it walked the bytes with strlen(), then computed the object-path pointer as p + fname_len + 1 relative to that untrusted result. With a truncated or unterminated payload the strlen() scan is unbounded and continues until an arbitrary zero byte is encountered, and the derived object-path pointer can land outside the udata allocation entirely, so adjacent heap contents may be interpreted as part of the external file name or object path. This is CWE-125 (out-of-bounds read), not a write primitive; the supplied assessment rates availability impact high with limited confidentiality impact, consistent with garbage-derived file/path values feeding a subsequent open attempt. The fix in PR #6708 stops marking udata_size as unused, rejects payloads of two bytes or fewer, requires the final stored byte to be '\0', and requires (fname_len + 1) to be strictly less than (udata_size - 1) before the object path is derived - the same validation already applied in H5Lunpack_elink_val() - with a new external_link_malformed() regression test in test/links.c. The precise low-level trigger beyond the presence of a malformed external link payload is not described further in the available sources.

Know when Hdf5 gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (HDFG) PRIMARY 6.9 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 6.1 MEDIUM

Local crafted-file vector (AV:L) requiring the victim to open and traverse the link (UI:R); no auth (PR:N); over-read crashes the app (A:H) and may leak adjacent heap into a path (C:L), with no integrity impact.

3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:H
4.0 AV:L/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (HDFG).

CVSS VectorVendor: HDFG

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Nov 03, 2026 - 17:18 EUVD
CVE Published
Nov 03, 2026 - 15:35 cve.org
MEDIUM 6.9

DescriptionCVE.org

HDF5 through 2.2.0 contains a heap buffer over-read vulnerability in H5L__extern_traverse() in src/H5Lexternal.c, the default traversal callback for external links. The callback locates the target file name and object path within the link’s user data using strlen() without validating the buffer against its stored size (udata_size, which was marked unused). A crafted HDF5 file containing an external link whose data is not NULL-terminated, or is too short to hold both strings, causes strlen() to read past the end of the udata heap buffer, and the derived object path pointer may also point outside the buffer. The overrun is unbounded and continues until a zero byte is found. The flaw is triggered when the malicious link is traversed, for example when opening an object through it. An attacker who can get a user or application to access a crafted file can cause a denial of service, and adjacent heap contents may be incorporated into the external file name or object path the library attempts to open.

Threat Intelligence Overview

Prevalence
High
HDF5 is a widely embedded data library across scientific, ML, and engineering tooling
Data Quality
4 sources
Confidence: Medium
EUVD NVD CVE.org Vulnrichment GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact· derived
High
Technical Impact
Partial

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

More in Hdf5

View all
CVE-2018-13876 CRITICAL POC
9.8 Jul 10

An issue was discovered in the HDF HDF5 1.8.20 library. Rated critical severity (CVSS 9.8), this vulnerability is remote

CVE-2018-13874 CRITICAL POC
9.8 Jul 10

An issue was discovered in the HDF HDF5 1.8.20 library. Rated critical severity (CVSS 9.8), this vulnerability is remote

CVE-2018-13873 CRITICAL POC
9.8 Jul 10

An issue was discovered in the HDF HDF5 1.8.20 library. Rated critical severity (CVSS 9.8), this vulnerability is remote

CVE-2018-13872 CRITICAL POC
9.8 Jul 10

An issue was discovered in the HDF HDF5 1.8.20 library. Rated critical severity (CVSS 9.8), this vulnerability is remote

CVE-2018-13871 CRITICAL POC
9.8 Jul 10

An issue was discovered in the HDF HDF5 1.8.20 library. Rated critical severity (CVSS 9.8), this vulnerability is remote

CVE-2018-13870 CRITICAL POC
9.8 Jul 10

An issue was discovered in the HDF HDF5 1.8.20 library. Rated critical severity (CVSS 9.8), this vulnerability is remote

CVE-2018-13869 CRITICAL POC
9.8 Jul 10

An issue was discovered in the HDF HDF5 1.8.20 library. Rated critical severity (CVSS 9.8), this vulnerability is remote

CVE-2018-13868 CRITICAL POC
9.8 Jul 10

An issue was discovered in the HDF HDF5 1.8.20 library. Rated critical severity (CVSS 9.8), this vulnerability is remote

CVE-2018-13867 CRITICAL POC
9.8 Jul 10

An issue was discovered in the HDF HDF5 1.8.20 library. Rated critical severity (CVSS 9.8), this vulnerability is remote

CVE-2018-13866 CRITICAL POC
9.8 Jul 10

An issue was discovered in the HDF HDF5 1.8.20 library. Rated critical severity (CVSS 9.8), this vulnerability is remote

CVE-2017-17509 HIGH POC
8.8 Dec 11

In HDF5 1.10.1, there is an out of bounds write vulnerability in the function H5G__ent_decode_vec in H5Gcache.c in libhd

CVE-2025-44904 HIGH POC
8.8 May 30

hdf5 v1.14.6 was discovered to contain a heap buffer overflow via the H5VM_memcpyvv function. Rated high severity (CVSS

References

Advisories & patches

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy