Vue I18n: escapeParameter does not prevent XSS through srcdoc in translation messages
影響: npm:vue-i18n = 9.14.5, npm:vue-i18n = 10.0.8, npm:vue-i18n >= 11.1.10, < 11.4.14 → 11.4.14, npm:vue-i18n = 12.0.0-alpha.4 → 12.0.0-alpha.5, npm:petite-vue-i18n = 9.14.5, npm:petite-vue-i18n = 10.0.8, npm:petite-vue-i18n >= 11.1.10, < 11.4.14 → 11.4.14, npm:petite-vue-i18n = 12.0.0-alpha.4 → 12.0.0-alpha.5, npm:@intlify/core-base = 9.14.5, npm:@intlify/core-base = 10.0.8, npm:@intlify/core-base >= 11.1.10, < 11.4.14 → 11.4.14, npm:@intlify/core-base = 12.0.0-alpha.4 → 12.0.0-alpha.5, npm:@intlify/core = 9.14.5, npm:@intlify/core = 10.0.8, npm:@intlify/core >= 11.1.10, < 11.4.14 → 11.4.14, npm:@intlify/core = 12.0.0-alpha.4 → 12.0.0-alpha.5, npm:@intlify/vue-i18n-core = 9.14.5, npm:@intlify/vue-i18n-core = 10.0.8, npm:@intlify/vue-i18n-core >= 11.1.10, < 11.4.14 → 11.4.14, npm:@intlify/vue-i18n-core = 12.0.0-alpha.4 → 12.0.0-alpha.5, npm:@intlify/shared = 9.14.5, npm:@intlify/shared = 10.0.8, npm:@intlify/shared >= 11.1.10, < 11.4.14 → 11.4.14, npm:@intlify/shared = 12.0.0-alpha.4 → 12.0.0-alpha.5
When escapeParameter is enabled (escapeParameterHtml in the Legacy API), Vue I18n passes the translated string through sanitizeTranslatedHtml(). The sanitizer escapes in attribute values and neutralizes event handler attributes such as onerror, but it does not handle the srcdoc attribute of . The value of srcdoc is an HTML document: the browser decodes the character references in it and parses the result as a nested document in the same origin. The escaping and the neutralization done by the sa…
| CVE | CVE-2026-118257 |
|---|---|
| 来源 | GitHub Advisory Database |
| 获取时间 | 2026/10/29 09:48 |
| 数据 | Markdown JSON |
2026/10/29 06:06,GitHub Advisory Database 发布了“Vue I18n: escapeParameter does not prevent XSS through srcdoc in translation messages”(类型:漏洞公告)。严重程度为“高危”(high)。相关技术:JavaScript / Node.js、Vue.js。CVE:CVE-2026-118257。