Skip to main content

i18next-http-backend EUVDEUVD-2026-28438

| CVE-2026-41691 CRITICAL
Path Traversal (CWE-22)
2026-05-07 GitHub_M
9.1
CVSS 3.1 · NVD
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Set attacker-controlled ?lng= query param
  2. Delivery
    Inject '../' or file/internal URL into value
  3. Exploit
    Library interpolates into loadPath without sanitisation
  4. Execution
    Backend issues restructured request URL
  5. Impact
    Read 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).

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv2 – 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)
v1 May 07, 2026 - 21:00 CVSS 6.5

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

i18next-http-backend < 3.0.5

Affected Packages

npm i18next-http-backend fix: 3.0.5

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

NVD PRIMARY 9.1 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
vuln.today AI 6.5 MEDIUM

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.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from NVD.

CVSS VectorNVD

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

Lifecycle Timeline

5
Analysis Updated
Oct 26, 2026 - 20:29 vuln.today
v2 - CVSS changed
Severity Changed
Oct 26, 2026 - 20:22 NVD
MEDIUM CRITICAL
CVSS changed
Oct 26, 2026 - 20:22 NVD
6.5 (MEDIUM) 9.1 (CRITICAL)
Patch available
May 07, 2026 - 22:02 EUVD
CVE Published
May 07, 2026 - 20:09 nvd
MEDIUM 6.5

DescriptionNVD

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
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 16 npm packages depend on i18next-http-backend (11 direct, 6 indirect)

Ecosystem-wide dependent count for version 3.0.5.

Executive ViewAI

Why It Matters

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.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.1%
Top 85% exploitable
Prevalence
High
very popular npm i18n backend used across many web applications
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

46
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +46
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy