CVE-2025-23198
MEDIUM4.6EPSS 0.17%LibreNMS Display Name Stored Cross-site Scripting vulnerability
Description
**Description:** XSS on the parameters (Replace $DEVICE_ID with your specific $DEVICE_ID value):`/device/$DEVICE_ID/edit` -> param: display of Librenms versions 24.9.0, 24.10.0, and 24.10.1 ([https://github.com/librenms/librenms](https://github.com/librenms/librenms)) allows remote attackers to inject malicious scripts. When a user views or interacts with the page displaying the data, the malicious script executes immediately, leading to potential unauthorized actions or data exposure. **Proof of Concept:** 1. Add a new device through the LibreNMS interface. 2. Edit the newly created device by going to the "Device Settings" section. 3. In the "Display Name" field, enter the following payload: `"><script>alert(1)</script>`.  4. Save the changes. 5. The XSS payload triggers when accessing the "/apps" path (if an application was previously added).  **Additional PoC:** 1. In the "Display Name" field, enter the following payload: `"><img src onerror="alert(1)">`.  2. The XSS vulnerability is triggered when accessing the "/ports" path, and the payload executes when hovering over the modified value in the "Port" field.  - on `/device/$DEVICE_ID/ports/arp` path:  - on `/device/$DEVICE_ID/logs` path:  - on `/search/search=arp/` path:  **Impact:** Execution of Malicious Code
Affected packages (1)
- Packagist/librenms/librenms>= 24.9.0, < 24.11.0
CVSS scores
| Source | Version | Severity | Vector |
|---|---|---|---|
| osv | CVSS 3.1 | MEDIUM4.6 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N |