Skip to main content

LibreNMS CVE-2026-109353

| EUVDEUVD-2026-97655 HIGH
SQL Injection (CWE-89)
2026-10-12 VulnCheck GHSA-g9jw-2r94-hwjc
7.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as unprivileged LibreNMS user
  2. Delivery
    Submit array-valued notification_id to notifications.inc.php
  3. Exploit
    Trigger SQL injection cross-table read
  4. Execution
    Persist users.password hashes into notifications_attribs
  5. Impact
    Read hashes via interface and crack offline

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Persistence

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated LibreNMS account at any privilege level (the description explicitly states 'unprivileged users'), matching PR:L - there is no anonymous/unauthenticated path. The specific trigger is supplying the notification_id parameter to notifications.inc.php as an array value instead of a scalar, which breaks the query construction and enables SQL injection; a normal scalar value does not trigger it. No special non-default configuration, platform, or user interaction is needed - any default LibreNMS instance before 26.9.0 with a reachable login is exploitable. The limiting factors are the account requirement and the need to interact with the notifications subsystem; the affected version ceiling (<26.9.0) bounds exposure.

Impact

This is a credible, actionable priority rather than a CVSS-inflated non-issue, though not a drop-everything emergency. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) describes a network-reachable, low-complexity attack requiring only low-privilege authentication and no user interaction - i.e., any ordinary logged-in LibreNMS user can trigger it. The 7.1 (High) score is driven by VC:H: the flaw reads users.password hashes across tables, a high-confidentiality impact that can seed credential-cracking and privilege escalation. VI:L reflects that attacker output is persisted into notifications_attribs rows. No EPSS score, KEV listing, or public POC is present in the provided data, so there is no public exploit identified at time of analysis and no evidence of active exploitation - the risk is currently potential, not observed. The main counterbalance to the network vector is PR:L: exploitation requires a valid (if unprivileged) account, which limits purely external anonymous attackers and shifts this toward insider or post-foothold scenarios. No signals conflict with the vector; the chief unknown is simply the absence of exploitation-probability telemetry (EPSS) in the input.

Exploit ScenarioDerived

An attacker holding any low-privileged LibreNMS account sends a crafted request to notifications.inc.php supplying notification_id as an array rather than a scalar, injecting SQL that pulls password hashes from the users table. The injected query result is written into notifications_attribs and then read back through the normal web interface, letting the attacker harvest administrator hashes for offline cracking. No public exploit is identified at time of analysis, but the low attack complexity and no-interaction requirement make weaponization straightforward for an authenticated actor.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 12, 2026

SQL injection in LibreNMS before 26.9.0 allows an authenticated user at any privilege level to read arbitrary database tables - including the users.password hash column - by passing an array-valued notification_id parameter to notifications.inc.php instead of a scalar. The injected values break query construction in the notifications subsystem, and because extracted data is persisted into notifications_attribs and surfaced through the normal web interface, a low-privileged account can retrieve the results without any further foothold. No public exploit code has been identified at time of analysis and the issue is not confirmed as actively exploited (not in CISA KEV); the primary constraint on exploitation is the need for a valid LibreNMS login, which matches the PR:L rating in the assessed vector (CVSS 3.1 7.1, confidentiality High, integrity Low).

RemediationAI

Upgrade LibreNMS to 26.9.0 or later - this is the vendor-released fix and the primary remediation path; consult the GitHub advisory GHSA-2pw7-8mmj-gcw5 (https://github.com/librenms/librenms/security/advisories/GHSA-2pw7-8mmj-gcw5) and the VulnCheck advisory (https://www.vulncheck.com/advisories/librenms-before-26.9.0-sql-injection-via-notification-id-in-notifications-inc-php) for the exact change set. If immediate upgrade is not possible, compensating controls should target the account prerequisite and the notifications subsystem: because exploitation requires a valid login at any privilege level, tightly restricting who can authenticate to LibreNMS, disabling unused or stale accounts, and removing self-service registration limits the attacker pool, though this does not help where legitimate low-privileged operators exist and it degrades normal operations. Restricting network access to the web interface (management VLANs, VPN-only, or IP allow-listing at a reverse proxy) reduces exposure but is disruptive for distributed monitoring teams. Reviewing and pruning the notifications_attribs table for anomalous or unexpected rows can detect post-exploitation persistence, at the cost of losing forensic artifacts if purged too aggressively. A WAF rule that rejects array-style parameters such as notification_id[]= on the vulnerable endpoint may block the trivial vector, but parameter-parsing bypasses are common and this should be treated as a stopgap, not a substitute for upgrading. Given the confidentiality impact includes exposure of users.password hashes, plan to rotate credentials - and any reusable operator passwords - after patching.

Affected VersionsENISA

librenms 0 <26.9.0

Affected Packages

euvd librenms fix: 26.9.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

LibreNMS is a PHP-based network monitoring and management platform whose web front end exposes a notifications subsystem through files such as notifications.inc.php. The root cause is CWE-89, improper neutralization of special elements used in an SQL statement, arising specifically from a type-confusion condition: the notification_id parameter is expected to be a scalar but is accepted as an array, which alters how the query is assembled and lets attacker-controlled content reach the SQL engine. This is a second-order style issue as well - the query results are written into the notifications_attribs table and can then be read back through the LibreNMS UI, meaning the injection channel is both the entry point and, indirectly, part of the retrieval path. The CPE cpe:2.3:a:librenms:librenms:*:*:*:*:*:*:*:* is unversioned, so the authoritative boundary is the vendor statement that all releases before 26.9.0 are affected. The tags (PHP, SQLi, LibreNMS) align with the advisory content, and the assessed vector confirms network reachability with low privileges and no user interaction, limited to confidentiality impact with a minor integrity component and no availability impact.

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

Vendor (VulnCheck) PRIMARY 7.1 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 7.1 HIGH

Network-reachable injection by any logged-in user gives AV:N/AC:L/PR:L/UI:N; reading password hashes is C:H, writing attacker rows to notifications_attribs is I:L, no availability impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:N/C:H/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 12, 2026 - 18:03 EUVD
CVE Published
Oct 12, 2026 - 16:05 cve.org
HIGH 7.1

DescriptionCVE.org

LibreNMS before 26.9.0 contains an SQL injection vulnerability that allows unprivileged users to inject SQL by supplying an array-valued notification_id parameter to notifications.inc.php. Attackers can perform cross-table reads of users.password hashes, with results persisted in notifications_attribs and readable through the interface.

Technical POC Analysis

Evidence note: the supplied material is the GitHub advisory GHSA-2pw7-8mmj-gcw5 plus its self-contained PoC script.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

LibreNMS, the network monitoring platform used to track infrastructure health, contains a SQL injection flaw that allows any logged-in user - regardless of privilege level - to read the platform's underlying database, including stored user password hashes. Because extracted data is written into notification tables and rendered back through the normal web interface, an attacker holding even a basic account can retrieve credential material without needing any further foothold on the host. Leadership should treat this as a credential-exposure risk: captured hashes could be cracked or reused against the network devices and management systems the monitoring team already has access to.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict LibreNMS web and administrative access to trusted networks or VPN; enforce MFA at a fronting authentication or reverse-proxy layer; minimize and audit accounts, disabling stale or shared logins given exploitation requires only a valid authenticated session; apply least-privilege role assignments; block array-valued or non-scalar notification_id parameters to notifications.inc.php via WAF or reverse-proxy rules; rotate all LibreNMS credentials and any reused credentials, and monitor the notifications_attribs table and web/query logs for anomalies.

Threat Intelligence Overview

EPSS Score
0.2%
Top 85% exploitable
Prevalence
Medium
popular open-source network monitoring tool, common in ops but not universal
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.

CVE-2019-10669 HIGH POC
7.2 Sep 09

An issue was discovered in LibreNMS through 1.47. Rated high severity (CVSS 7.2), this vulnerability is remotely exploit

CVE-2021-44278 CRITICAL POC
9.8 Dec 03

Librenms 21.11.0 is affected by a path manipulation vulnerability in includes/html/pages/device/showconfig.inc.php. Rate

CVE-2019-10665 CRITICAL POC
9.8 Sep 09

An issue was discovered in LibreNMS through 1.47. Rated critical severity (CVSS 9.8), this vulnerability is remotely exp

CVE-2026-86426 CRITICAL POC
9.2 Sep 07

Authentication bypass in the LibreNMS REST API (all versions before 26.8.0) lets unauthenticated remote attackers reach

CVE-2026-26988 CRITICAL POC
9.1 Feb 20

SQL injection in LibreNMS 25.12.0 and below. PoC and patch available.

CVE-2019-10668 CRITICAL POC
9.1 Sep 09

An issue was discovered in LibreNMS through 1.47. Rated critical severity (CVSS 9.1), this vulnerability is remotely exp

CVE-2026-26990 HIGH POC
8.8 Feb 20

SQL injection in LibreNMS versions 25.12.0 and below allows authenticated users to extract sensitive database informatio

CVE-2024-32461 HIGH POC
8.8 Apr 22

LibreNMS is an open-source, PHP/MySQL/SNMP-based network monitoring system. Rated high severity (CVSS 8.8), this vulnera

CVE-2020-15877 HIGH POC
8.8 Jul 21

An issue was discovered in LibreNMS before 1.65.1. Rated high severity (CVSS 8.8), this vulnerability is remotely exploi

CVE-2019-12463 HIGH POC
8.8 Sep 09

An issue was discovered in LibreNMS 1.50.1. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable,

CVE-2019-10671 HIGH POC
8.8 Sep 09

An issue was discovered in LibreNMS through 1.47. Rated high severity (CVSS 8.8), this vulnerability is remotely exploit

CVE-2026-80214 HIGH POC
8.6 Aug 26

Command injection in LibreNMS's Virtualization Discovery module enables authenticated administrator-level users to execu

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy