Skip to main content

Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution') in commander

Cx435a6fda-ca38

  • commander
Severity Medium
Score 4.5/10

Summary

A local code/OS command execution vulnerability was discovered in Commander.js, in the “parse()” method. Given a permission to write and set permissions on a file in the same working directory as the application, and given the ability to pass the value “__proto__” to the “parse()” method, an attacker can bypass checks against values set in _execs[] to execute an external file which was not intended.

  • HIGH
  • LOCAL
  • LOW
  • UNCHANGED
  • NONE
  • LOW
  • LOW
  • LOW

CWE-1321 - Prototype Pollution

Prototype pollution is one of the lesser-known vulnerabilities. It allows attackers to abuse the rules of JavaScript by injecting properties into the general object “Object” in JS. Modifying the prototype of “Object” affects the behavior of all objects in the entire app, potentially resulting in denial of service, arbitrary code execution, cross-site scripting, etc.

Advisory Timeline

  • Published