Skip to main content

libphdi EUVDEUVD-2026-110485

| CVE-2026-116737 MEDIUM
Incorrect Calculation of Buffer Size (CWE-131)
2026-10-26 VulnCheck GHSA-82qm-7548-vh95
6.9
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Craft malicious Parallels image descriptor
  2. Exploit
    Deliver image to victim for processing
  3. Execution
    Trigger OOB read in path routine
  4. Impact
    Crash process or leak heap memory

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Buffer size calculation
Exploitation Conditions

Exploitation requires that an application or forensic tool embedding libphdi (through version 20260902) open and parse an attacker-controlled Parallels disk image whose descriptor supplies an extent data file path with a long directory prefix and a short basename; this path triggers the miscalculated buffer size in libphdi_data_files_get_extent_data_file_path (and its wide-char counterpart). Limiting factors that reduce realistic risk: the attack vector is local (AV:L), it needs passive user interaction (UI:P) in the form of a victim processing the malicious image, it yields only a crash or limited adjacent-heap disclosure (no write, no code execution, VI:N), and libphdi is a niche DFIR library so the deployed attack surface is narrow.

Impact

This is a moderate, defense-grade issue rather than an emergency. The CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P, score 6.9) shows a local attack vector requiring passive user interaction - the victim must open or process an attacker-supplied Parallels disk image - which structurally limits reach compared with a network-facing flaw. The impact split is telling: VC:L (limited adjacent-heap disclosure) and VA:H (process crash) with VI:N, so this is a denial-of-service and partial information-leak bug, not code execution. The exploitation signals reinforce low real-world urgency: EPSS is 0.13% (2nd percentile), there is NO CISA KEV listing, and the vuln.today decision label is 'this_month' (not act_now/emergency). A public PoC reference exists (a hackmd technical write-up and the VulnCheck advisory) but it is not verified as working weaponized exploit code, and PoC availability must not be conflated with active exploitation. There is no conflict among the signals - low EPSS, no KEV, local+UI vector, and a routine patch-this-month priority all point the same direction: a legitimate bug to patch on a normal cycle, not a high-CVSS-but-low-risk mislabel nor an actively exploited crisis. Authentication is unauthenticated per PR:N, though access is local, so 'unauthenticated local processing of a malicious file' is the accurate framing.

Exploit ScenarioDerived

An attacker crafts a malicious Parallels disk image whose descriptor specifies an extent data file path with a long directory prefix and a short basename. When a victim's forensic tool or application that embeds libphdi opens and parses this image, the path-building routine uses the directory prefix length instead of the basename length, triggering a heap out-of-bounds read that crashes the process or discloses adjacent heap memory. A public PoC reference exists (hackmd write-up / VulnCheck advisory); it is not verified as working exploit code.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.1% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 28, 2026

Heap out-of-bounds read in libphdi (all versions through the 20260902 snapshot) lets a crafted Parallels disk image descriptor crash any application that parses it, or expose a limited amount of adjacent heap memory. The bug sits in libphdi_data_files_get_extent_data_file_path and its wide-character twin: the extent data file name length is computed from the directory prefix length rather than the remaining basename length, so a long directory prefix paired with a short basename yields an over-long size and later reads walk past the heap allocation. The vector is local with a passive user-interaction step (the victim must open or process the malicious image), unauthenticated per the PR:N vector, with no write primitive and no code execution; EPSS is 0.13% (2nd percentile), the issue is not in CISA KEV, and no public exploit was identified at time of analysis though a public technical write-up has been published and an upstream fix commit exists.

RemediationAI

Upstream fix available (commit 61e3e1f6b4c5e15ce827b11858ba51f0dba254e3); a released patched version number is not independently confirmed, so downstream packagers and tool vendors should rebuild libphdi from that commit or from any later snapshot than 20260902 rather than waiting for a tagged release. The commit at https://github.com/libyal/libphdi/commit/61e3e1f6b4c5e15ce827b11858ba51f0dba254e3 corrects both the narrow and wide path-length calculations, and the upstream issue at https://github.com/libyal/libphdi/issues/6 should be tracked for confirmation of a versioned release. Until rebuilt binaries are available, defenders can limit exposure by processing untrusted Parallels images only inside an isolated, memory-limited worker process so an out-of-bounds read produces an isolated crash instead of taking down the host analysis tool; this is a containment trade-off, since sandboxing restricts legitimate file access and still leaves the read itself unmitigated. Because the flaw is reachable only when an application opens a crafted descriptor, restricting ingestion to trusted, provenance-verified images removes the trigger at the cost of blocking legitimate untrusted-evidence workflows, and the public write-up at https://hackmd.io/@haindpwn/libphdi-extent-data-file-path-heap-oob-read may help teams build detection content for malformed extent paths.

Affected VersionsENISA

libphdi 0 ≤20260902

Affected Packages

euvd libphdi no fix

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

libphdi is one of the libyal libraries maintained by Joachim Metz for reading Parallels Hard Disk image formats; it is a parsing library embedded in forensic and DFIR tooling rather than a standalone network service, which narrows the deployed attack surface. A Parallels image consists of a descriptor file whose extent entries point at data files, and libphdi_data_files_get_extent_data_file_path resolves the data-file name by splitting the stored path into a directory prefix and a basename. The root cause is CWE-131 (Incorrect Calculation of Buffer Size): when the internal pointer to the basename is non-NULL, the pre-fix code assigned extent_data_filename_size the byte offset of that pointer from the start of the buffer, i.e. the directory prefix length, instead of subtracting that offset from the total buffer size to get the remaining basename length. With a long directory prefix and a short basename the stored length exceeds the bytes actually available, and downstream consumers read past the end of the heap allocation. The committed fix inverts the assignment so the full filename size is taken first and the prefix offset is then subtracted, and it applies the identical correction to the wide-character variant of the function, confirming both code paths shared the defect. Severity metrics describe the outcome, not the trigger mechanism; the exact parsing steps an attacker must take to reach the flawed branch are described only at a high level in the available sources.

Know when Libphdi 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 (VulnCheck) 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

Triggered by processing a local malicious image so AV:L and UI:R; no auth needed (PR:N); out-of-bounds read gives limited disclosure (C:L) and process crash (A:H) 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 (VulnCheck).

CVSS VectorVendor: VulnCheck

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

DescriptionCVE.org

libphdi through 20260902 contains a heap out-of-bounds read vulnerability in libphdi_data_files_get_extent_data_file_path that uses the directory prefix length instead of the basename length. Attackers can supply a crafted Parallels disk image descriptor with a long directory prefix and short basename to crash the process or expose adjacent heap memory.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Low
niche libyal forensics library for Parallels disk images, limited DFIR footprint
Data Quality
5 sources
Confidence: Medium

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 0.1%
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
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

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.

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