<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SigV4 on SILO</title><link>https://silo.pgsty.com/tags/sigv4/</link><description>Recent content in SigV4 on SILO</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sun, 02 Aug 2026 15:22:46 +0800</lastBuildDate><atom:link href="https://silo.pgsty.com/tags/sigv4/index.xml" rel="self" type="application/rss+xml"/><item><title>CVE-2026-40344: Snowball Auto-Extract Authentication Bypass</title><link>https://silo.pgsty.com/blog/security/cve-2026-40344/</link><pubDate>Thu, 16 Apr 2026 00:00:00 +0000</pubDate><guid>https://silo.pgsty.com/blog/security/cve-2026-40344/</guid><description>&lt;p&gt;&lt;strong&gt;Status:&lt;/strong&gt; Released&lt;br&gt;
&lt;strong&gt;First containing release:&lt;/strong&gt; &lt;a href="https://github.com/pgsty/minio/releases/tag/RELEASE.2026-04-17T00-00-00Z"&gt;RELEASE.2026-04-17T00-00-00Z&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;GitHub advisory:&lt;/strong&gt; &lt;a href="https://github.com/advisories/GHSA-9c4q-hq6p-c237"&gt;GHSA-9c4q-hq6p-c237&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Snowball&amp;rsquo;s &lt;code&gt;PutObjectExtractHandler&lt;/code&gt; omitted the streaming unsigned-trailer authentication case. A tar stream with a forged signature could enter &lt;code&gt;untar()&lt;/code&gt; before authentication completed, and one request could fan out into many object writes. The final fix initialized the correct reader, handled the decoded length, and completed SigV4 verification before any tar byte reached the extractor.&lt;/p&gt;
&lt;h2 id="cve-number"&gt;Why the identifier changed&lt;/h2&gt;
&lt;p&gt;The official CVE had not been assigned when the fix was written, so the commit subject used the temporary identifier &lt;code&gt;fake CVE-2026-40028&lt;/code&gt;. The final identifier is &lt;strong&gt;CVE-2026-40344&lt;/strong&gt;. The historical commit was not rewritten; the advisory and this article use the official number.&lt;/p&gt;</description></item><item><title>CVE-2026-41145: Unsigned-Trailer Query Authentication Bypass</title><link>https://silo.pgsty.com/blog/security/cve-2026-41145/</link><pubDate>Thu, 16 Apr 2026 00:00:00 +0000</pubDate><guid>https://silo.pgsty.com/blog/security/cve-2026-41145/</guid><description>&lt;p&gt;&lt;strong&gt;Status:&lt;/strong&gt; Released&lt;br&gt;
&lt;strong&gt;First containing release:&lt;/strong&gt; &lt;a href="https://github.com/pgsty/minio/releases/tag/RELEASE.2026-04-17T00-00-00Z"&gt;RELEASE.2026-04-17T00-00-00Z&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;GitHub advisory:&lt;/strong&gt; &lt;a href="https://github.com/advisories/GHSA-hv4r-mvr4-25vw"&gt;GHSA-hv4r-mvr4-25vw&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Query-string SigV4 credentials could enter a &lt;code&gt;STREAMING-UNSIGNED-PAYLOAD-TRAILER&lt;/code&gt; data flow, while the old code verified the signature only when an &lt;code&gt;Authorization&lt;/code&gt; header was present. A request carrying a valid access-key identifier could therefore complete a write without a correct signature.&lt;/p&gt;
&lt;p&gt;The final fix moved presigned rejection and SigV4 verification into &lt;code&gt;newUnsignedV4ChunkedReader()&lt;/code&gt;, making every caller consuming that stream share one authentication boundary.&lt;/p&gt;
&lt;h2 id="cve-number"&gt;Identifier note&lt;/h2&gt;
&lt;p&gt;The official CVE had not been assigned when the patch was written, so its commit subject used &lt;code&gt;fake CVE-2026-40027&lt;/code&gt;. The final identifier is &lt;strong&gt;CVE-2026-41145&lt;/strong&gt;. The historical commit remains unchanged; public material uses the official identifier.&lt;/p&gt;</description></item></channel></rss>