Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft BitLocker image with undersized VMK/FVEK datum
-
DeliveryDeliver image to target user
-
ExploitVictim processes volume with dislocker
-
ExecutionInteger underflow yields ~4GB payload size
-
ImpactOut-of-bounds heap read crashes dislocker
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Integer underflow checks
|
| Exploitation Conditions | Exploitation requires an attacker to supply a crafted BitLocker volume image in which a VMK or FVEK datum sets datum_size to a value that passes get_header_safe()'s minimal 8-byte check but is smaller than the type-specific AES-CCM header (36 bytes), so the unchecked subtraction in get_vmk()/get_fvek() underflows. Limiting factors that reduce real-world risk: the attack is local (AV:L) - there is no remote or automatic trigger - and it requires user interaction, namely a victim actively running dislocker against the malicious image. No special non-default configuration is needed beyond normal use of dislocker to read/decrypt the attacker-controlled volume, and the impact is confined to crashing the dislocker process (availability only). |
| Impact | This is a memory-safety defect whose real-world risk is modest despite a CVSS 4.0 base score of 6.8 (medium). The provided CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H) makes the limited impact explicit: the only consequence is availability (VA:H) - an out-of-bounds heap READ that crashes the dislocker process - with no confidentiality (VC:N) or integrity (VI:N) impact, i.e. this is a denial-of-service/crash bug, not code execution or key disclosure. The attack vector is Local (AV:L), not network, and requires passive user interaction (UI:P): a victim must run dislocker against an attacker-supplied BitLocker volume image. No EPSS score, SSVC decision data, KEV listing, or public POC was provided in the input, so exploitation-probability signals are absent rather than conflicting. With no CISA KEV entry and no exploit code referenced, there is no public exploit identified at time of analysis. Net assessment: a legitimately-scored but lower-priority issue - a crash-only DoS in a niche forensic tool that an attacker can only trigger by getting a user to process a malicious image. A vendor patch is available, so remediation is simply upgrading past 0.7.3. |
| Exploit ScenarioDerived | An attacker crafts a malicious BitLocker volume image whose VMK or FVEK datum declares a datum_size smaller than the 36-byte AES-CCM header, then induces a victim - for example a forensic analyst inspecting an untrusted disk image - to open it with dislocker. The undersized datum_size causes an integer underflow when the header size is subtracted, producing a ~4GB length that drives hexdump() to over-read heap memory and crash the process. No public exploit code is referenced in the input, so exploitation is currently theoretical/POC-absent and limited to a local crash. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 08, 2026
Denial of service in Dislocker through 0.7.3 is triggered when the tool parses a crafted BitLocker volume image whose VMK or FVEK datum declares a datum_size smaller than the 36-byte AES-CCM header it must contain, causing an integer underflow that yields a near-4GB payload length and sends hexdump() into an out-of-bounds heap read that crashes the process. Exploitation is local and requires user interaction: a victim must actively point dislocker at the attacker-supplied image, which matches the assessed vector CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H, unauthenticated but victim-driven. Impact is availability only - there is no memory corruption of confidentiality or integrity consequence described, no public exploit identified at time of analysis, and the defect is not listed as confirmed actively exploited (CISA KEV).
RemediationAI
Upstream fix available (PR/commit); released patched version not independently confirmed - the correction is commit 0706462db88efe8df88150e4c3e4332b808f4581 in the Aorimn/dislocker repository, which adds the datum_payload_size() guard in src/metadata/datums.c and datum_size/value_type validation in get_vmk() and get_fvek(); rebuild from that commit or from the first tagged release after 0.7.3, since no exact fixed version number is provided in the available advisory data. Because the flaw is only reachable by feeding the tool a malicious BitLocker image, the most effective compensating control is procedural: never run dislocker against volume images from untrusted or unverified sources, and treat any third-party BitLocker image as potentially hostile before mounting or decrypting it, at the cost of losing the ability to triage suspicious images with this tool. Where untrusted images must be inspected, run dislocker inside an unprivileged sandbox or container with a hard virtual-memory cap and heap-allocator hardening or AddressSanitizer enabled so that the ~4GB over-read aborts the worker instead of exhausting the host - trade-off being that sanitizer builds are slower and the crash still occurs, only contained. Detection-wise, monitor for dislocker processes terminating on SIGSEGV or OOM during image parsing, since the failure mode is a crash rather than data disclosure; disabling the hexdump/printing paths (for example by reducing log verbosity so print_datum_aes_ccm() is not exercised) may reduce but does not eliminate exposure because get_vmk()/get_fvek() perform the underflowing arithmetic before the print step. Details and the patch reference are available in the VulnCheck advisory (https://www.vulncheck.com/advisories/dislocker-through-0.7.3-out-of-bounds-heap-read-via-vmk-fvek-datum-size-underflow) and the upstream commit link.
Affected VersionsENISA
Affected Packages
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
Dislocker is a C/Ruby userspace tool that reads and decrypts Microsoft BitLocker volumes; the volume's metadata is a sequence of typed 'datums' whose generic header carries a 16-bit datum_size field, followed by a type-specific header (36 bytes for AES-CCM datums, the type used for VMK and FVEK keys). The root cause is CWE-191, integer underflow: the parsing helper get_header_safe() only enforces that datum_size is at least 8 bytes, while the type-specific headers are larger, so unchecked expressions such as datum_size - sizeof(datum_aes_ccm_t) in get_vmk() (src/metadata/vmk.c) and get_fvek() (src/metadata/fvek.c) wrap around when datum_size < 36. Because datum_size is uint16_t and the subtraction is performed in a size_t context, the resulting payload length becomes roughly 4GB rather than a small value, and it is passed downstream to decrypt_key() and to the hexdump()/print_datum_aes_ccm() reporting paths, which then read far past the end of the heap buffer. The upstream fix introduces a datum_payload_size() helper in src/metadata/datums.c that returns 0 whenever the announced datum_size does not exceed the type header size, plus explicit guards on datum_size and value_type (bounds-checked against NB_DATUMS_VALUE_TYPES) in get_fvek() and get_vmk(), confirming the vulnerable pattern is the unchecked unsigned subtraction and the unvalidated value_type index. The affected package is tracked as cpe:2.3:a:aorimn:dislocker:*:*:*:*:*:*:*:* with EUVD identifier EUVD-2026-95022 covering dislocker 0 through 0.7.3.
Know when Dislocker 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
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
Local attacker-supplied image processed by the victim gives AV:L and UI:R with no privileges (PR:N); the bug only crashes the process, so C:N/I:N and A:H.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
Dislocker through 0.7.3 contains an integer underflow vulnerability in get_vmk() and get_fvek() that allows attackers to trigger out-of-bounds heap reads via crafted datum sizes. Attackers can supply a malicious BitLocker volume image with a datum_size smaller than the 36-byte AES-CCM header, causing hexdump() to over-read and crash dislocker.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Integer overflow occurs when an arithmetic operation produces a result that exceeds the maximum value a given integer type can store.
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
EUVD-2026-95022
GHSA-v459-vrm9-x34f
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB