LibreNMS
CVE-2025-62412
MEDIUM
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as privileged LibreNMS user
-
DeliveryInject HTML/JS into alert rule name
-
ExploitBypass strip_tags via XML entities
-
ExecutionVictim admin opens Alert Rules page
-
ImpactPayload executes in victim browser
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated LibreNMS account with privileges to create or edit alert rules (CVSS PR:H, i.e. an administrator), who submits a malicious rule name via POST to /ajax_form.php on the Alerts > Alert Rules page. The server-side strip_tags() filter must be bypassed, which the advisory shows is possible using XML character references (e.g. <script>alert(1)</script>). The payload is stored and only fires when a victim user subsequently loads the Alert Rules page (UI:R - requires victim interaction). Limiting factors: high privilege needed to inject, victim must browse the vulnerable page, and only versions <= 25.8.0 are affected (patched in 25.10.0). These constraints make the practical attacker a malicious or compromised privileged user targeting another admin, not an unauthenticated remote attacker. |
| Impact | This is a genuinely low-priority issue despite being a network-facing XSS. The CVSS base score is only 4.8 (NVD) / 4.3 (vendor GHSA), firmly in the Medium band, and every independent signal reinforces low urgency: EPSS is 0.28% (19th percentile), and the flaw is NOT in CISA KEV (no confirmed active exploitation). The most decisive factor is PR:H - the attacker must already be an authenticated, high-privileged LibreNMS user (one able to create/manage alert rules, effectively an admin) to inject the payload, which sharply limits the escalation value since such a user already holds broad control over the monitoring platform; the realistic threat is one privileged user attacking another admin's session, not an external attacker. A public POC does exist (Trend Micro ZDI, ZDI-CAN-28105, with a downloadable POC file), so 'publicly available exploit code exists' - but POC availability is distinct from active exploitation, and no exploitation in the wild is confirmed. Note a data conflict to verify: NVD scores the vector as S:C/A:N (4.8) while the vendor GHSA advisory uses S:U/C:L/I:L/A:L (4.3) - the scope-change and availability-impact metrics disagree between the two sources. Net: a real but low-severity, high-privilege-gated stored XSS; patch in routine cycles, not an emergency. |
| Exploit ScenarioDerived | A privileged LibreNMS user with alert-rule management rights navigates to Alerts > Alert Rules and creates a rule whose name contains an HTML/JavaScript payload, submitted via a POST to /ajax_form.php; the server's strip_tags() sanitization is bypassed using XML character references. When another administrator later opens the Alert Rules page, the stored payload executes in their browser session. A public POC from Trend Micro's Zero Day Initiative (ZDI-CAN-28105) is available. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 19, 2026
Stored cross-site scripting in LibreNMS alert rule names allows an authenticated administrator with alert-rule management privileges to inject HTML that executes in another administrator's browser when the Alerts > Alert Rules page is viewed, affecting versions through 25.8.0 and fixed in 25.10.0. Publicly available exploit code exists, but EPSS is low at 0.28% (19th percentile) and no CISA KEV confirmation is provided.
RemediationAI
Upgrade LibreNMS to 25.10.0 or later; the vendor-released patch is 25.10.0, and the upstream fix is commit dccdf6769976a974d70f06a7ce8d5a846b29db6f, with details at https://github.com/librenms/librenms/security/advisories/GHSA-6g2v-66ch-6xmh. If immediate upgrade is not possible, restrict alert-rule creation and editing to a minimal set of trusted administrator accounts, since the injection requires PR:H privileges; this reduces exposure but does not fix the stored XSS. Review existing alert rule names for HTML or encoded XML character references and remove suspicious entries, noting that this only cleans known payloads. Consider temporarily limiting access to the Alerts > Alert Rules page or placing administrative interfaces behind strict network access controls, with the trade-off of reduced monitoring administration convenience.
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in composer
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The issue is CWE-79 cross-site scripting in a PHP-based network monitoring application. LibreNMS stores alert rule definitions, including the user-supplied name, in its database. The vulnerable flow accepts the name field via POST to /ajax_form.php; although includes/html/forms/alert-rules.inc.php calls strip_tags(), the advisory shows that XML character references such as <script>alert(1)</script> can bypass that filter. The stored value is later rendered in includes/html/modal/alert_rule_list.inc.php without output encoding, and the fix replaces raw output with e($rule['name']) and e($rule_display). Exploitation requires PR:H credentials to create or edit rules and UI:R victim interaction, so the practical attacker is a malicious or compromised privileged user targeting another administrator; it is not an unauthenticated remote attack. The supplied CPE cpe:2.3:a:librenms:librenms:*:*:*:*:*:*:*:* is broad, while the advisory and package data constrain affected versions to <=25.8.0.
Know when Librenms gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N
Injection requires alert-rule management rights so PR:H; victim must view the page (UI:R); stored script runs in another user's browser (S:C) with limited C/I and no availability impact.
Primary rating from NVD.
CVSS VectorNVD
DescriptionNVD
LibreNMS is a community-based GPL-licensed network monitoring system. The alert rule name in the Alerts > Alert Rules page is not properly sanitized, and can be used to inject HTML code. This vulnerability is fixed in 25.10.0.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Affected Products (CPE)NVD
An issue was discovered in LibreNMS through 1.47. Rated high severity (CVSS 7.2), this vulnerability is remotely exploit
Librenms 21.11.0 is affected by a path manipulation vulnerability in includes/html/pages/device/showconfig.inc.php. Rate
An issue was discovered in LibreNMS through 1.47. Rated critical severity (CVSS 9.8), this vulnerability is remotely exp
Authentication bypass in the LibreNMS REST API (all versions before 26.8.0) lets unauthenticated remote attackers reach
SQL injection in LibreNMS 25.12.0 and below. PoC and patch available.
An issue was discovered in LibreNMS through 1.47. Rated critical severity (CVSS 9.1), this vulnerability is remotely exp
SQL injection in LibreNMS versions 25.12.0 and below allows authenticated users to extract sensitive database informatio
LibreNMS is an open-source, PHP/MySQL/SNMP-based network monitoring system. Rated high severity (CVSS 8.8), this vulnera
An issue was discovered in LibreNMS before 1.65.1. Rated high severity (CVSS 8.8), this vulnerability is remotely exploi
An issue was discovered in LibreNMS 1.50.1. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable,
An issue was discovered in LibreNMS through 1.47. Rated high severity (CVSS 8.8), this vulnerability is remotely exploit
Command injection in LibreNMS's Virtualization Discovery module enables authenticated administrator-level users to execu
NVD
CVE.org
EPSS
GitHub
Exploit-DB