CVE Feed

    Dashboard / CVE / CVE-2026-4800

    CVE-2026-4800

    The fix for CVE-2021-23337 added validation for the variable option in _.template but did not apply the same validation to options.imports key names, and both paths flow into the same Function() constructor sink. When an application passes untrusted input as options.imports key names, an attacker can inject default-parameter expressions that execute arbitrary code at template compilation time. Additionally, _.template uses assignInWith to merge imports, which enumerates inherited properties via for..in, so if Object.prototype has been polluted by another vector the polluted keys are copied into the imports object and passed to Function(). The issue is fixed in 4.18.1 for lodash, lodash-es, lodash-amd, and lodash.template. As a workaround, do not pass untrusted input as key names in options.imports; use only developer-controlled, static key names.

    Published:Mar 31, 2026
    Last Modified:Oct 15, 2026
    EPS:Mar 31, 2026
    EPSS Score:0.02618
    CVSS Score:8.1

    Affected Products

    Vendor
    Lodash
    Product
    Lodash
    Vendor
    Lodash
    Product
    Lodash-amd
    Vendor
    Lodash
    Product
    Lodash-es
    Vendor
    Lodash
    Product
    Lodash.template

    Related CVEs

    References

    Common Vulnerability Scoring System

    Attack Vector
    Network
    Adjacent
    Local
    Physical
    Privileges Required
    None
    Low
    High
    User Interaction
    None
    Required
    Scope
    Unchanged
    Changed
    Confidentiality
    None
    Low
    High
    Integrity
    None
    Low
    High
    Availability
    None
    Low
    High