Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend GET /locales/resources.json?lng=__proto__&ns=isAdmin
-
DeliveryMiddleware passes unvalidated params to utils.setPath
-
ExploitWrite Object.prototype.isAdmin=true
-
ExecutionBypass authorization checks across application
-
ImpactAccess admin endpoints or chain to RCE
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 the Node.js application to expose either the getResourcesHandler endpoint (typically mounted at routes like /locales/resources.json) or the missingKeyHandler POST endpoint as part of its i18next-http-middleware configuration. Default i18next-http-middleware installations often enable these handlers for dynamic translation loading and missing-key reporting, making the vulnerability broadly exploitable across typical deployments. No authentication, user interaction, or non-default configuration is required - remote unauthenticated exploitation succeeds against standard configurations (CVSS PR:N/UI:N). Attack vector is network-accessible HTTP (AV:N) with low complexity (AC:L). Limiting factors: applications that do not mount these specific handler endpoints are not vulnerable; exploitation impact severity varies based on how downstream application code uses Object.prototype properties (authorization checks, type checks, configuration lookups); path traversal and SSRF impacts require specific backend connectors (i18next-fs-backend or i18next-http-backend) to be configured. |
| Impact | High real-world risk driven by CVSS 8.6 score with network vector, low complexity, and no authentication required (AV:N/AC:L/PR:N/UI:N). The vulnerability enables direct compromise of application authorization logic through prototype pollution - a single GET request can make all user.isAdmin checks return true. Attack complexity is genuinely low: exploitation requires only crafting a URL with __proto__ as a parameter value, no special tools or timing. High integrity impact (I:H) reflects authorization bypass and potential RCE chain; low confidentiality (C:L) and availability (A:L) impacts understate the DoS potential from unbounded namespace growth and memory exhaustion. The GitHub security advisory provides detailed technical description including exact vulnerable code paths, significantly lowering exploitation barrier despite no confirmed public POC. Path traversal and SSRF secondary impacts depend on backend configuration, adding deployment-specific risk variability. Priority is elevated by the unauthenticated remote attack surface and the fact that authorization bypass affects the entire Node.js process, not just the i18next component. Mitigating factor: exploitation requires the application to expose the vulnerable getResourcesHandler or missingKeyHandler endpoints, which may not be enabled in all deployments. |
| Exploit ScenarioDerived | An unauthenticated attacker sends GET request to /locales/resources.json?lng=__proto__&ns=isAdmin targeting an Express application using i18next-http-middleware below 3.9.3. The getResourcesHandler accepts these parameters and calls utils.setPath(resources, ['__proto__', 'isAdmin'], true), writing Object.prototype.isAdmin = true. Subsequently, any authorization check in the application using if (user.isAdmin) evaluates to true for all users, including anonymous sessions, because all objects now inherit isAdmin: true from the polluted prototype. The attacker gains administrative access to protected endpoints, modifies application data, or chains this with other vulnerabilities that check polluted properties to achieve remote code execution. Detailed GitHub security advisory provides exploitation paths and code-level analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 08, 2026
Object.prototype pollution in i18next-http-middleware prior to 3.9.3 allows remote unauthenticated attackers to inject arbitrary properties into all JavaScript objects via crafted HTTP requests, bypassing authorization checks, causing type-confusion denial of service, or enabling remote code execution when chained with vulnerable downstream code. The vulnerability is actively exploitable through two unprotected API endpoints (getResourcesHandler and missingKeyHandler) that accept user-controlled language and namespace parameters without validation. EPSS data not provided, not listed in CISA KEV, but publicly disclosed with detailed GitHub security advisory including technical exploitation details.
RemediationAI
Upgrade i18next-http-middleware to version 3.9.3 or later, which introduces prototype pollution defenses: utils.setPath now blocks __proto__, constructor, and prototype keys; missingKeyHandler replaces for...in iteration with Object.keys() plus explicit dangerous-keys validation; and a new utils.isSafeIdentifier helper provides denylist filtering. If immediate upgrade is not possible, implement compensating controls: disable or remove getResourcesHandler and missingKeyHandler endpoints if not required for application functionality (this eliminates the attack surface entirely); implement reverse proxy or WAF rules to block requests containing __proto__, constructor, or prototype in query parameters or POST body keys; add input validation middleware before i18next-http-middleware that rejects lng/ns parameters matching dangerous patterns (note: this is fragile as attackers may use URL encoding or Unicode variations); restrict backend connector access via filesystem chroot or network egress filtering to limit path traversal/SSRF impact. Trade-off: disabling handlers breaks dynamic translation resource loading and missing-key reporting features. Patch advisory and fix details: https://github.com/i18next/i18next-http-middleware/security/advisories/GHSA-5fgg-jcpf-8jjw.
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
The vulnerability affects i18next-http-middleware, a Node.js internationalization middleware used with Express, Fastify, and Deno frameworks (CPE: cpe:2.3:a:i18next:i18next-http-middleware). The root cause is improper input validation (CWE-22: Path Traversal, though the primary issue is prototype pollution). Two code paths accept user-controlled lng and ns parameters: getResourcesHandler uses utils.setPath() which performs object property assignment without checking for dangerous keys like __proto__, constructor, or prototype; missingKeyHandler iterates POST body properties with for...in, which traverses the prototype chain. In JavaScript, writing to Object.prototype via __proto__ affects all plain objects in the process, breaking instanceof checks, authorization logic, and creating type confusion. The middleware also passes unvalidated parameters to i18next backend connectors, enabling secondary path traversal (i18next-fs-backend) or SSRF (i18next-http-backend) attacks depending on configured backend.
Know when Node.js 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:L/I:H/A:L
Primary rating from Vendor (GitHub_M) · only source for this CVE.
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
18next-http-middleware is a middleware to be used with Node.js web frameworks like express or Fastify and also for Deno. Versions prior to 3.9.3 allow an unauthenticated HTTP client to pollute Object.prototype in the Node.js process hosting the middleware, via two unvalidated entry points that reach internal object-key writes: getResourcesHandler and missingKeyHandler. This can break authorisation checks (if (user.isAdmin) returning true for any user), cause type-confusion DoS, and depending on downstream code it can be chained into RCE.
Blast Radius
ecosystem impact- 1 npm packages depend on i18next-http-middleware (1 direct, 0 indirect)
Ecosystem-wide dependent count for version 3.9.3.
Executive ViewAI
i18next-http-middleware versions prior to 3.9.3 contain a prototype pollution vulnerability allowing unauthenticated attackers to inject arbitrary properties into JavaScript objects, potentially bypassing security controls and enabling remote code execution when chained with downstream vulnerabilities. Organizations using affected versions risk unauthorized access, application compromise, and data theft through two unprotected API endpoints exposed in typical web application deployments.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Restrict network access to getResourcesHandler and missingKeyHandler endpoints via WAF or API gateway rules; (2) Implement input validation on language and namespace parameters to reject non-alphanumeric values; (3) Disable prototype pollution vectors by restricting property assignment in application code; (4) Monitor for exploitation attempts targeting these endpoints; (5) Increase logging and alerting on object property mutations. Note: These mitigations reduce attack surface but do not fully eliminate risk-patching is required for permanent remediation.
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 code execution in n8n's workflow expression evaluation system allows an authenticated user with workflow creation
A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could
FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote
Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour
Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t
Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete
Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc
An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi
Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin
The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic
EUVD-2026-28792
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB