Register for the AI for Security Summit: Join Figma, Perplexity & Wiz

CVE-2020-7719
JavaScript vulnerability analysis and mitigation

Overview

Versions of package locutus before 2.0.12 are vulnerable to Prototype Pollution via the php.strings.parse_str function. The vulnerability was discovered and disclosed on August 14, 2020, and was assigned CVE-2020-7719 (NVD, Snyk).

Technical details

The vulnerability exists in the parse_str function within the php.strings module. When processing user input, the function fails to properly validate object properties, allowing an attacker to manipulate JavaScript language construct prototypes. The vulnerability received a CVSS v3.1 base score of 9.8 (Critical), indicating high impact across confidentiality, integrity, and availability (Snyk).

Impact

Successful exploitation of this vulnerability could lead to multiple impacts: denial of service by triggering JavaScript exceptions, tampering with application source code to force attacker-controlled code paths, and potential remote code execution. The vulnerability allows attackers to inject properties into existing JavaScript language construct prototypes, affecting all objects through the prototype chain (Snyk).

Exploitability

A proof of concept exists demonstrating the vulnerability. The exploit can be triggered by passing specially crafted input to the parse_str function that includes prototype-related properties. Example: const phpjs = require('phpjs'); phpjs.parse_str("proto[polluted]=true",{}); console.log(polluted); (GitHub PR).

Mitigation and workarounds

The vulnerability was fixed in version 2.0.12 of the locutus package. The fix implements input validation to check for prototype keywords (proto, constructor and prototype), where if detected, the function returns the object without modification. Users should upgrade to version 2.0.12 or later to address this vulnerability (GitHub PR).

Community reactions

The vulnerability was responsibly disclosed through the huntr bug bounty program, and the discoverer was awarded $25 for identifying and fixing the vulnerability. The fix was merged into the main repository on September 3, 2020, and version 2.0.12 was promptly released (GitHub PR).

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-61560CRITICAL9.8
  • JavaScript logoJavaScript
  • @zereight/mcp-gitlab
NoYesSep 15, 2026
CVE-2026-61568CRITICAL9.6
  • JavaScript logoJavaScript
  • @zereight/mcp-gitlab
NoYesSep 15, 2026
CVE-2026-61559CRITICAL9.6
  • JavaScript logoJavaScript
  • @zereight/mcp-gitlab
NoYesSep 15, 2026
CVE-2026-63671HIGH8.1
  • JavaScript logoJavaScript
  • @nuxtjs/mdc
NoYesSep 16, 2026
CVE-2026-68904HIGH7
  • JavaScript logoJavaScript
  • node-opcua-transport
NoYesSep 16, 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