Skip to main content

ytnef CVE-2026-111145

| EUVDEUVD-2026-102272 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 winmail.dat with oversized uncompressedSize
  2. Delivery
    Deliver as email TNEF attachment
  3. Exploit
    Victim processes file with ytnefprint/libytnef
  4. Execution
    DecompressRTF reads past heap buffer
  5. Impact
    Crash parser and leak adjacent heap memory

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 the parsed TNEF stream contain an uncompressed RTF stream carried in a PT_BINARY MAPI property, where DecompressRTF() trusts the attacker-declared uncompressedSize without bounds-checking it against the actual buffer. The attacker must get the crafted winmail.dat in front of a caller - ytnefprint or any application linking libytnef - and that caller must actually process the attachment (UI:P, passive user interaction). Limiting factors: the attack vector is local/file-based (AV:L), not remotely reachable over a network service; no authentication or privileges are needed (PR:N); and impact is bounded to a crash (DoS) plus limited adjacent-heap disclosure rather than code execution. Realistic risk concentrates in mail gateways, converters, or forensic tooling that auto-ingest TNEF attachments.

Impact

This is a moderate, not top-tier, priority. The CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P, score 6.9) describes a local, low-complexity, unauthenticated flaw that nonetheless requires passive user interaction - a victim must feed a crafted winmail.dat to ytnefprint or a libytnef-backed caller. Impact is split: confidentiality is only Low (adjacent heap bytes leaked, a CWE-125 out-of-bounds read, not arbitrary memory disclosure) while availability is High (reliable crash of the parser). There is no KEV listing and no EPSS score in the provided data, so widespread automated exploitation is not evidenced; however, a public exploit write-up (hackmd POC) and a VulnCheck advisory confirm working exploit code exists, making opportunistic or targeted use plausible against systems that auto-process TNEF attachments. Net: a real but contained bug - primarily a denial-of-service and limited info-leak in a niche parsing library, not a remote code execution or network-exposed issue. No EPSS or KEV data was supplied, so exploitation likelihood is inferred only from POC existence; verify EPSS before final prioritization.

Exploit ScenarioDerived

An attacker emails a victim a winmail.dat TNEF attachment containing a crafted PT_BINARY MAPI property whose uncompressed RTF stream declares an oversized uncompressedSize. When the victim or an automated pipeline runs ytnefprint (or any libytnef caller) over the file, DecompressRTF() reads past the heap buffer, crashing the process and potentially leaking adjacent heap memory into output. A public proof-of-concept and write-up for this exact path already exist.

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 ytnef through 2.1.2 allows unauthenticated local attackers to crash the application and leak adjacent heap memory by supplying a crafted winmail.dat TNEF file with a malicious PT_BINARY MAPI property. Publicly available exploit code exists, though the vulnerability is not confirmed as actively exploited. The CVSS 4.0 score is 6.9 (moderate), and exploitation requires the caller to process the attachment (passive user interaction).

RemediationAI

No vendor-released patch is identified at time of analysis. Monitor the GitHub repository (https://github.com/Yeraze/ytnef) and issue #112 for an update. As a compensating control, avoid automatic processing of untrusted winmail.dat files: disable TNEF handling in mail gateways and email clients, and block or quarantine TNEF attachments. For applications using libytnef, run them with minimal privileges and consider sandboxing to limit heap disclosure. If TNEF processing is unavoidable, implement strict input validation or switch to a memory-safe parser. These mitigations may interfere with legitimate TNEF-formatted emails. A public proof-of-concept exploit is available at https://hackmd.io/@haind-pwn/ytnef-decompressrtf-oob-read, so prioritize monitoring for exploitation attempts.

Affected VersionsENISA

ytnef 0 ≤2.1.2

Affected Packages

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

The vulnerability resides in DecompressRTF() in lib/ytnef.c, which handles the decompression of RTF streams embedded in TNEF (Transport Neutral Encapsulation Format) files, commonly seen as winmail.dat attachments. TNEF is a Microsoft proprietary format used to encapsulate MAPI properties, including PT_BINARY properties that can carry compressed or uncompressed RTF data. The function fails to validate the attacker-supplied uncompressedSize field against the actual buffer size for uncompressed RTF streams, leading to a heap out-of-bounds read (CWE-125). This allows reading beyond the allocated buffer, potentially disclosing sensitive heap memory or causing a crash. The CPE cpe:2.3:a:yeraze:ytnef:*:*:*:*:*:*:*:* indicates all versions of Yeraze ytnef are affected, up to and including 2.1.2. The attack vector is local (AV:L) because the attacker must deliver the crafted file to a victim who opens it, but the impact could extend to any service that automatically parses TNEF attachments, such as mail gateways.

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

Attacker supplies a file processed locally so AV:L and UI:R; no privileges needed (PR:N); out-of-bounds read yields limited disclosure (C:L) and reliable 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

ytnef through 2.1.2 contains a heap out-of-bounds read vulnerability in DecompressRTF() in lib/ytnef.c that never validates uncompressedSize for uncompressed RTF streams. Attackers can supply a crafted winmail.dat TNEF attachment with a malicious PT_BINARY MAPI property to crash ytnefprint or libytnef callers and leak adjacent heap memory.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Low
niche open-source TNEF-decoding library and CLI, limited deployment footprint
Exploit
POC
Public exploit code exists
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 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· derived
Poc
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

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.

More in Ytnef

View all
CVE-2017-9146 HIGH POC
8.8 May 22

The TNEFFillMapi function in lib/ytnef.c in libytnef in ytnef through 1.9.2 does not ensure a nonzero count value before

CVE-2021-3404 HIGH POC
7.8 Mar 04

In ytnef 1.9.3, the SwapWord function in lib/ytnef.c allows remote attackers to cause a denial-of-service (and potential

CVE-2021-3403 HIGH POC
7.8 Mar 04

In ytnef 1.9.3, the TNEFSubjectHandler function in lib/ytnef.c allows remote attackers to cause a denial-of-service (and

CVE-2017-6800 HIGH POC
7.5 Mar 10

An issue was discovered in ytnef before 1.9.2. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitabl

CVE-2026-111146 MEDIUM POC
6.9 Oct 15

Heap out-of-bounds read in ytnef through 2.1.2 allows an attacker to crash the ytnefprint utility and incidentally leak

CVE-2017-9058 CRITICAL
9.8 May 18

In libytnef in ytnef through 1.9.2, there is a heap-based buffer over-read due to incorrect boundary checking in the SIZ

CVE-2017-9473 MEDIUM POC
5.5 Jun 07

In ytnef 1.9.2, the TNEFFillMapi function in lib/ytnef.c allows remote attackers to cause a denial of service (memory co

CVE-2017-9471 MEDIUM POC
5.5 Jun 07

In ytnef 1.9.2, the SwapWord function in lib/ytnef.c allows remote attackers to cause a denial of service (heap-based bu

CVE-2017-9470 MEDIUM POC
5.5 Jun 07

In ytnef 1.9.2, the MAPIPrint function in lib/ytnef.c allows remote attackers to cause a denial of service (NULL pointer

CVE-2017-9474 MEDIUM POC
5.5 Jun 07

In ytnef 1.9.2, the DecompressRTF function in lib/ytnef.c allows remote attackers to cause a denial of service (heap-bas

CVE-2017-9472 MEDIUM POC
5.5 Jun 07

In ytnef 1.9.2, the SwapDWord function in lib/ytnef.c allows remote attackers to cause a denial of service (heap-based b

CVE-2017-6306 HIGH
7.8 Feb 24

An issue was discovered in ytnef before 1.9.1. Rated high severity (CVSS 7.8), this vulnerability is no authentication r

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