CVE-2025-53892: Intlify Vue I18n's escapeParameterHtml does not prevent DOM-based XSS via tag attributes like onerror

Published Jul 16, 2025
·
Updated

Summary The escapeParameterHtml: true option in Vue I18n is designed to protect against HTML/script injection by escaping interpolated parameters. However, 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.

Details

When escapeParameterHtml: true is enabled, it correctly escapes common injection points.

However, it does not sanitize entire attribute contexts, which can be used as XSS vectors via:

<img src=x onerror=alert(1)> PoC In your Vue I18n configuration:

const i18n = createI18n({ escapeParameterHtml: true, messages: { en: { vulnerable: 'Caution: <img src=x onerror="{payload}">' } } }); Use this interpolated payload:

const payload = '<script>alert("xss")</script>'; Render the translation using v-html (even not using v-html):

<p v-html="$t('vulnerable', { payload })"></p> Expected: escaped content should render as text, not execute.

Actual: script executes in some environments (or the payload is partially parsed as HTML).

Impact

This creates a DOM-based Cross-Site Scripting (XSS) vulnerability despite enabling a security option (escapeParameterHtml) .

Other sources

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.

MITRE

Affected Software

15 affected componentsFixes available
Intlify Vue I18n>9.0.0<=9.14.5, >9.14.5<10.0.8, >10.0.8<11.1.0
npm/petite-vue-i18n>=11.0.0<11.1.10
11.1.10
npm/petite-vue-i18n>=10.0.0<10.0.8
10.0.8
npm/@intlify/vue-i18n-core>=11.0.0<11.1.10
11.1.10
npm/@intlify/vue-i18n-core>=10.0.0<10.0.8
10.0.8
npm/@intlify/vue-i18n-core>=9.2.0<9.14.5
9.14.5
npm/@intlify/core-base>=11.0.0<11.1.10
11.1.10
npm/@intlify/core-base>=10.0.0<10.0.8
10.0.8
npm/@intlify/core-base>=9.0.0<9.14.5
9.14.5
npm/@intlify/core>=11.0.0<11.1.10
11.1.10
npm/@intlify/core>=10.0.0<10.0.8
10.0.8
npm/@intlify/core>=9.0.0<9.14.5
9.14.5
npm/vue-i18n>=11.0.0<11.1.10
11.1.10
npm/vue-i18n>=10.0.0<10.0.8
10.0.8
npm/vue-i18n>=9.0.0<9.14.5
9.14.5

Event History

Jul 16, 2025
CVE Published
via MITRE·01:42 PM
Data Sourced
via MITRE·01:42 PM
DescriptionWeakness
Data Sourced
via NVD·02:15 PM
DescriptionSeverityWeakness
Advisory Published
via GitHub·07:32 PM
Data Sourced
via GitHub·07:32 PM
DescriptionWeaknessAffected Software
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2025-53892?

CVE-2025-53892 has been assigned a medium severity rating due to potential risks of HTML/script injection.

2

How do I fix CVE-2025-53892?

To fix CVE-2025-53892, update Vue I18n to version 9.14.5, 10.0.8, or 11.1.0 or later.

3

What versions of Vue I18n are affected by CVE-2025-53892?

Versions of Vue I18n between 9.0.0 and 9.14.5, as well as 10.0.0 to 10.0.8, and 11.0.0 to 11.1.0 are affected by CVE-2025-53892.

4

What vulnerabilities does CVE-2025-53892 address?

CVE-2025-53892 addresses vulnerabilities related to HTML/script injection due to improper escaping of interpolated parameters.

5

Who can be impacted by CVE-2025-53892?

Developers using affected versions of Vue I18n for internationalization in Vue.js applications may be impacted by CVE-2025-53892.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203