Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft malformed MTP volume shell item
-
DeliveryEmbed in .lnk, jump list or shell bag
-
ExploitDeliver artifact to victim parser
-
Executionlibfwsi reads past heap buffer
-
ImpactConsuming process crashes (DoS)
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 | Exploitation requires that a process or tool using the libyal libfwsi library parse an attacker-supplied Windows shell-item artifact - specifically a .lnk file, a jump list, or a shell bag - that embeds a crafted MTP volume shell item of 10 to 53 bytes declaring an item data size of 44 bytes or more, which triggers the out-of-bounds read in libfwsi_mtp_volume_values_read_data(). Limiting factors: the vector is local (AV:L), the victim must actively process the malicious file (UI:P), no attacker privileges are needed (PR:N), and the realistic impact is a crash of the consuming process rather than code execution. Practical reach is further constrained to environments that actually deploy libfwsi-based parsers, such as digital-forensics/timeline tooling. |
| Impact | This is a medium-severity (CVSS 4.0 base 6.9), locally-reachable out-of-bounds read (CWE-125) in the libyal libfwsi shell-item parsing library. The provided CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:H) is internally consistent with the description: the attack vector is local because the attacker must supply a crafted artifact (a .lnk file, jump list, or shell bag) that a victim process parses, and UI:P reflects that passive user/tool interaction (opening or processing the file) is required. The dominant impact is availability (VA:H - crashing the consuming process via the OOB read), with only low confidentiality impact (VC:L) from potentially reading adjacent heap memory; there is no integrity or code-execution impact claimed. No EPSS score, CISA KEV listing, or explicit POC flag was supplied in the input, so exploitation-probability and active-exploitation signals cannot be quantified - however, a detailed public technical write-up (hackmd) and a VulnCheck advisory exist, indicating the defect and its trigger conditions are publicly documented. Weighing the signals: despite a non-trivial CVSS score, real-world priority is modest because the flaw is local-vector, requires feeding a crafted file to a victim that uses this specific forensic library, and primarily yields a denial-of-service (crash) rather than code execution. There is no conflict between the signals; the main caveat is the absence of EPSS/KEV data, so exploitation likelihood is unquantified rather than confirmed low. |
| Exploit ScenarioDerived | An attacker crafts a malicious .lnk file, Windows jump list, or shell bag embedding a malformed MTP volume shell item (10-53 bytes with a declared item data size of 44 or more) and delivers it to a victim whose tooling parses shell items with libfwsi - for example a DFIR analyst ingesting attacker-controlled evidence or an application processing a user-supplied shortcut. When the library reaches libfwsi_mtp_volume_values_read_data(), it reads past the heap buffer, crashing the consuming process (and possibly leaking small amounts of adjacent memory). A public technical write-up documents the trigger, but no confirmed weaponized exploit code is indicated in the provided data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
A heap out-of-bounds read (CWE-125) in libyal's libfwsi shell-item parsing library, through the 20260522 snapshot, lets a crafted MTP volume shell item read past allocated buffer bounds inside libfwsi_mtp_volume_values_read_data(), typically crashing the consuming process. The issue is triggered locally and requires the victim to actively open or process an attacker-supplied Windows shell-item artifact - a .lnk file, a jump list, or a shell bag - that embeds a 10 to 53 byte MTP volume shell item declaring an item data size of 44 bytes or more; no attacker privileges are required (CVSS 4.0 base 6.9, PR:N). Practical exposure is limited to environments that actually run libfwsi-based parsers, such as digital-forensics and timeline tooling, and the realistic outcome is process termination (availability impact rated High) with only limited information disclosure possible; no public exploit code and no confirmed active exploitation were identified at time of analysis.
RemediationAI
No vendor-released patch identified at time of analysis; the upstream source reference (commit 2f2aba25b888f37314a39d8c3e71c0e3ced56e59, libfwsi/libfwsi_mtp_volume_values.c lines 248-273) documents the affected routine, and the project page at https://github.com/libyal/libfwsi and the VulnCheck advisory (https://www.vulncheck.com/advisories/libfwsi-through-20260522-heap-out-of-bounds-read-via-libfwsi-mtp-volume-values-read-data) should be monitored for a fixed release, at which point upgrading libfwsi and rebuilding all dependent parsers is the primary fix. Until then, apply specific compensating controls: do not feed untrusted or unverified .lnk, jump-list, or shell-bag artifacts into libfwsi-based parsers on production or analyst workstations, and instead process them only in isolated, disposable sandboxes or containers with memory-limit enforcement so a crash is contained (trade-off: extra handling time and reduced analyst throughput). Where the parsing path is scriptable, pre-filter or reject MTP volume shell items shorter than 54 bytes that declare an item data size of 44 bytes or more before handing the artifact to libfwsi (trade-off: custom filtering must be maintained and can produce false negatives on legitimate but malformed evidence). Build and run the consuming tools with AddressSanitizer or equivalent heap instrumentation so an out-of-bounds read is detected and terminated deterministically rather than silently (trade-off: substantial performance and memory overhead, generally acceptable only for forensic/offline analysis). Restrict which users and hosts are permitted to run shell-item parsing workloads, and treat crashes in those tools as potential indicators of malicious input.
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
libfwsi is a libyal library for reading and parsing Windows Shell Item structures, the low-level data format used inside Windows shortcut (.lnk) files, jump lists, and shell bags. The vulnerable routine, libfwsi_mtp_volume_values_read_data() (see libfwsi/libfwsi_mtp_volume_values.c, lines 248-273 in upstream commit 2f2aba25b888f37314a39d8c3e71c0e3ced56e59), handles MTP (Media Transfer Protocol) volume shell items. CWE-125 (Out-of-bounds Read) applies here: when a shell item is only 10 to 53 bytes long but declares an item data size of 44 bytes or more, the parser computes offsets/sizes that exceed the actual buffer and dereferences or copies bytes beyond the allocated heap region. The affected package is identified by CPE cpe:2.3:a:libyal:libfwsi:*:*:*:*:*:*:*:* (all versions, including the 20260522 snapshot). Because libfwsi is a parsing library rather than a network service, the vulnerable attack surface is reached only through host applications that call it to decode untrusted shell-item data.
Know when Libfwsi 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
Attacker needs no privileges but a victim must process a crafted local file (AV:L, UI:R); the OOB read leaks minor memory (C:L) and crashes the parser (A:H), with no integrity impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
libfwsi through 20260522 contains a heap out-of-bounds read vulnerability in libfwsi_mtp_volume_values_read_data() that allows attackers to read past buffer bounds via crafted MTP volume shell items. Attackers can embed a 10 to 53 byte shell item with item data size of 44 or more in a .lnk file, jump list or shell bag to crash consuming processes.
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
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.
In libyal libfwsi before 20191006, libfwsi_extension_block_copy_from_byte_stream in libfwsi_extension_block.c has a heap
Heap out-of-bounds read in libfwsi (libyal) through version 20260522 allows an attacker to craft an MTP file entry shell
EUVD-2026-102262
NVD
CVE.org
EPSS
GitHub
Exploit-DB