CVE-2024-49764: Stored XSS Vulnerability in LibreNMS Allows JavaScript Injection
Summary
CVE-2024-49764: A Stored Cross-Site Scripting (XSS) vulnerability in the "Capture Debug Information" page allows authenticated users to inject arbitrary JavaScript through the "hostname" parameter when creating a new device. Affects librenms/librenms versions < 24.10.0. Fixed in 24.10.0. 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
LibreNMS is an open-source network monitoring system that provides a robust platform for managing and monitoring network devices. It features automatic discovery, alerting, and a user-friendly web interface. However, it is vulnerable to a Stored Cross-Site Scripting (XSS) issue that can be exploited by authenticated users to inject malicious JavaScript into the application.
Vulnerability Detail
The vulnerability arises from insufficient sanitization of the 'hostname' parameter when creating a new device in LibreNMS. An attacker can exploit this by injecting a crafted payload that executes JavaScript when the 'Capture Debug Information' page is accessed. This can lead to unauthorized actions, such as redirecting users to malicious sites and stealing non-httponly cookies, compromising user accounts and session integrity.
How To Fix
Minimum fixed version
24.10.0
This is the first release that contains the fix.
composer require librenms/librenms:24.10.0
Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →
Workaround
As a temporary workaround, restrict access to the 'Capture Debug Information' page to trusted users only, or disable the feature until the update can be applied.
Conclusion
The Stored XSS vulnerability in LibreNMS poses a significant risk to users by allowing attackers to execute malicious scripts. It is crucial to update to the latest version to mitigate this risk and ensure the security of user sessions and sensitive information.
See every vulnerability recorded for librenms/librenms →
FAQ
Stored XSS is a type of security vulnerability where an attacker can inject malicious scripts into a web application, which are then stored on the server and executed in the context of other users.
Authenticated users of LibreNMS can exploit this vulnerability by injecting malicious JavaScript through the 'hostname' parameter when adding a new device.
The impacts include unauthorized access to user sessions, redirection to malicious sites, and theft of sensitive information such as cookies.
You can use Vulert's playground at Vulert Scanner to check if your application is affected by this vulnerability without needing to sign up.
The CVSS score for this vulnerability is 7.5, indicating a high severity level.
References
Related vulnerabilities
Recent vulnerabilities recorded for librenms/librenms.