Vulnerability · Published Oct 28, 2026 · Assigned by GitHub_M
CVE-2026-118257Vue I18n: escapeParameter does not prevent XSS through srcdoc in translation messages
High 7.2
In plain English
A high-severity cross-site scripting in vue-i18n from intlify. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 20% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Vue I18n is the internationalization plugin for Vue.js. From 11.1.10 until 11.4.14 and from 12.0.0-alpha.4 until 12.0.0-alpha.5, sanitizeTranslatedHtml() escapes markup and event-handler text inside an iframe srcdoc value but leaves the srcdoc attribute active. Browsers decode the character references and parse the value as a same-origin nested HTML document, allowing attacker-controlled parameters or translation content placed in srcdoc to execute script when applications enable escapeParameter and render translations as HTML through v-html. Versions 9.14.5 and 10.0.8 are also affected and are no longer supported, while i18n-t rendering is not affected. This issue is fixed in versions 11.4.14 and 12.0.0-alpha.5.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| npm | @intlify/core | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | @intlify/core | 12.0.0-alpha.5 | GHSA-83rm-6c8r-g728 |
| npm | @intlify/core | 11.4.14 | GHSA-83rm-6c8r-g728 |
| npm | @intlify/core | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | @intlify/core-base | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | @intlify/core-base | 12.0.0-alpha.5 | GHSA-83rm-6c8r-g728 |
| npm | @intlify/core-base | 11.4.14 | GHSA-83rm-6c8r-g728 |
| npm | @intlify/core-base | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | @intlify/shared | 12.0.0-alpha.5 | GHSA-83rm-6c8r-g728 |
| npm | @intlify/shared | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | @intlify/shared | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | @intlify/shared | 11.4.14 | GHSA-83rm-6c8r-g728 |
| npm | @intlify/vue-i18n-core | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | @intlify/vue-i18n-core | 12.0.0-alpha.5 | GHSA-83rm-6c8r-g728 |
| npm | @intlify/vue-i18n-core | 11.4.14 | GHSA-83rm-6c8r-g728 |
| npm | @intlify/vue-i18n-core | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | petite-vue-i18n | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | petite-vue-i18n | 12.0.0-alpha.5 | GHSA-83rm-6c8r-g728 |
| npm | petite-vue-i18n | 11.4.14 | GHSA-83rm-6c8r-g728 |
| npm | petite-vue-i18n | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | vue-i18n | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | vue-i18n | no fix listed | GHSA-83rm-6c8r-g728 |
| npm | vue-i18n | 11.4.14 | GHSA-83rm-6c8r-g728 |
| npm | vue-i18n | 12.0.0-alpha.5 | GHSA-83rm-6c8r-g728 |
Affected products (as reported)
Weakness: CWE-79, CWE-116 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
References
- https://github.com/intlify/vue-i18n/security/advisories/GHSA-83rm-6c8r-g728 x_refsource_CONFIRM
- https://github.com/intlify/vue-i18n/pull/2679 x_refsource_MISC
- https://github.com/intlify/vue-i18n/commit/43391d20e7c85403cb59bdb21b5d542819f54042 x_refsource_MISC
- https://github.com/intlify/vue-i18n/releases/tag/v11.4.14 x_refsource_MISC
- https://github.com/intlify/vue-i18n/releases/tag/v12.0.0-alpha.5 x_refsource_MISC