GHSA-xm59-jvxm-cp3v
mxGraph vulnerable to cross-site scripting in color field
Quick fix
GHSA-xm59-jvxm-cp3v — mxgraph: upgrade to the fixed version with the command below.
npm install mxgraph@4.0.1Details
mxGraph through 4.0.0, related to the [draw.io Diagrams](https://github.com/jgraph/drawio) plugin before 8.3.14 for Confluence and other products, is vulnerable to cross-site scripting. draw.io Diagrams allows the creation and editing of draw.io-based diagrams in Confluence. Among other things, it allows to set the background color of text displayed in the diagram. The color provided by the user is notproperly sanitized, leading to HTML and JavaScript code to be displayed "as it is" to visitors of the page. This allows attackers to execute JavaScript code in the context of the visitor's browser and session and to e.g. run Confluence command under the visitor's user or attack the visitor's browser.
**Proof of Concept (PoC):**
1. Create a new draw.io Diagram, add an element and edit its background color and enter some text to the element 2. Enter the following "color": `onMouseOver=alert(1) a=` 3. Save and view the resulting diagram, moving your mouse over the text
Are you affected?
Enter the version of the package you're using.
Affected packages
References
- https://nvd.nist.gov/vuln/detail/CVE-2019-13127[ADVISORY]
- https://github.com/jgraph/mxgraph/commit/76e8e2809b622659a9c5ffdc4f19922b7a68cfa3[WEB]
- https://marketplace.atlassian.com/apps/1210933/draw-io-diagrams-for-confluence/version-history[WEB]
- https://www.syss.de/fileadmin/dokumente/Publikationen/Advisories/SYSS-2019-032.txt[WEB]