<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:webfeeds="http://webfeeds.org/rss/1.0"><channel><title>Icalendar (7.1.0 to 7.1.2) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/icalendar-7.1.0-to-7.1.2/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Wed, 26 Aug 2026 00:50:55 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/icalendar-7.1.0-to-7.1.2/feed.xml" rel="self" type="application/rss+xml"/><image><url>https://feed.craftedsignal.io/favicon-32x32.png</url><title>CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/</link><width>32</width><height>32</height></image><webfeeds:icon>https://feed.craftedsignal.io/favicon.svg</webfeeds:icon><item><title>Denial of Service Vulnerability in icalendar Python Library</title><link>https://feed.craftedsignal.io/briefs/2026-08-icalendar-algorithmic-complexity/</link><pubDate>Wed, 26 Aug 2026 00:50:55 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-08-icalendar-algorithmic-complexity/</guid><description>The icalendar Python library contains an algorithmic complexity vulnerability (CVE-2026-55099) in the Component.__eq__ method that allows for denial of service via deeply nested subcomponents.</description><content:encoded><![CDATA[<p>The Python library <code>icalendar</code> (versions 7.1.0 through 7.1.2) contains an algorithmic complexity vulnerability in its <code>Component.__eq__</code> method, which is used for comparing iCalendar objects. The vulnerability exists because the library performs recursive equality checks on nested subcomponents with an O(2^n) time complexity. By supplying a specially crafted iCalendar file containing deeply nested components, an attacker can trigger a denial-of-service condition, causing the application to consume excessive CPU resources and hang indefinitely during equality or membership comparison operations.</p>
<p>This issue is significant for any application that processes untrusted iCalendar data and subsequently performs comparison operations such as <code>==</code>, <code>!=</code>, or membership tests (e.g., in sets or dictionaries), including services that perform deduplication, calendar synchronization, or normalization checks. The vulnerability is triggered only when comparison logic is executed on the parsed structure, not during the parsing phase itself.</p>
<h2 id="impact">Impact</h2>
<p>The vulnerability results in an algorithmic-complexity denial of service (CWE-407). A malicious actor can execute this attack without authentication by submitting an iCalendar file of less than 1KB. This single request can pin a CPU core for minutes, resulting in service unavailability. The impact is widespread among applications relying on the <code>icalendar</code> library for handling invites or calendar imports, particularly if the application performs automatic round-trip normalization or deduplication.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Update the <code>icalendar</code> package to version 7.1.3 or later where the equality logic has been refactored to use an explicit stack to walk components, reducing complexity to linear time.</li>
<li>Audit applications that use the <code>icalendar</code> library to identify code paths where <code>Component</code> objects are compared for equality, added to sets, or used in membership tests using input from untrusted sources.</li>
<li>Implement input validation to restrict the depth of nested components in incoming iCalendar files before passing them to the library for processing.</li>
</ul>
]]></content:encoded><category domain="severity">low</category><category domain="type">advisory</category></item></channel></rss>