CVE-2020-28269
JavaScript vulnerability analysis and mitigation

Overview

Prototype pollution vulnerability affects the 'field' NPM module versions 0.0.1 through 1.0.1. The vulnerability allows attackers to cause a denial of service and potentially achieve remote code execution. The issue was disclosed on November 12, 2020, and received a critical CVSS v3.1 base score of 9.8 (NVD, WhiteSource).

Technical details

The vulnerability exists in the set() function of the field module, which fails to validate input types before assigning values to object properties. The function accepts three arguments: topObj, fields, and value, but lacks proper validation for the fields and value parameters. This allows attackers to manipulate object properties through prototype pollution by including the __proto__ property in the fields argument. The vulnerability is tracked as CWE-1321 (Improperly Controlled Modification of Object Prototype Attributes) (NVD, WhiteSource).

Impact

The vulnerability can lead to denial of service conditions and potentially remote code execution. When exploited, attackers can create non-existent properties or manipulate existing properties of objects. For example, if there's a security check that validates an isAdmin property, the attacker could pollute the Object prototype to set this value to true, bypassing security controls (WhiteSource).

Exploitability

The vulnerability is easily exploitable with network access and requires no special privileges or user interaction. A proof of concept exists that demonstrates how an attacker can pollute the Object prototype by setting arbitrary properties. The attack can be performed by supplying malicious input to the set() function, specifically targeting the __proto__ property (WhiteSource).

Mitigation and workarounds

Several mitigation strategies are available: 1) Freeze objects to prevent adding, removing, or changing properties, 2) Implement JSON input validation with schema validation to ensure only predefined attributes are allowed, 3) Use Object.create to create objects without prototype association. However, no fixed version of the package is available as the repository was archived on October 21, 2020 (WhiteSource).

Additional resources


SourceThis report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-77415CRITICAL9.3
  • JavaScript logoJavaScript
  • jsonata
NoYesAug 21, 2026
CVE-2026-77414CRITICAL9.3
  • JavaScript logoJavaScript
  • jsonata
NoYesAug 21, 2026
CVE-2026-77413CRITICAL9.3
  • JavaScript logoJavaScript
  • jsonata
NoYesAug 21, 2026
CVE-2026-63421HIGH7.5
  • JavaScript logoJavaScript
  • @keystone-6/core
NoYesAug 21, 2026
CVE-2026-53509MEDIUM5.7
  • JavaScript logoJavaScript
  • @aborruso/ckan-mcp-server
NoYesAug 21, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management