Skip to main content

libesedb CVE-2026-111147

| EUVDEUVD-2026-102274 MEDIUM
Out-of-bounds Read (CWE-125)
2026-10-15 VulnCheck
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 ESE/EDB database
  2. Delivery
    Deliver file to analyst or parsing pipeline
  3. Exploit
    Victim processes file with esedbexport
  4. Execution
    Trigger OOB read in libesedb_record_get_multi_value()
  5. Impact
    Crash tool or leak ~32 KiB heap

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 victim process an attacker-controlled ESE/EDB database file with esedbexport (or another libesedb consumer) where the multi-value record parsing path reaches libesedb_record_get_multi_value(); the trigger is a crafted, unbounded multi-value offset table. Limiting factors: the CVSS 4.0 vector is AV:L with UI:P, so this is NOT remotely reachable - an attacker must get the malicious file onto a system and have a user or automated job parse it (passive user interaction / file-processing step). There is no authentication-bypass or network service exposure; risk is confined to workflows that parse untrusted ESE/EDB inputs. Impact is bounded to a crash and disclosure of up to about 32 KiB of adjacent heap memory, not code execution.

Impact

This is a genuine but moderate-priority issue, not a top-tier emergency. The CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:H, score 6.9 MEDIUM) and the CWE-125 classification agree: this is a local, file-driven out-of-bounds READ, not remote code execution. The dominant impact is availability (VA:H, application crash of esedbexport) with only low confidentiality exposure (VC:L, up to ~32 KiB of adjacent heap). Public exploit code exists (a hackmd write-up and a VulnCheck advisory), which raises practical risk and lowers the barrier to reproduction, but there is NO CISA KEV listing and no EPSS score was provided, so there is no evidence of active, widespread exploitation - exploitation is opportunistic/local rather than internet-facing. The key limiting signal is AV:L combined with UI:P (Passive): an attacker cannot reach this remotely; a victim must process an attacker-supplied malicious ESE/EDB database with esedbexport. For most organizations the realistic worst case is a crash or limited heap-memory leak during forensic/offline parsing of untrusted files, which is why the signals converge on MEDIUM rather than HIGH despite the public POC.

Exploit ScenarioDerived

An analyst or automated DFIR pipeline runs esedbexport against an ESE/EDB database file that was supplied or planted by an attacker (e.g., pulled from a compromised host or submitted as evidence). The crafted file carries an unbounded multi-value offset table that drives libesedb_record_get_multi_value() to read past buffer bounds, crashing the tool or leaking up to ~32 KiB of adjacent heap memory into output. A public POC/write-up exists, so reliable reproduction is straightforward for an attacker.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.1% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 15, 2026

Heap out-of-bounds read in libyal libesedb (through 20260704, all versions per the wildcard CPE) lets an attacker who supplies a crafted ESE/EDB database file to a libesedb consumer such as esedbexport cause the parsing process to crash or to disclose roughly 32 KiB of adjacent heap memory through libesedb_record_get_multi_value(). Publicly available exploit code exists, but there is no indication of confirmed active exploitation (not in CISA KEV), and the CVSS 4.0 vector (AV:L, UI:P) means the issue is not remotely reachable: an attacker must first place the malicious file on a target system and get a user or an automated job to parse it. Impact is bounded to denial of service and limited heap information disclosure - not code execution - so this is a genuine but moderate-priority issue for workflows that process untrusted ESE databases.

RemediationAI

No vendor-released patch has been identified at time of analysis, and the referenced GitHub link points at the vulnerable source rather than a fix commit or tagged release, so no exact patched version can be cited here. Track the upstream repository (https://github.com/libyal/libesedb) and the VulnCheck advisory (https://www.vulncheck.com/advisories/libyal-libesedb-through-20260704-heap-out-of-bounds-read-via-libesedb-record-get-multi-value) for an updated release or commit, and treat the public exploit write-up (https://hackmd.io/@haind-pwn/libesedb-multi-value-offset-table-oob-read) as confirmation that trigger files are easy to produce. Until a fix lands, the most effective compensating control is to never run esedbexport or any libesedb-based parser on untrusted ESE/EDB files outside a disposable sandbox or container with a restrictive memory limit and no access to sensitive host data - this trades convenience for containment and directly mitigates both the crash (DoS) and the heap-disclosure impact. Run parsing jobs as an unprivileged, isolated account (an OOB read leaks only memory belonging to that process, so least privilege limits what can be exposed) and, where the workflow permits, pre-screen or reject EDB inputs from untrusted sources; note that this sacrifices the ability to analyze unknown databases. Building libesedb with ASan or hardened allocators can convert silent leaks into loud failures for detection, but does not by itself prevent the read; because the flaw is confined to a read path with no code-execution primitive, these containment measures are proportionate and there is no need for network-level blocking or authentication changes.

Affected VersionsENISA

libesedb 0 ≤20260704

Affected Packages

euvd libesedb 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

libesedb is libyal's cross-platform, open-source library for parsing the Extensible Storage Engine (ESE) database format, the on-disk format used by Microsoft products such as Active Directory's ntds.dit, Exchange, and Windows Search indices; the bundled esedbexport utility extracts tables and records from those files. Multi-value columns in ESE store their values as a table of offsets into a value buffer, and the function libesedb_record_get_multi_value() (libesedb/libesedb_record.c, roughly lines 3776-3830 in commit cf49b6d4) walks that offset table without validating that each offset and length stay within the allocated multi-value buffer. Because a crafted EDB file can declare an offset table whose entries point beyond the buffer, the code performs a heap out-of-bounds read classified as CWE-125, leaking up to about 32 KiB of adjacent heap memory into the parsed output or crashing the process when it hits an unmapped page. This is a read primitive only: there is no write, so the OOB access cannot be leveraged directly for memory corruption or code execution, and the attack requires local delivery of the malicious database plus a parsing step (passive user interaction) by the victim.

Know when Libesedb 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

Local because the attacker must supply a file (AV:L) parsed by the victim (UI:R); unauthenticated (PR:N); low heap disclosure (C:L) and crash (A:H), 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

Libyal libesedb through 20260704 contains a heap out-of-bounds read vulnerability in libesedb_record_get_multi_value() that allows attackers to read past buffers via unbounded multi-value offset tables. Attackers can supply a crafted ESE/EDB database processed by esedbexport to crash the application or expose up to about 32 KiB of adjacent heap memory.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Low
niche DFIR/forensics library for parsing ESE databases, specialized footprint
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High

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 Yes
EPSS 0.1%
Patch available No
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
Poc
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

54
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: +20
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.

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