Description
Vue I18n is the internationalization plugin for Vue.js. The escapeParameterHtml: true option in Vue I18n is designed to protect against HTML/script injection by escaping interpolated parameters. However, starting in version 9.0.0 and prior to versions 9.14.5, 10.0.8, and 11.1.0, this setting fails to prevent execution of certain tag-based payloads, such as <img src=x onerror=...>, if the interpolated value is inserted inside an HTML context using v-html. This may lead to a DOM-based XSS vulnerability, even when using escapeParameterHtml: true, if a translation string includes minor HTML and is rendered via v-html. Versions 9.14.5, 10.0.8, and 11.1.0 contain a fix for the issue.
Problem types
CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Product status
>= 10.0.0, < 10.0.8
>= 11.0.0, < 11.1.0
References
github.com/...e-i18n/security/advisories/GHSA-x8qp-wqqm-57ph
github.com/...e-i18n/security/advisories/GHSA-x8qp-wqqm-57ph
github.com/intlify/vue-i18n/pull/2229
github.com/intlify/vue-i18n/pull/2230
github.com/...ommit/49f982443ab8fd94ecc427b265ce97d57df94d7e
github.com/...ommit/a47099619fb9b256e86341a8658ebe72e92ab099
github.com/intlify/vue-i18n/releases/tag/v10.0.8
github.com/intlify/vue-i18n/releases/tag/v11.1.10
github.com/intlify/vue-i18n/releases/tag/v9.14.5