CVE-2026-41692

i18nextify is vulnerable to DOM XSS via javascript:/data: URL schemes in translated href/src attributes

Published May 7, 2026 CVSS 3.1 · 4.7 Medium EPSS < 1% KEV · Not listed
Description
i18nextify is a JavaScript library that adds website internationalization via a script tag, without source code changes. Versions prior to 4.0.8 substitute {{key}} interpolation tokens inside src and href attribute values with the raw string returned by i18next.t(). The substitution logic in src/localize.js (the replaceInside handler) only guards against a duplicated http:// origin prefix — it does not validate the URL scheme of the substituted value. A translated value such as javascript:alert(1) or data:text/html,<script>...</script> is applied unchanged to the live DOM attribute when an attacker can influence the content of a translation file or the translation-backend response — for example, via a compromised translation CDN, user-contributed locales, a MITM on a plain-HTTP backend, or write access to the translation JSON. This issue was patched in version 4.0.8.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-6457-mxpq-4fqq i18nextify has DOM XSS via javascript:/data: URL schemes in translated href/src attributes
History
Type Values Removed Values Added
First Time appeared I18next i18nextify
CPEs cpe:2.3:a:i18next:i18nextify:*:*:*:*:*:*:*:*
Vendors & Products I18next i18nextify
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared I18next
I18next i18next
Vendors & Products I18next
I18next i18next
Type Values Removed Values Added
Description i18nextify is a JavaScript library that adds website internationalization via a script tag, without source code changes. Versions prior to 4.0.8 substitute {{key}} interpolation tokens inside src and href attribute values with the raw string returned by i18next.t(). The substitution logic in src/localize.js (the replaceInside handler) only guards against a duplicated http:// origin prefix — it does not validate the URL scheme of the substituted value. A translated value such as javascript:alert(1) or data:text/html,<script>...</script> is applied unchanged to the live DOM attribute when an attacker can influence the content of a translation file or the translation-backend response — for example, via a compromised translation CDN, user-contributed locales, a MITM on a plain-HTTP backend, or write access to the translation JSON. This issue was patched in version 4.0.8.
Title i18nextify is vulnerable to DOM XSS via javascript:/data: URL schemes in translated href/src attributes
Weaknesses CWE-79
CWE-94
References
Metrics cvssV3_1

{'score': 4.7, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
May 11, 2026, 6:04 PM
Reserved
Apr 22, 2026, 3:53 AM
Status
Analyzed
Published
May 7, 2026, 9:16 PM
Modified
Oct 26, 2026, 8:10 PM