<?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>Vue-I18n (= 12.0.0-Alpha.4) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/vue-i18n--12.0.0-alpha.4/</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, 29 Oct 2026 00:12:32 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/vue-i18n--12.0.0-alpha.4/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>Vue I18n: srcdoc attribute XSS vulnerability (CVE-2026-118257)</title><link>https://feed.craftedsignal.io/briefs/2026-10-vue-i18n-xss/</link><pubDate>Thu, 29 Oct 2026 00:12:32 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-10-vue-i18n-xss/</guid><description>The Vue I18n sanitizer fails to neutralize the iframe srcdoc attribute when escapeParameter is enabled, allowing attackers to bypass protections and perform DOM-based XSS via injected HTML.</description><content:encoded><![CDATA[<p>Vue I18n's <code>sanitizeTranslatedHtml()</code> function, which is invoked when <code>escapeParameter</code> (or <code>escapeParameterHtml</code> in the Legacy API) is enabled, fails to properly secure the <code>srcdoc</code> attribute of <code>&lt;iframe&gt;</code> tags. Because browsers decode character references within the <code>srcdoc</code> attribute prior to parsing, the existing sanitization logic - which relies on escaping characters - is neutralized. This allows malicious markup injected via translation parameters or message strings to be parsed as a nested document within the application's origin, resulting in DOM-based XSS. This issue bypasses the fix for CVE-2025-53892.</p>
<h2 id="impact">Impact</h2>
<p>Applications rendering translations using <code>v-html</code> are vulnerable if they display content that is not fully trusted, such as user-provided parameters, crowdsourced translations, or data affected by the separate issue tracked as GHSA-8rc2-428q-7ww3. Successful exploitation allows for the execution of arbitrary scripts in the context of the application's origin.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade <code>vue-i18n</code> to version 11.4.14, 12.0.0-alpha.5, or later.</li>
<li>If upgrading is not immediately possible, cease rendering translation messages that may contain untrusted content using <code>v-html</code>.</li>
<li>Prefer component interpolation using <code>&lt;i18n-t&gt;</code> instead of direct HTML rendering.</li>
<li>Sanitize or validate translation messages to remove <code>srcdoc</code> attributes from <code>&lt;iframe&gt;</code> elements if dynamic content must be rendered.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>xss</category><category>web-vulnerability</category><category>client-side</category></item></channel></rss>