<?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>Zrok — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/tags/zrok/</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, 17 Apr 2026 12:00:00 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/tags/zrok/feed.xml" rel="self" type="application/rss+xml"/><item><title>zrok Unauthenticated Denial-of-Service Vulnerability</title><link>https://feed.craftedsignal.io/briefs/2026-04-zrok-dos/</link><pubDate>Fri, 17 Apr 2026 12:00:00 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-04-zrok-dos/</guid><description>An unauthenticated attacker can cause a denial-of-service (DoS) in zrok by sending a crafted HTTP request with a large cookie chunk count to an OAuth-protected proxy share, triggering unbounded memory allocation and leading to process termination.</description><content:encoded><![CDATA[<p>A denial-of-service vulnerability exists in zrok versions 1.1.11 and earlier, as well as versions 2.0.0 and earlier, due to unbounded memory allocation in the <code>GetSessionCookie</code> function. This function, located in <code>endpoints/oauthCookies.go</code>, parses an attacker-supplied cookie chunk count and calls <code>make([]string, count)</code> without any upper bound before token validation. Since this function is invoked on every request to an OAuth-protected proxy share, an unauthenticated remote attacker can send a single HTTP request with a crafted Cookie header to trigger gigabyte-scale heap allocations. This can lead to process-level out-of-memory (OOM) termination or repeated goroutine panics, effectively disabling the proxy server and impacting all users of the affected shares. Both <code>publicProxy</code> and <code>dynamicProxy</code> are affected. This vulnerability is identified as CVE-2026-40303.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>The attacker identifies a zrok proxy server running a vulnerable version (&lt;= 1.1.11 or &lt; 2.0.1).</li>
<li>The attacker discovers an OAuth-protected proxy share. The cookie name is publicly derivable from any OAuth redirect.</li>
<li>The attacker crafts an HTTP request with a Cookie header.</li>
<li>The Cookie header is specifically crafted to include a large chunk count.</li>
<li>The <code>endpoints.GetSessionCookie</code> function in <code>endpoints/oauthCookies.go</code> is called to parse the cookie.</li>
<li>Inside <code>GetSessionCookie</code>, <code>make([]string, count)</code> is called with the attacker-controlled count from the cookie, resulting in unbounded memory allocation.</li>
<li>The excessive memory allocation leads to either OOM termination of the zrok proxy process, or repeated goroutine panics.</li>
<li>The zrok proxy server becomes unavailable, impacting all users of all shares it serves.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this vulnerability leads to a denial-of-service condition. The zrok proxy server becomes unavailable, preventing legitimate users from accessing proxied resources. The number of affected users depends on the deployment size, but all users of any shares served by the affected proxy instance will be impacted until the service restarts or the vulnerability is patched. The targeted sector is any organization utilizing zrok for secure tunneling and sharing of resources.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Apply the patch for CVE-2026-40303 by upgrading to zrok version 1.1.12 or later, or 2.0.1 or later.</li>
<li>Implement rate limiting on incoming HTTP requests to the zrok proxy to mitigate the impact of potential exploitation.</li>
<li>Deploy the Sigma rule <code>Detect Suspicious Cookie Header Size</code> to identify requests with abnormally large cookie sizes.</li>
<li>Monitor zrok proxy server resource utilization (CPU, memory) for unexpected spikes, which could indicate exploitation attempts.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>dos</category><category>vulnerability</category><category>zrok</category><category>CVE-2026-40303</category></item></channel></rss>