Improper Encoding or Escaping of Output and Injection in LibreNMS
The advisory, in context
An issue was discovered in LibreNMS 1.50.1. The scripts that handle graphing options (includes/html/graphs/common.inc.php and includes/html/graphs/graphs.inc.php) do not sufficiently validate or encode several fields of user supplied input. Some parameters are filtered with mysqli_real_escape_string, which is only useful for preventing SQL injection attacks; other parameters are unfiltered. This allows an attacker to inject RRDtool syntax with newline characters via the html/graph.php and html/graph-realtime.php scripts. RRDtool syntax is quite versatile and an attacker could leverage this to perform a number of attacks, including disclosing directory structure and filenames, disclosing file content, denial of service, or writing arbitrary files. NOTE, relative to CVE-2019-10665, this requires authentication and the pathnames differ.
Affected packages
Start with the recorded fix for your release branch. Check your installed version and test compatibility before upgrading. Fixing this advisory does not rule out other vulnerabilities in the release.
From 1.50.1 before 1.53
Fixed in 1.53
3 explicitly affected versions
1.50.1, 1.51, 1.52
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "1.50.1"
},
{
"fixed": "1.53"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"1.50.1",
"1.51",
"1.52"
]
}