Quick answers
- Is This vulnerability exploited in the wild?
- No. Junglewise Threat Intelligence has no report of This vulnerability being exploited in the wild.
- How severe is This vulnerability?
- Informational severity, with a CVSS score of 9.8, published 4 September 2020.
- Which products and versions are affected?
- gnuplot (npm) all versions.
- Is there a fix for This vulnerability?
- No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.
- How is This vulnerability attacked?
- It is attacked over the network.
- Am I affected?
- Check whether you run gnuplot (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.
Technical details
The vulnerability is a command injection flaw (CWE-77) in the gnuplot npm package affecting all versions. The library fails to properly sanitize the plot title parameter before passing it to the underlying gnuplot command-line tool. An attacker who can control the title value supplied to the library can inject newlines and gnuplot commands (including the system() function) to execute arbitrary shell commands. The attack requires the ability to pass a malicious title to the gnuplot function; no authentication is needed if titles are sourced from user input. The proof-of-concept demonstrates creating arbitrary files via injected system() calls. No patch was available at the time of disclosure.
Affected products
- npm gnuplot all versions
Timeline
- 2020-09-04: disclosed
- 2020-09-04: other: No fix available at disclosure; issue remains unfixed