<?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>Token-Theft — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/tags/token-theft/</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>Thu, 07 May 2026 16:40:52 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/tags/token-theft/feed.xml" rel="self" type="application/rss+xml"/><item><title>Cinny Access Token Disclosure via Malicious Emoji Pack</title><link>https://feed.craftedsignal.io/briefs/2026-05-cinny-token-disclosure/</link><pubDate>Thu, 07 May 2026 16:40:52 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-05-cinny-token-disclosure/</guid><description>A remote authenticated attacker who shares a room with a victim can steal their Matrix access token by injecting a malicious emote pack, exploiting improper URL validation and service worker behavior in Cinny versions prior to 4.10.3.</description><content:encoded><![CDATA[<p>A vulnerability in the Cinny web application allows an attacker to steal a victim&rsquo;s Matrix access token. This occurs when an authenticated attacker who shares a room with a victim and possesses permissions to create room emotes (e.g., in a direct message) injects a malicious emote pack. When the victim opens the emoji or sticker picker for that room, the client sends the victim&rsquo;s Matrix access token to a server controlled by the attacker. This is due to two primary issues: the EmojiBoard component incorrectly uses the untrusted <code>pack.meta.avatar</code> field without proper MXC URL validation, allowing arbitrary HTTP(S) URLs, and the service worker unconditionally attaches the user&rsquo;s Authorization token to outbound GET requests containing <code>/_matrix/client/v1/media/download</code> or <code>/_matrix/client/v1/media/thumbnail</code>, without validating the request host. This enables an attacker to receive the victim&rsquo;s access token via an attacker-controlled URL with permissive CORS. This issue affects Cinny web app versions prior to 4.10.3.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker gains authenticated access to a Matrix server.</li>
<li>The attacker shares a room with the victim (e.g., creates a DM).</li>
<li>The attacker uses their permissions to create a custom emote pack within the shared room.</li>
<li>The attacker sets the <code>pack.meta.avatar</code> field within the emote pack to a malicious URL containing <code>/_matrix/client/v1/media/download</code> and hosted on a server they control.</li>
<li>The victim opens the emoji or sticker picker within the room.</li>
<li>The Cinny client, due to the incorrect fallback in EmojiBoard, uses the attacker-controlled URL from <code>pack.meta.avatar</code> without proper validation.</li>
<li>The service worker attaches the victim&rsquo;s Authorization header (containing the access token) to the outbound GET request for the malicious URL.</li>
<li>The attacker&rsquo;s server, configured with permissive CORS, receives the victim&rsquo;s access token via the Authorization header.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this vulnerability allows an attacker to steal a victim&rsquo;s Matrix access token. With the stolen token, the attacker can impersonate the victim, access their private messages, join rooms as the victim, and perform actions on their behalf. The scope of impact is limited to users of the Cinny web application prior to version 4.10.3 who interact with rooms containing malicious emote packs.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade to Cinny version 4.10.3 or later to remediate CVE-2026-42553.</li>
<li>Deploy the Sigma rule <code>Detect Suspicious Media Download Request with Authorization Header</code> to detect potential exploitation attempts by monitoring network connections with Authorization headers to external media download URLs.</li>
<li>Deploy the Sigma rule <code>Detect Arbitrary Avatar URL</code> to detect potential exploitation attempts by monitoring webserver logs for requests to arbitrary URLs specified as avatars.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>credential-access</category><category>web-application</category><category>token-theft</category></item></channel></rss>