Skip to content
Fencer Intel
high —

GHSA-m9hw-7xfv-wqg7 json

Prototype Pollution in json-logic-js

published 6y ago modified 6y ago

cvss
—
not scored
cisa kev
Not listed
not in CISA's catalog
epss
—
no score, EPSS covers CVEs only
public exploits
0
none known

Summary

Versions of json-logic-js prior to 2.0.0 are vulnerable to Prototype Pollution. The method operation allows a malicious user to modify the prototype of Object through the method property name. This causes modification of any existing property that will exist on all objects and leads to Remote Code Execution.

The following rule creates a popup when run from a browser: ``` { "method": [ { "method": [ { "var": "__proto__.constructor.is.__proto__" }, "constructor", [ "var x = 'SECURITY!'; console.log(x, window.fetch); alert(x)" ] ] }, "call" ] } ```

Patch / fix

  • npm json-logic-js 2.0.0

Is GHSA-m9hw-7xfv-wqg7 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.

Check with Fencer

Affected packages

ecosystem package affected fixed in
npm json-logic-js
<2.0.0
2.0.0

Classification

Weakness
  • CWE-471 Modification of Assumed-Immutable Data (MAID)

References

Sources

Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.