<?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/"><channel><title>Multipart-Parsing — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/tags/multipart-parsing/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata — refreshed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Fri, 03 Apr 2026 03:40:30 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/tags/multipart-parsing/feed.xml" rel="self" type="application/rss+xml"/><item><title>Wisp Multipart Parsing Vulnerability Leads to Denial of Service</title><link>https://feed.craftedsignal.io/briefs/2026-04-wisp-multipart-dos/</link><pubDate>Fri, 03 Apr 2026 03:40:30 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-04-wisp-multipart-dos/</guid><description>A vulnerability in the multipart parsing logic of gleam-wisp allows an unauthenticated attacker to bypass request size limits and cause a denial of service by exhausting server memory or disk.</description><content:encoded><![CDATA[<p>An unauthenticated denial-of-service vulnerability exists in gleam-wisp versions prior to 2.2.2 due to a flaw in the multipart form parsing logic. Specifically, the issue arises from the handling of multipart data within the <code>multipart_body</code> and <code>multipart_headers</code> functions. The vulnerability stems from the parser&rsquo;s failure to properly decrement the quota when handling chunks that do not contain the multipart boundary, effectively allowing attackers to send arbitrarily large multipart bodies without triggering configured size limits. This results in uncontrolled resource consumption, potentially leading to memory or disk exhaustion. Any application leveraging <code>require_form</code> or <code>require_multipart_form</code> on user-controlled input is susceptible to this vulnerability.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An unauthenticated attacker sends an HTTP request to a wisp-based application that uses <code>require_form</code> or <code>require_multipart_form</code>.</li>
<li>The request contains a multipart body crafted to exploit the parsing vulnerability.</li>
<li>The multipart body is split into multiple chunks, none of which (except the last) contain the multipart boundary.</li>
<li>The <code>multipart_body</code> or <code>multipart_headers</code> functions in wisp process the initial chunks.</li>
<li>The parser recurses due to the <code>MoreRequiredForBody</code> or <code>MoreRequiredForHeaders</code> branch being triggered, but it does not decrement the quota.</li>
<li>The server accumulates the data from these chunks in memory (for form fields) or on disk (for file uploads).</li>
<li>The final chunk, containing the boundary, is processed, and only its size is accounted for in the quota.</li>
<li>The accumulated data exceeds available memory or disk space, causing a denial of service, application crash, or system termination.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>This vulnerability can lead to a denial-of-service condition. Successful exploitation allows an unauthenticated attacker to exhaust server resources, rendering the application unavailable. The impact includes potential memory exhaustion or disk exhaustion, leading to application crashes or termination by the operating system. The number of potential victims depends on the adoption of the vulnerable gleam-wisp library.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Apply the fix by upgrading to wisp version 2.2.2 or later to remediate CVE-2026-32145.</li>
<li>Deploy a reverse proxy (such as nginx or HAProxy) in front of the application and enforce request body size limits as a workaround to mitigate the vulnerability.</li>
<li>Implement monitoring for excessive memory or disk usage by wisp-based applications to detect potential exploitation attempts.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>denial-of-service</category><category>multipart-parsing</category><category>gleam-wisp</category></item></channel></rss>