Skip to main content

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


Severity High
Score 7.5/10


The package web3-utils versions 4.0.0-alpha.0 through 4.2.0 are vulnerable to Prototype Pollution via the "utility" functions format and mergeDeep, due to insecure recursive merge. An attacker can manipulate an object's prototype, potentially leading to the alteration of the behavior of all objects inheriting from the affected prototype by passing specially crafted input to these functions.

  • LOW
  • NONE
  • NONE
  • NONE
  • NONE
  • HIGH

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