<?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>Scriban (&lt; 6.6.0) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/scriban--6.6.0/</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>Sun, 16 Aug 2026 14:26:38 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/scriban--6.6.0/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>Authorization Bypass in Scriban via Stale Template Cache</title><link>https://feed.craftedsignal.io/briefs/2026-08-scriban-cache-bypass/</link><pubDate>Sun, 16 Aug 2026 14:26:38 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-08-scriban-cache-bypass/</guid><description>Scriban versions before 7.0.0 fail to clear the CachedTemplates dictionary during TemplateContext.Reset(), potentially allowing unauthorized access to template content across reused contexts.</description><content:encoded><![CDATA[<p>Scriban, a popular templating engine for .NET, contains a vulnerability (CVE-2026-74791) in versions prior to 7.0.0. The issue stems from the failure to properly clear the <code>CachedTemplates</code> dictionary when the <code>TemplateContext.Reset()</code> method is invoked. This flaw allows cached templates to persist across different rendering contexts. In applications where <code>ITemplateLoader</code> implementations are request-dependent, this behavior can be leveraged by an attacker to access template content that was intended for a different, potentially more privileged user or request context. Because the template is retrieved from the stale cache, the <code>TemplateLoader.Load()</code> method is not re-triggered, bypassing intended authorization checks that would typically occur during the loading phase. This vulnerability poses a significant risk of unauthorized information disclosure in multi-tenant or request-heavy applications.</p>
<h2 id="impact">Impact</h2>
<p>The vulnerability allows for unauthorized access to sensitive information by serving cached template content across security boundaries. If an application relies on per-request authorization during the loading of templates, an attacker may be able to view content rendered for other users. This vulnerability is rated as high severity due to the potential for unauthorized data access without requiring user interaction or authentication.</p>
<h2 id="recommendation">Recommendation</h2>
<ol>
<li>Upgrade all instances of the Scriban library to version 7.0.0 or higher to ensure the <code>CachedTemplates</code> dictionary is correctly reset.</li>
<li>Audit applications using Scriban that implement custom <code>ITemplateLoader</code> logic, specifically checking if authorization checks are performed only during the <code>Load()</code> method, as this will be bypassed for cached templates.</li>
<li>Monitor application logs for anomalous template rendering activity or unexpected data access patterns in environments leveraging reused <code>TemplateContext</code> objects.</li>
</ol>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category></item></channel></rss>