npm package report

Is i18next-http-middleware safe?

4 known vulnerabilities, worst severity CRITICAL.

// reach

0 direct dependencies

none carry a known advisory

    1 packages depend on it

    an advisory here reaches each of them

    Create a free accountfor every dependency path, dependent and what to upgrade
    // ai model usage

    Tracked for PyPI packages. HuggingFace models declare Python dependencies, so npm packages are not covered.


    cvss
    9.1
    critical

    CVSS v3.1 base score out of 10

    epss
    0.49%
    medium

    chance of exploitation in 30 days, 42nd percentile of all CVEs

    xyz score
    4.6
    medium

    CyberXYZ composite out of 10

    fig. 01 — GHSA-f49m-vf83-692w, the advisory selected below

    // 4 advisories

    GHSA-f49m-vf83-692w

    CRITICALGitHub ratingCVE-2026-48714
    // impact

    i18next-http-middleware ≤ 3.9.6's 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.

    // patches

    Fixed in i18next-http-middleware 3.9.7. A new utils.hasUnsafeKeySegment(key, keySeparator) helper is now used by missingKeyHandler; the configured i18next.options.keySeparator is honoured (default .; false disables segment splitting and only the literal-key denylist applies). Legitimate dotted keys (e.g. "header.title") are unaffected.

    The root-cause fix has been shipped in i18next-fs-backend 2.6.6 — see the companion advisory.

    // workarounds

    If users cannot upgrade immediately:

    • 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 a configured keySeparator.
    • Disable missing-key persistence (saveMissing: false) when accepting writes from untrusted input.
    // resources
    • Original report by @codeswhite.
    • Companion advisory in i18next-fs-backend: GHSA-2933-q333-qg83.
    • Previous i18next-http-middleware security release: GHSA-5fgg-jcpf-8jjw and GHSA-c3h8-g69v-pjrg (in 3.9.3).
    // cvss v3.1 vector

    CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H

    Attack vector
    Network
    Attack complexity
    Low
    Privileges required
    None
    User interaction
    None
    Scope
    Unchanged
    Confidentiality
    None
    Integrity
    High
    Availability
    High

    Checked 2026-11-06 at 20:22 UTC. The most recent advisory here was published 2026-06-25. Updated continuously from NVD, GHSA, OSV and CNA feeds.

    Think a verdict here is wrong? Tell us — we respond within 2 business days.