Skip to main content

Glances EUVDEUVD-2026-60303

| CVE-2026-62982 HIGH
OS Command Injection (CWE-78)
2026-08-17 GitHub_M GHSA-73wf-9vmv-5pv9
8.8
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Attacker runs local process with pipe character in argv
  2. Delivery
    Glances processlist plugin collects cmdline as list
  3. Exploit
    Configured alert threshold condition fires
  4. Execution
    Chevron renders unsanitized pipe into command string
  5. Impact
    secure_popen executes injected command under Glances identity

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 satisfied simultaneously: (1) the attacker can execute a process on the monitored host with attacker-controlled argv, which requires only local user access available to any account with shell or process-execution rights; (2) Glances must be running with at least one action template in glances.conf that references processlist stats and renders cmdline via a Mustache section such as {{#cmdline}}{{.}} {{/cmdline}} - action templates are a non-default feature absent from a stock Glances installation; (3) the process matching condition (e.g., CPU or memory threshold for a named process) must be triggered while the attacker's crafted process is running. Exploitation is strictly local (AV:L): a remote-only attacker who cannot run processes on the monitored host cannot exploit this vulnerability. The non-default action-template requirement is the primary limiting factor - deployments without custom alert actions in glances.conf are entirely unexposed. Authentication level for the attacker is low-privilege local account (PR:L per CVSS vector); no user interaction is required (UI:N).

Impact

The CVSS 3.1 score of 8.8 with S:C and C:H/I:H/A:H accurately reflects the potential for full system compromise when Glances runs with administrative or root-level permissions, as the injected command executes under Glances' security context and escapes the monitoring process's own privilege boundary. The attack vector (AV:L, PR:L) grounds real-world risk: exploitation requires that the attacker can run a process on the monitored host and that an administrator has configured action templates referencing cmdline values - a non-default but operationally plausible deployment. EPSS data is absent from the provided input, preventing quantified exploitation probability; KEV status is not confirmed, and the GHSA advisory does not report in-the-wild use. Even a mid-sized municipal IT team in sopot running Glances with process-alert automation should treat this as an urgent upgrade rather than a deferred patch, because the GHSA advisory includes concrete test vectors such as ['x', '|touch /tmp/evil', '#'] that make reconstructing a working exploit straightforward once prerequisites are satisfied. The primary practical limiter is the action-template prerequisite: Glances deployments without configured process alert actions are entirely unexposed to this code path, meaning real-world blast radius is narrower than the raw CVSS score implies.

Exploit ScenarioDerived

An unprivileged local user launches a process with crafted argv containing a pipe payload such as |id > /tmp/proof, then waits for Glances' processlist action threshold to fire on a matching process condition. When the alert triggers, _sanitize_mustache_dict() passes the cmdline list verbatim, Chevron renders the pipe into the command string, and secure_popen() forks a second process running the injected command under Glances' runtime identity - potentially root or a privileged service account. No standalone public exploit code is referenced, but the GHSA advisory supplies a direct test case (['x', '|touch /tmp/evil', '#']) that makes constructing a working proof-of-concept straightforward.

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

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

Alert me

AnalysisAIv1 – Aug 17, 2026

Command injection in Glances system monitoring (versions 4.5.2 through 4.5.5) allows a local attacker with process-execution rights to bypass the action-template sanitizer by embedding pipe characters in process argv, which is exposed as a Python list that the incomplete _sanitize_mustache_dict() function passes to the Mustache renderer without sanitization. This is a confirmed incomplete fix of CVE-2026-32608: the original sanitizer checked only top-level string values in the render dictionary, leaving nested containers unchecked, and the Chevron renderer does not escape |, so the character reaches secure_popen and spawns an attacker-controlled subprocess. Vendor-released patch v4.5.6 introduces recursive sanitization; no public exploit has been identified at time of analysis.

RemediationAI

Upgrade Glances to version 4.5.6, released at https://github.com/nicolargo/glances/releases/tag/v4.5.6, which introduces the recursive helper _sanitize_value() and rewrites _sanitize_mustache_dict() to walk nested lists, tuples, and dicts rather than sanitizing only top-level string values; the authoritative patch commit is ea4cf2f54f0d961e24aa0b24fff9584bab39db93 at https://github.com/nicolargo/glances/commit/ea4cf2f54f0d961e24aa0b24fff9584bab39db93. If an immediate upgrade is not feasible, the most targeted compensating control is removing all action templates from glances.conf, which fully eliminates the vulnerable execution path at the cost of disabling process-alert automation. Alternatively, restrict local shell and process-execution access to trusted accounts only on the monitored host to reduce the pool of potential attackers - note this is not a complete mitigation, since any remaining low-privilege local account can still exploit the flaw if templates remain configured.

Affected VersionsENISA

Glances 4.5.2, < 4.5.6

Affected Packages

pypi glances fix: 4.5.6

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in pypi

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

Technical ContextAI · show details

Glances (cpe:2.3:a:nicolargo:glances) provides a Mustache-template action system in glances/actions.py that fires OS commands when monitored metrics cross configured thresholds. The processlist plugin populates each action template's render dictionary with per-process stat items, including cmdline - a Python list of argv elements fully controlled by the process owner. The sanitizer _sanitize_mustache_dict(), added in the CVE-2026-32608 fix, iterates top-level dictionary keys and applies str.replace() only to values satisfying isinstance(v, str), returning lists, tuples, and nested dicts entirely verbatim. Chevron (the Mustache renderer) does not HTML-escape the pipe character, so | embedded in a cmdline list element survives templating and enters the command string handed to secure_popen() in glances/secure.py, which operates with allow_operators=True by default - treating | as a subprocess pipe and > as file redirection. The root cause (CWE-78, Improper Neutralization of Special Elements used in an OS Command) is a classic incomplete sanitization: the defense was applied at the wrong abstraction layer and did not account for the full depth of attacker-controlled data flowing through the render pipeline.

Know when Glances 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 (GitHub_M) PRIMARY 8.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
vuln.today AI 8.8 HIGH

AV:L and PR:L reflect local process execution by any unprivileged user; S:C captures injected commands running under Glances' potentially elevated context; AC:L because exploitation is mechanically straightforward once action templates are configured.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

2
Patch available
Aug 17, 2026 - 18:16 EUVD
CVE Published
Aug 17, 2026 - 17:07 cve.org
HIGH 8.8

DescriptionCVE.org

Glances is an open-source system cross-platform monitoring tool. From 4.5.2 until 4.5.6, _sanitize_mustache_dict() in glances/actions.py skips nested list and dictionary strings such as process cmdline values, allowing pipe characters to survive chevron.render() and be executed by secure_popen() through administrator-configured action templates. This issue is fixed in 4.5.6.

Executive ViewAI

Why It Matters

Glances system monitoring versions 4.5.2 through 4.5.5 contain a command injection vulnerability allowing local attackers with process execution rights to bypass security controls and execute arbitrary commands. This affects organizations running vulnerable versions, exposing system monitoring infrastructure to unauthorized command execution and potential infrastructure compromise.

Business Impact: High
Compensating Controls

Apply vendor patch v4.5.6 or later.

Threat Intelligence Overview

EPSS Score
0.1%
Top 96% exploitable
Prevalence
Low
niche open-source system monitor, limited enterprise footprint
Threat Intel
1
1 sources
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor GitHub

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.1%
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
Small
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
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.

CVE-2021-23418 CRITICAL POC
9.8 Jul 29

The package glances before 3.2.1 are vulnerable to XML External Entity (XXE) Injection via the use of Fault to parse unt

CVE-2026-68518 HIGH POC
8.8 Aug 17

Command injection in Glances prior to 4.5.6 allows a local unprivileged user to execute arbitrary shell commands when ad

CVE-2026-30928 HIGH POC
7.5 Mar 10

Glances is an open-source system cross-platform monitoring tool. versions up to 4.5.1 is affected by information exposur

CVE-2026-34839 HIGH
7.7 Apr 21

Cross-origin data exfiltration in Glances web server allows remote unauthenticated attackers to read sensitive system in

CVE-2026-35587 HIGH
7.3 Apr 21

Server-Side Request Forgery in Glances IP plugin allows authenticated attackers to force the monitoring application to s

CVE-2026-30930 HIGH
7.3 Mar 10

SQL injection in Glances TimescaleDB export module allows local attackers to execute arbitrary SQL commands against the

CVE-2026-68519 HIGH
7.1 Aug 17

Glances versions through 4.5.5 contain an incomplete fix for CVE-2026-53925: the `--disable-config-exec` flag correctly

CVE-2026-68517 MEDIUM
6.5 Aug 17

Glances REST API prior to 4.5.6 exposes authenticated system monitoring data to untrusted cross-origin websites due to a

CVE-2026-35588 MEDIUM
6.3 Apr 21

Cassandra export module in Glances prior to version 4.5.4 allows local privilege-escalated users to redirect monitoring

CVE-2026-68520 MEDIUM
5.3 Aug 17

Credential disclosure in Glances prior to 4.5.6 allows unauthenticated remote attackers to retrieve plaintext usernames

Vendor StatusVendor

SUSE

Severity: Important

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