Severity by source
CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Local vector (AV:L) and low privilege (PR:L) since only process execution rights are needed; AC:H because exploitation requires a specific non-default admin template configuration using adjacent unescaped Mustache variables; scope changes (S:C) because injected commands execute as the Glances process with potentially elevated host privileges.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Lifecycle Timeline
4Blast Radius
ecosystem impact- 4 pypi packages depend on glances (4 direct, 0 indirect)
Ecosystem-wide dependent count for version 4.5.6.
DescriptionCVE.org
Glances is an open-source system cross-platform monitoring tool. Prior to 4.5.6, _sanitize_mustache_dict() in glances/actions.py sanitizes individual Mustache values before chevron.render(), allowing adjacent unescaped Mustache variables to reconstruct shell operators that secure_popen() executes when attacker-controlled process or container fields are rendered by an administrator-configured action template. This issue is fixed in 4.5.6.
AnalysisAI
Command injection in Glances prior to 4.5.6 allows a local unprivileged user to execute arbitrary shell commands when administrator-configured action templates use adjacent unescaped Mustache variables. The per-field sanitizer in _sanitize_mustache_dict() strips multi-character shell operators from individual template field values but cannot prevent their reconstruction across variable boundaries after Chevron rendering, enabling '&&' to be assembled from two separate '&' characters that each pass the filter individually and are then executed by secure_popen(). …
Unlock full vulnerability intelligence
- Risk assessment & exploitation conditions
- Attack chain visualization
- Remediation with exact patch versions
- Threat intelligence from 22 sources
- Personal watchlist & email alerts
Free forever · No credit card required
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata
Vulnerability AssessmentAI
| Exploitation | Exploitation requires two concurrent conditions: first, an administrator must have configured at least one Glances action template that places two unescaped Mustache variables directly adjacent with no separating character - specifically using triple-brace syntax ({{{var1}}}{{{var2}}}) or double-brace-ampersand ({{&var1}}{{&var2}}), which are Chevron's unescaped rendering modes that pass values verbatim; standard escaped double-brace ({{var}}) is not vulnerable. … Additional conditions and limiting factors are described in the full assessment. |
| Risk Assessment | The CVSS 4.0 score of 8.8 with AV:L/AC:L/AT:P/PR:L/UI:N and full-impact metrics accurately reflects the exploitation model: local access and low-privilege process execution are necessary, but the decisive gating condition is the administrator's use of adjacent unescaped Mustache variables in an action template - an unusual though documented configuration pattern. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in. |
| Exploit Scenario | A local unprivileged attacker starts a process named 'evilproc&' and passes a crafted command-line argument beginning with '& touch /tmp/evil' on a host where an administrator has configured a Glances action template as 'logger p={{{name}}}{{{cmdline}}}'. When the monitoring threshold fires, _sanitize_mustache_dict() strips the multi-character '&&' from each value individually but leaves the lone '&' intact in each field; Chevron renders the two unescaped variables directly adjacent, producing 'p=evilproc& & touch /tmp/evil', and secure_popen() executes the injected 'touch /tmp/evil' command chained via '&&'. … |
| Remediation | The vendor-released patch is Glances version 4.5.6, installable via PyPI with 'pip install --upgrade glances' and confirmed by the GitHub release tag at https://github.com/nicolargo/glances/releases/tag/v4.5.6 and fix commit 9c280eae5419da680827024b60f6265956e31994. … Detailed patch versions, workarounds, and compensating controls in full report. |
Recommended ActionAI
Within 24 hours: inventory all Glances deployments, identify systems with administrator-configured action templates by reviewing configuration files, and document exposure scope. …
Sign in for detailed remediation steps and compensating controls.
Threat intelligence, references, and detailed analysis are available after sign-in.
The package glances before 3.2.1 are vulnerable to XML External Entity (XXE) Injection via the use of Fault to parse unt
Glances is an open-source system cross-platform monitoring tool. versions up to 4.5.1 is affected by information exposur
Command injection in Glances system monitoring (versions 4.5.2 through 4.5.5) allows a local attacker with process-execu
SQL injection in Glances TimescaleDB export module allows local attackers to execute arbitrary SQL commands against the
Glances versions through 4.5.5 contain an incomplete fix for CVE-2026-53925: the `--disable-config-exec` flag correctly
Glances REST API prior to 4.5.6 exposes authenticated system monitoring data to untrusted cross-origin websites due to a
Credential disclosure in Glances prior to 4.5.6 allows unauthenticated remote attackers to retrieve plaintext usernames
Same weakness CWE-78 – OS Command Injection
View allSame technique Command Injection
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-60265
GHSA-qcpp-8x79-hhp3