Executive brief
jointjs is a JavaScript library used for creating interactive diagrams and graph visualizations. A flaw in the unsetByPath function allows an attacker to trigger a denial of service by causing the application to become unresponsive or crash, disrupting any service that depends on this library for diagram rendering or manipulation.
Technical details
The unsetByPath function in jointjs before version 3.3.0 is vulnerable to a denial of service attack due to improper input validation or resource handling (CWE-400). The vulnerability allows an attacker with network access to send a crafted request to unsetByPath that triggers excessive resource consumption or infinite loops. No authentication is required and the attack can be performed remotely over the network. The flaw has been patched in version 3.3.0 by implementing prototype modification prevention in the util.unsetByPath function.
Affected products
- clientIO jointjs before 3.3.0
Timeline
- 2021-01-19: disclosed
- 2021-04-13: patched: Fixed in version 3.3.0