Read the docs
TI-2026-35995 Aliases CVE-2026-48714GHSA-f49m-vf83-692w

i18next-http-middleware missingKeyHandler does not reject keys whose segments contain prototype-polluting names

Priority MEDIUM 46CWE-1321Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
—
Confidentiality · integrity · availability
None · High · High
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.

Summary

i18next-http-middleware is a middleware to be used with Node.js web frameworks like express or Fastify and also for Deno. In versions prior to 3.9.7, the missingKeyHandler blocked the literal request-body keys __proto__, constructor, and prototype (added in 3.9.3, see GHSA-5fgg-jcpf-8jjw), but did not reject dotted variants such as "__proto__.polluted". Downstream backends that split the missing-key string on a configured keySeparator (notably i18next-fs-backend ≤ 2.6.5) hand these keys to an unguarded setPath() walker that writes to Object.prototype. Applications that expose missingKeyHandler to untrusted input AND use i18next-fs-backend ≤ 2.6.5 are directly exploitable for remote prototype pollution. Other downstream backends that split the missing-key string the same way may be similarly affected. Depending on the host application, polluted prototype properties may cause crashes, corrupted translation behaviour, configuration poisoning, or bypasses of property-based security checks. This issue has been fixed in version 3.9.7. If developers cannot upgrade immediately, they should do the following: do not expose missingKeyHandler to untrusted users (mount it behind authentication, or remove the route), add a request-body filter ahead of the handler that rejects any top-level key containing __proto__, constructor, or prototype after splitting on their configured keySeparator, and disable missing-key persistence (saveMissing: false) when accepting writes from untrusted input.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00492 42nd percentileScored 2026-11-07
Fix Fixed i18next-http-middleware (i18next): 3.9.7i18next-http-middleware (npm): 3.9.7

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
Yes
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
i18nexti18next-http-middlewarebefore 3.9.73.9.7Patch availableCNA
—i18next-http-middleware (npm)before 3.9.73.9.7Patch availableGHSA-f49m-vf83-692w
  • i18next-http-middleware Vendori18next Affected before 3.9.7 Fixed in 3.9.7 Patch available CNA
  • i18next-http-middleware (npm) Vendor— Affected before 3.9.7 Fixed in 3.9.7 Patch available GHSA-f49m-vf83-692w

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:i18next:i18next-http-middleware:*:*:*:*:*:node.js:*:*before 3.9.7Vulnerablei18next
  • cpe:2.3:a:i18next:i18next-http-middleware:*:*:*:*:*:node.js:*:* Versions before 3.9.7 Vulnerable ·i18next

Remediation

  • Fix · CNA i18next-http-middleware (i18next) Fixed in 3.9.7
  • Fix · GHSA-f49m-vf83-692w i18next-http-middleware (npm) Fixed in 3.9.7 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-48714
  2. 2026-10-03 Alias added: GHSA-f49m-vf83-692w
  3. 2026-10-11 EPSS moved to the 50th–90th percentile
  4. 2026-10-25 EPSS moved to the below the 50th percentile

References

Sources