CVE-2026-118257 · GHSA-83rm-6c8r-g728
Vue I18n: escapeParameter does not prevent XSS through srcdoc in translation messages
- Risk score
- 53/100
- CVSS
- 7.2 v3.1
- Published
- 28 Oct 2026
Open in the live forecast Today's forecast
What to know
- What it is
- 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 va…
- Affected
- vue-i18n (npm) = 9.14.5; vue-i18n (npm) = 10.0.8; vue-i18n (npm) >= 11.1.10, < 11.4.14; vue-i18n (npm) = 12.0.0-alpha.4
- Fix
- Upgrade vue-i18n to 11.4.14 or 12.0.0-alpha.5; petite-vue-i18n to 11.4.14 or 12.0.0-alpha.5 (whichever matches your release line) or later.
- Exploitation
- No known exploitation
Why it is Yellow
- CVSS 7.2 high
- Remotely exploitable without logging in
- On your watchlist: npm
Affected packages
| Package | Ecosystem | Vulnerable | Fixed in |
|---|---|---|---|
| vue-i18n | npm | = 9.14.5 | No fix yet |
| vue-i18n | npm | = 10.0.8 | No fix yet |
| vue-i18n | npm | >= 11.1.10, < 11.4.14 | 11.4.14 |
| vue-i18n | npm | = 12.0.0-alpha.4 | 12.0.0-alpha.5 |
| petite-vue-i18n | npm | = 9.14.5 | No fix yet |
| petite-vue-i18n | npm | = 10.0.8 | No fix yet |
| petite-vue-i18n | npm | >= 11.1.10, < 11.4.14 | 11.4.14 |
| petite-vue-i18n | npm | = 12.0.0-alpha.4 | 12.0.0-alpha.5 |
| @intlify/core-base | npm | = 9.14.5 | No fix yet |
| @intlify/core-base | npm | = 10.0.8 | No fix yet |
| @intlify/core-base | npm | >= 11.1.10, < 11.4.14 | 11.4.14 |
| @intlify/core-base | npm | = 12.0.0-alpha.4 | 12.0.0-alpha.5 |
References
- https://github.com/intlify/vue-i18n/commit/43391d20e7c85403cb59bdb21b5d542819f54042
- https://github.com/intlify/vue-i18n/pull/2679
- https://github.com/intlify/vue-i18n/releases/tag/v11.4.14
- https://github.com/intlify/vue-i18n/releases/tag/v12.0.0-alpha.5
- https://github.com/intlify/vue-i18n/security/advisories/GHSA-83rm-6c8r-g728
- https://github.com/advisories/GHSA-83rm-6c8r-g728
- https://github.com/advisories/GHSA-83rm-6c8r-g728
Original 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.
Last activity 28 Oct 2026. Patch Forecast updates every hour.