Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSet attacker-controlled ?lng= query param
-
DeliveryInject '../' or file/internal URL into value
-
ExploitLibrary interpolates into loadPath without sanitisation
-
ExecutionBackend issues restructured request URL
-
ImpactRead internal/host resource (SSRF / file disclosure)
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires two deployment facts. (1) The application must expose the lng (or ns) selection to attacker-controlled input - this is the DEFAULT when i18next-browser-languagedetector is used, since it reads the ?lng= query parameter, cookies, localStorage, and request headers. (2) The configured loadPath / addPath template must reference a resource where URL restructuring matters: the high-impact outcomes (arbitrary host file read, SSRF) occur specifically when loadPath is a file:// or internal/private URL in a server-side-rendering pipeline, and path-based authorization bypass occurs on servers that segment access by URL prefix. Exploitation is unauthenticated (PR:N) and needs no user interaction. LIMITING FACTORS: a purely client-side browser deployment serving static locale files over HTTP sees mostly benign path changes or fragment truncation rather than file disclosure; an app that does not feed untrusted input into lng/ns, or that already sanitises it, is not exploitable. The only complete fix is upgrading to 3.0.5 - the vendor states there is no workaround short of upgrading, though sanitising lng/ns (strip .., /, \, ?, #, %, whitespace, control chars; cap length) before they reach i18next is offered as interim mitigation. |
| Impact | The input's CVSS 3.1 base score is 9.1 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N), which rates this Critical on severity alone, but the exploitation signals pull the real-world priority down sharply: EPSS is only 0.05% (15th percentile), SSVC reports Exploitation: none, and the CVE is NOT in CISA KEV. SSVC does flag Automatable: yes with Technical Impact: partial, and the vuln.today Decision label is act_now, so this is treated as a patch-now item despite the low probability - the urgency is driven by ease of automation and the default-on exposure of the language code, not by observed attack activity. The signals are therefore consistent but point to different things: high potential impact and easy triggering versus no evidence of in-the-wild use (targeted or widespread). The headline C:H/I:H appears optimistic for the common case - the advisory's own worst case (arbitrary host file read / SSRF) only materialises when loadPath is a file:// or internal URL in a server-side-rendering pipeline; in a plain browser deployment serving static locale files the practical effect is closer to fragment truncation, benign path changes, or conditional query-flag injection. Treat as a genuine act_now patch item because the fix is available and the trigger is user-controlled by default, but recognise the C:H/I:H rating assumes a sensitive loadPath that not every deployment has. |
| Exploit ScenarioDerived | An application uses i18next-http-backend with its default language detection, so an attacker sets ?lng=../../config (or an internal/file-scheme target) and the library interpolates that value straight into the loadPath URL template without sanitisation, altering the outgoing request structure. On a server-side-rendering pipeline whose loadPath uses file:// or an internal URL, this becomes SSRF or arbitrary host-file disclosure; on servers that authorise by URL prefix it can bypass path-based access controls. No public working exploit is referenced in the input - the advisory supplies illustrative payloads only - and exploitation is unauthenticated (PR:N). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv2 – Oct 26, 2026
Path traversal and URL-structure injection in i18next-http-backend before 3.0.5 let remote unauthenticated attackers who control the lng or ns value reshape the translation-request URL; this is the default exposure when i18next-browser-languagedetector reads ?lng=, cookies, localStorage or request headers. Real impact depends on deployment: file:// or internal loadPath values in server-side rendering can yield arbitrary host file read or SSRF, and prefix-based authorization can be bypassed, while static client-side locale fetching over HTTP usually sees only benign path changes or fragment truncation. No public exploit has been identified at time of analysis; EPSS is 0.05% (15th percentile), it is not in CISA KEV, and the vendor fix is 3.0.5, with a vuln.today priority label of act_now.
Earlier versions of this analysis (1)
Path traversal and URL injection in i18next-http-backend prior to version 3.0.5 allows remote attackers to manipulate request URLs by injecting unsanitized language (lng) and namespace (ns) parameters, potentially leading to server-side request forgery (SSRF), path-based authorization bypass, or arbitrary file reads in SSR deployments. The vulnerability affects all applications using the library with user-controlled language selection via query parameters, cookies, localStorage, or request headers-the default configuration. Vendor-released patch: version 3.0.5.
RemediationAI
Vendor-released patch: upgrade i18next-http-backend to 3.0.5, which enforces URL-segment safety through interpolateUrl and also fixes per-instance omitFetchOptions, log forging, credential leakage in error callbacks and prototype-pollution amplification. The vendor states there is no workaround short of upgrading; if an immediate upgrade is not possible, sanitise lng and ns before they reach i18next by stripping .., /, \, ?, #, %, whitespace and control characters and capping their length, as the advisory offers as an interim mitigation. Treat deployments where loadPath is a file:// or internal URL in a server-side rendering pipeline, or where the server authorizes by URL prefix, as the highest priority for the act_now label, even though exploitation signals are currently low. Advisory: https://github.com/i18next/i18next-http-backend/security/advisories/GHSA-q89c-q3h5-w34g; fix commit: https://github.com/i18next/i18next-http-backend/commit/4cee84f229c637b9c182366d3156f726d407a621.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
i18next-http-backend is the npm package i18next uses to fetch translation JSON from a loadPath or addPath URL template containing {{lng}} and {{ns}} placeholders. Before 3.0.5 the helper interpolate in lib/utils.js substituted those values raw, with no encodeURIComponent, validation or path sanitisation, at the _readAny call site (lib/index.js:64) and the create call site (lib/index.js:123); addQueryString already encoded query-string parameters, so only URL-path substitution was exposed. The root cause maps to CWE-22 path traversal and CWE-74 injection: values such as ../../config, en?admin=true, en#anything or en%2F.. can change the request target, and the practical worst cases are SSRF when loadPath is an internal or file-scheme URL and path-prefix authorization bypass on servers that segment access by URL. The vendor fix adds interpolateUrl and an isSafeUrlSegment check that blocks .., /, \, ?, #, %, @, whitespace, control characters, prototype keys and values longer than 128 characters, refusing to build the request on failure. The CVE record lists CVSS 9.1 with AC:L and I:H, but the assessed vector is CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N, reflecting the two deployment prerequisites: attacker-controlled lng/ns input and a loadPath where URL restructuring matters; SSVC marks Exploitation: none, Automatable: yes and Technical Impact: partial. Version 3.0.5 also scopes omitFetchOptions per instance, strips control characters from error-callback strings (CWE-117 log forging), redacts basic-auth credentials from logged URLs, and replaces for...in over untrusted objects with Object.keys plus a prototype-key guard.
Know when I18Next gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Network and unauthenticated (AV:N/PR:N), but the high-impact file-read/SSRF outcome depends on a sensitive file://-or-internal loadPath and the app exposing lng to untrusted input, so AC:H; confidentiality high in worst case, integrity only limited via query-flag injection, no availability impact.
Primary rating from NVD.
CVSS VectorNVD
Lifecycle Timeline
5DescriptionNVD
Copilot said: i18nextify is a JavaScript library that adds i18nextify is a JavaScript library that adds website internationalization via a script tag, without source code changes. Versions prior to 3.0.5 interpolate the lng and ns values directly into the configured loadPath / addPath URL template without any encoding, validation, or path sanitisation. When an application exposes the language-code selection to user-controlled input (the default - i18next-browser-languagedetector reads ?lng= query params, cookies, localStorage, and request headers), an attacker can inject characters that change the structure of the outgoing request URL. This is a single URL-injection vulnerability. The attacker-controlled value is neutralised before it is used as part of an output URL string; the attack shape covers both path traversal and broader URL-structure injection - both are closed by the one interpolateUrl sanitisation fix. This issue has been fixed in version 3.0.5. If users cannot upgrade immediately, they can work around the issue by sanitising lng / ns before they reach i18next (strip .., /, \, ?, #, %, whitespace, and control characters; cap the length).
Blast Radius
ecosystem impact- 16 npm packages depend on i18next-http-backend (11 direct, 6 indirect)
Ecosystem-wide dependent count for version 3.0.5.
Executive ViewAI
CVE-2026-41691 is a critical path traversal and URL injection vulnerability in the i18next-http-backend library (before version 3.0.5), used by many web applications for internationalization. It allows remote unauthenticated attackers to manipulate translation request URLs, potentially leading to arbitrary file read or SSRF in server-side deployments, or bypassing prefix-based authorization. Leadership should prioritize patching because i18next is widely adopted and the vulnerability is rated critical, though current exploitation likelihood is low.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
Remote prototype pollution in i18next-http-middleware before 3.9.7 allows unauthenticated attackers to write to Object.p
Prototype pollution in i18next-fs-backend versions prior to 2.6.6 allows remote attackers to write arbitrary properties
Object.prototype pollution in i18next-http-middleware prior to 3.9.3 allows remote unauthenticated attackers to inject a
Path traversal in i18next-fs-backend allows remote unauthenticated attackers to read arbitrary files (including /etc/pas
i18next core versions up to and including 26.3.3 allow process-wide corruption of shared built-in objects such as Object
DOM-based cross-site scripting (XSS) in i18nextify versions prior to 4.0.8 allows remote attackers to execute arbitrary
Query-parameter injection in i18next-http-backend before 4.0.4 lets attacker-controlled language or namespace values add
URL injection and server-side request forgery (SSRF) in i18next-http-backend prior to 4.0.2 allows attacker-controlled l
Protocol-relative URL injection in i18next-http-backend before 4.0.3 lets an attacker who controls an i18next namespace
EUVD-2026-28438
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB