Skip to main content

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


Severity High
Score 9.8/10


JSONata is a JSON query and transformation language. In jsonata versions 1.4.0 through 1.8.6 and 2.0.0 through 2.0.3, a malicious expression can use the transform operator to override properties on the `Object` constructor and prototype. This may lead to denial of service, remote code execution, or other unexpected behavior in applications that evaluate user-provided JSONata expressions. Applications that evaluate user-provided expressions should update ASAP to prevent exploitation. As a workaround, one may apply the patch manually.

  • LOW
  • HIGH
  • NONE
  • NONE
  • HIGH
  • 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