CVE-2026-116743 in libmsiecfinfo

Summary

by MITRE • 10/27/2026

libyal libmsiecf through 20260525 contains a double free vulnerability in libmsiecf_url_values_read_data() that allows attackers to corrupt heap memory via crafted partial URL records. Attackers can supply a crafted MSIE cache index.dat file whose recovered partial record has an oversized unknown_offset, crashing forensic tools processing it.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Analysis

by VulDB Data Team • 10/27/2026

The identified security flaw resides within the libmsiecf library, specifically in the function responsible for reading and parsing data from Internet Explorer cache index files. This vulnerability is classified as a double free error, which occurs when a program attempts to release memory that has already been freed or where multiple pointers reference the same allocated block without proper synchronization of deallocation logic. In this specific context, the flaw is triggered during the processing of crafted partial URL records embedded within an MSIE cache index.dat file. The root cause lies in how the library handles the unknown_offset field associated with these partial records. When a malicious actor supplies a specially constructed input where this offset value is oversized or malformed, it disrupts the internal memory management routines that track allocated buffers for parsing operations.

From a technical perspective, the vulnerability exploits the lack of rigorous bounds checking and state validation before executing deallocation commands on heap-allocated structures. As libmsiecf processes the corrupted record, it allocates memory to handle the URL data based on the provided offset parameters. However, due to the oversized nature of the unknown_offset field, subsequent operations may lead to a scenario where the same memory block is targeted for release more than once during the cleanup phase or error handling routine. This double free condition corrupts the heap metadata structures maintained by the underlying allocator. Such corruption can manifest in various ways depending on the runtime environment and compiler implementation details, ranging from immediate application crashes due to segmentation faults to more severe outcomes where an attacker gains control over program execution flow through precise manipulation of freed memory chunks.

The operational impact of this vulnerability is significant for forensic analysts and security professionals who rely on libmsiecf to parse Internet Explorer cache files as part of digital investigations or malware analysis workflows. Forensic tools utilizing this library are susceptible to denial-of-service conditions when processing untrusted or maliciously crafted index.dat files, leading to data loss if the application crashes before completing its analysis. Furthermore, in scenarios where the vulnerability can be exploited for arbitrary code execution, it poses a critical risk to systems that automatically process cache artifacts from potentially compromised sources. The ability to corrupt heap memory allows attackers to bypass standard security mitigations such as Data Execution Prevention (DEP) and Address Space Layout Randomization (ASLR) if they can leverage the resulting instability to execute shellcode or escalate privileges, although successful exploitation typically requires specific conditions regarding the allocator state and available gadgets within the target binary.

This vulnerability aligns with Common Weakness Enumeration identifier CWE-415, which describes Double Free vulnerabilities that occur when a program frees memory twice without resetting pointers or updating references appropriately. Additionally, from an offensive security perspective related to MITRE ATT&CK framework tactics, this flaw facilitates initial access and execution phases by allowing adversaries to destabilize defensive tools used for threat hunting and incident response. To mitigate these risks, developers must implement strict validation of all input parameters before memory allocation and deallocation operations occur. Specifically, the unknown_offset field should be validated against expected maximum limits derived from the file format specification to ensure it does not exceed reasonable bounds that could trigger erroneous heap management logic. Upgrading to patched versions of libmsiecf beyond version 20260525 is essential as these releases contain fixes for this memory corruption issue. Organizations relying on forensic tools built with this library should also consider implementing sandboxing or containerization strategies when processing untrusted cache files to isolate potential crashes and prevent systemic compromise.

Responsible

VulnCheck

Reservation

10/26/2026

Disclosure

10/27/2026

Moderation

accepted

EPSS

0.00000

KEV

no

Activities

low

Sources

Want to stay up to date on a daily basis?

Enable the mail alert feature now!