Skip to main content

libical EUVDEUVD-2026-102524

| CVE-2026-111269 MEDIUM
Out-of-bounds Read (CWE-125)
2026-10-15 VulnCheck GHSA-qvfg-9jj8-868q
6.9
CVSS 4.0 · Vendor: VulnCheck
Temporal: 6.1
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Deliver crafted .ics to victim
  2. Exploit
    Victim's app parses trailing-backslash escape
  3. Execution
    OOB read past heap buffer in decoder
  4. Impact
    Application crash or heap memory leak

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

Requires the application to feed attacker-controlled iCalendar text through the escaped-string decoding path (icalvalue_decode_ical_string, or icallangbind_property_eval_string) where a value ends in a trailing backslash (or newline) - e.g. a crafted .ics file, meeting invite, or subscribed calendar feed. Limiting factors: the CVSS vector is AV:L with UI:P, so a local victim must open or process the malicious calendar data; there is no remote-unauthenticated path in default use, and the primary outcome is a crash (DoS) with only limited adjacent heap disclosure rather than code execution. Any libical version at or below 4.0.6 that parses untrusted calendar input is in scope.

Impact

Signals point to a moderate, not urgent, priority. The CVSS 4.0 base score is 6.9 (MEDIUM) and the vector (AV:L/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:H) shows the dominant impact is availability (VA:H, an application crash) with only low confidentiality loss (VC:L, limited adjacent heap leakage) and no integrity impact - consistent with the CWE-125 out-of-bounds READ classification (there is no memory corruption/write primitive, so RCE is not indicated). Exploitation is gated by a local vector and passive user interaction (UI:P): a victim must process attacker-supplied iCalendar data, which lowers real-world risk versus a remote-unauthenticated flaw. No EPSS score, no CISA KEV listing, and no explicit POC flag were provided in the input, so exploitation probability cannot be quantified and there is no public exploit identified at time of analysis - though VulnCheck reported it and a detailed technical writeup exists on hackmd, which raises the likelihood that working reproduction steps are publicly derivable. Because no SSVC/EPSS/KEV data is present, risk is inferred from the CVSS vector alone: a realistic DoS plus minor info-leak in a widely embedded parsing library. Patch promptly where libical parses untrusted calendar input, but this is not a drop-everything critical issue.

Exploit ScenarioDerived

An attacker sends a victim a malicious .ics calendar invitation or hosts a calendar feed containing escaped iCalendar text whose value ends in a trailing backslash. When the victim's libical-based client parses it, icalvalue_decode_ical_string() reads past the string terminator, crashing the application or leaking adjacent heap bytes into the decoded output. No weaponized public exploit is confirmed, but a technical writeup describing the bug exists.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 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

Decoding crafted iCalendar text that ends in a trailing backslash drives a heap-based out-of-bounds read in libical 4.0.6 and earlier, allowing the attacker to crash the consuming application or expose a small amount of adjacent heap memory. The assessed vector is CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:H, meaning a victim must locally open or process the malicious calendar data (for example a crafted .ics file, meeting invite, or subscribed feed) and the dominant outcome is a crash / denial of service, with only limited confidentiality loss rather than code execution; the PR:N component indicates no attacker credentials are needed on the affected host. No public exploit identified at time of analysis, the flaw is not listed in CISA KEV, and an upstream fix exists via the referenced pull request and commit.

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed - integrate the change from https://github.com/libical/libical/pull/1455 (commit d753885ce2de7c105d6b8c405aa7aee1d98ad8de), which adds a check that stops decoding when the character after a backslash is the NUL terminator and also fixes the newline loop in icallangbind_property_eval_string_r(), and rebuild/relink any application that statically or dynamically links libical; update to the first tagged libical release that contains this commit once it is published. If patching cannot be done immediately, reduce exposure by not passing untrusted calendar data into the affected decoding paths - validate and normalize inbound iCalendar text before parsing so no value ends in a bare backslash or trailing newline (this is a parser-input sanitation step and will not catch every escaped-string edge case), or route untrusted .ics files, invites, and subscribed feeds through an isolated parser process or sandbox so that an out-of-bounds read only terminates that worker rather than the primary application (this contains the availability impact but does not stop the out-of-bounds read itself). Because the assessed impact is a crash with only limited adjacent heap disclosure, prioritize the upgrade over workarounds, and treat repeated parse failures from untrusted calendar sources as a potential trigger for this bug. Consult the vendor advisory at https://www.vulncheck.com/advisories/libical-through-4.0.6-heap-out-of-bounds-read-via-icalvalue-decode-ical-string and the fix references above for release details.

Affected VersionsENISA

libical 0 ≤4.0.6

Affected Packages

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

libical is a C library that parses and generates iCalendar (RFC 5545) data, and the defect is a classic heap out-of-bounds read (CWE-125) in icalvalue_decode_ical_string() in src/libical/icalvalue.c. The decoder walks escaped iCalendar text character by character; when the input ends with a lone backslash escape, the loop advances to the escape character and then continues past the string terminator because the escape sequence it expects never materializes, reading bytes beyond the end of the heap allocation. The upstream fix adds a guard that checks whether the character following the backslash is the NUL terminator and, if so, stops before the terminator; the same pull request also corrects the newline-handling loop in icallangbind_property_eval_string_r() in src/libical/icallangbind_p.c, which had a comparable one-past-the-end access for values ending in a newline. The CPE entry cpe:2.3:a:libical:libical:*:*:*:*:*:*:*:* indicates the entire libical code line up to and including 4.0.6 is affected, and the regression tests added upstream explicitly cover both a value ending in an escape character and a value ending in a newline.

Know when Libical 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
CIRCL (temporal) 6.1 MEDIUM
vuln.today AI 6.1 MEDIUM

Victim must process an attacker-supplied calendar (AV:L, UI:R); no auth needed (PR:N); OOB read yields application crash (A:H) and minor heap leak (C:L), 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
Red Hat 6.1 MEDIUM

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

libical through 4.0.6 contains a heap-based out-of-bounds read in icalvalue_decode_ical_string() in src/libical/icalvalue.c when decoding input ending in a backslash. Attackers can supply escaped iCalendar text with a trailing backslash, causing the loop to read past the terminator and crash the application or leak adjacent heap memory.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Medium
widely-used open-source calendaring library embedded in many desktop clients
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 No
EPSS 0.1%
Patch available Yes
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
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

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

Vendor StatusVendor

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