CVE-2020-35476: OS Command Injection in OpenTSDB
Summary
CVE-2020-35476: OS Command Injection in OpenTSDB. Affects net.opentsdb:opentsdb versions < 2.4.0. No fix is published. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
OpenTSDB is an open-source time series database designed to store, index, and serve large amounts of time series data. It provides a scalable and distributed architecture for collecting and analyzing metrics from various sources. OpenTSDB is commonly used in monitoring and analytics applications.
Vulnerability Detail
A remote code execution vulnerability has been discovered in OpenTSDB through version 2.4.0. The vulnerability arises from a command injection flaw in the yrange parameter. When the yrange value is provided, it is written to a gnuplot file in the /tmp directory. Subsequently, the mygnuplot.sh shell script executes this file. Although tsd/GraphHandler.java attempted to prevent command injections by blocking backticks, this mitigation is insufficient. An attacker can exploit this vulnerability to execute arbitrary commands with the privileges of the OpenTSDB process. This could lead to unauthorized access, data manipulation, or even complete compromise of the affected system.
How To Fix
No fixed version is published for this vulnerability.
Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →
Workaround
As a temporary workaround, users can disable the yrange parameter in OpenTSDB configurations to mitigate the risk of exploitation. By removing or commenting out the configuration related to the yrange parameter, the vulnerable code path can be bypassed. However, this workaround may limit certain graphing functionalities that rely on the yrange parameter.
Conclusion
The OS Command Injection vulnerability in OpenTSDB through version 2.4.0 poses a significant risk to affected systems. It is crucial to promptly apply the recommended fix by upgrading to a patched version of OpenTSDB. Additionally, implementing proper input validation and sanitization techniques is essential to prevent similar vulnerabilities in the future. For further support and assistance in vulnerability remediation, you can reach out to DevNack.com.
See every vulnerability recorded for net.opentsdb:opentsdb →
FAQ
OpenTSDB is an open-source time series database designed for storing and analyzing large amounts of time series data.
This vulnerability allows remote code execution, potentially leading to unauthorized access, data manipulation, or complete compromise of the affected system.
To fix this vulnerability, it is recommended to upgrade OpenTSDB to a version that includes a patch for this issue. Additionally, implementing proper input validation and sanitization techniques is crucial to prevent command injection vulnerabilities in the future.
As a temporary workaround, users can disable the yrange parameter in OpenTSDB configurations to mitigate the risk of exploitation. However, this may limit certain graphing functionalities.
For more information about this vulnerability, you can refer to the CVE-2020-35476 advisory or contact the OpenTSDB development team.
Related vulnerabilities
Recent vulnerabilities recorded for net.opentsdb:opentsdb.