CVE-2026-68519
Glances: `--disable-config-exec` does not cover on-alert action commands (incomplete fix of CVE-2026-53925)
Glances is an open-source system cross-platform monitoring tool. Prior to 4.5.6, GlancesActions.run() in glances/actions.py ignores --disable-config-exec for on-alert action commands and invokes secure_popen() with shell operators enabled, allowing configured redirection, command chaining, or pipes to execute when an alert triggers. This issue is fixed in 4.5.6.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- High
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.1
Glances: `--disable-config-exec` does not cover on-alert action commands (incomplete fix of CVE-2026-53925)
Glances is an open-source system cross-platform monitoring tool. Prior to 4.5.6, GlancesActions.run() in glances/actions.py ignores --disable-config-exec for on-alert action commands and invokes secure_popen() with shell operators enabled, allowing configured redirection, command chaining, or pipes to execute when an alert triggers. This issue is fixed in 4.5.6.
- Record
CVE-2026-68519- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:L/AC:L/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Weakness
- CWE-78
- Updated
- 2026-11-02
EUVDEUVD-2026-60305
7.1
Glances is an open-source system cross-platform monitoring tool. Prior to 4.5.6, GlancesActions.run() in glances/actions.py ignores --disable-config-exec for on-alert action commands and invokes secure_popen() with shell operators enabled, allowing configured redirection, command chaining, or pipes to execute when an alert triggers. This issue is fixed in 4.5.6.
- Record
EUVD-2026-60305- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:L/AC:L/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-59fj-m2j6-hcxh
7.1
Glances: `--disable-config-exec` does not cover on-alert action commands (incomplete fix of CVE-2026-53925)
Summary
In Glances 4.5.5 the --disable-config-exec flag was extended (GHSA-3vwc-qwhc-3mj7) to stop secure_popen() from
interpreting the shell operators &&, | and > in AMP command values taken from the configuration file. The
hardening was not applied to the on-alert action command path, which reads its command lines from the same
configuration file. As a result, with --disable-config-exec enabled, a configured alert action that contains >
(file redirection), && (chaining) or | (pipe) still has those operators interpreted, allowing arbitrary file
write / command chaining at the privilege of the glances process when the alert triggers.
Affected code
glances/actions.py (Glances 4.5.5, latest):
ret = secure_popen(cmd_full) # line 111 — no allow_operators=, defaults to True
By contrast the AMP modules were fixed:
# glances/amps/default/__init__.py:69
self.set_result(secure_popen(res, allow_operators=self.allow_operators()).rstrip())
# glances/amps/systemv/__init__.py:60
res = secure_popen(self.get('service_cmd'), allow_operators=self.allow_operators())
PoC (benign)
glances.conf:
[cpu]
user_critical=1
user_critical_action=echo MARKER > /tmp/poc_marker
Run glances --disable-config-exec and generate CPU load. When the cpu user alert reaches CRITICAL, /tmp/poc_marker
is created — i.e. the > operator was interpreted despite --disable-config-exec. The same > in an [amp_*]
command value is correctly not interpreted.
Impact
Arbitrary file write (>), command chaining (&&) and pipe (|) from config-defined alert actions, contrary to the
guarantee of --disable-config-exec. Trust boundary = the glances configuration file.
Suggested fix
Pass allow_operators=not args.disable_config_exec from GlancesActions.run() into secure_popen() (GlancesActions
already holds args).
Credit
Reported via responsible-disclosure incomplete-fix measurement study.
- Record
GHSA-59fj-m2j6-hcxh- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:L/AC:L/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Weakness
- CWE-78
- Updated
- 2026-11-02
NVD
7.1
Glances is an open-source system cross-platform monitoring tool. Prior to 4.5.6, GlancesActions.run() in glances/actions.py ignores --disable-config-exec for on-alert action commands and invokes secure_popen() with shell operators enabled, allowing configured redirection, command chaining, or pipes to execute when an alert triggers. This issue is fixed in 4.5.6.
- Record
CVE-2026-68519- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:L/AC:L/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/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 - Weakness
- CWE-78
- Updated
- 2026-11-02
OSV
7.1
Glances: `--disable-config-exec` does not cover on-alert action commands (incomplete fix of CVE-2026-53925)
Glances is an open-source system cross-platform monitoring tool. Prior to 4.5.6, GlancesActions.run() in glances/actions.py ignores --disable-config-exec for on-alert action commands and invokes secure_popen() with shell operators enabled, allowing configured redirection, command chaining, or pipes to execute when an alert triggers. This issue is fixed in 4.5.6.
- Record
CVE-2026-68519- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:L/AC:L/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Weakness
- CWE-78
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-68519
7.1
Glances is an open-source system cross-platform monitoring tool. Prior to 4.5.6, GlancesActions.run() in glances/actions.py ignores --disable-config-exec for on-alert action commands and invokes secure_popen() with shell operators enabled, allowing configured redirection, command chaining, or pipes to execute when an alert triggers. This issue is fixed in 4.5.6.
- Record
DEBIAN-CVE-2026-68519- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:L/AC:L/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/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 - Updated
- 2026-11-02
Show 4 moreShow less
OSVGHSA-59fj-m2j6-hcxh
7.1
Glances: `--disable-config-exec` does not cover on-alert action commands (incomplete fix of CVE-2026-53925)
Summary
In Glances 4.5.5 the --disable-config-exec flag was extended (GHSA-3vwc-qwhc-3mj7) to stop secure_popen() from
interpreting the shell operators &&, | and > in AMP command values taken from the configuration file. The
hardening was not applied to the on-alert action command path, which reads its command lines from the same
configuration file. As a result, with --disable-config-exec enabled, a configured alert action that contains >
(file redirection), && (chaining) or | (pipe) still has those operators interpreted, allowing arbitrary file
write / command chaining at the privilege of the glances process when the alert triggers.
Affected code
glances/actions.py (Glances 4.5.5, latest):
ret = secure_popen(cmd_full) # line 111 — no allow_operators=, defaults to True
By contrast the AMP modules were fixed:
# glances/amps/default/__init__.py:69
self.set_result(secure_popen(res, allow_operators=self.allow_operators()).rstrip())
# glances/amps/systemv/__init__.py:60
res = secure_popen(self.get('service_cmd'), allow_operators=self.allow_operators())
PoC (benign)
glances.conf:
[cpu]
user_critical=1
user_critical_action=echo MARKER > /tmp/poc_marker
Run glances --disable-config-exec and generate CPU load. When the cpu user alert reaches CRITICAL, /tmp/poc_marker
is created — i.e. the > operator was interpreted despite --disable-config-exec. The same > in an [amp_*]
command value is correctly not interpreted.
Impact
Arbitrary file write (>), command chaining (&&) and pipe (|) from config-defined alert actions, contrary to the
guarantee of --disable-config-exec. Trust boundary = the glances configuration file.
Suggested fix
Pass allow_operators=not args.disable_config_exec from GlancesActions.run() into secure_popen() (GlancesActions
already holds args).
Credit
Reported via responsible-disclosure incomplete-fix measurement study.
- Record
GHSA-59fj-m2j6-hcxh- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:L/AC:L/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Weakness
- CWE-78
- Updated
- 2026-11-02
OSVPYSEC-2026-3665
7.1
Glances: `--disable-config-exec` does not cover on-alert action commands (incomplete fix of CVE-2026-53925)
Summary
In Glances 4.5.5 the --disable-config-exec flag was extended (GHSA-3vwc-qwhc-3mj7) to stop secure_popen() from
interpreting the shell operators &&, | and > in AMP command values taken from the configuration file. The
hardening was not applied to the on-alert action command path, which reads its command lines from the same
configuration file. As a result, with --disable-config-exec enabled, a configured alert action that contains >
(file redirection), && (chaining) or | (pipe) still has those operators interpreted, allowing arbitrary file
write / command chaining at the privilege of the glances process when the alert triggers.
Affected code
glances/actions.py (Glances 4.5.5, latest):
ret = secure_popen(cmd_full) # line 111 — no allow_operators=, defaults to True
By contrast the AMP modules were fixed:
# glances/amps/default/__init__.py:69
self.set_result(secure_popen(res, allow_operators=self.allow_operators()).rstrip())
# glances/amps/systemv/__init__.py:60
res = secure_popen(self.get('service_cmd'), allow_operators=self.allow_operators())
PoC (benign)
glances.conf:
[cpu]
user_critical=1
user_critical_action=echo MARKER > /tmp/poc_marker
Run glances --disable-config-exec and generate CPU load. When the cpu user alert reaches CRITICAL, /tmp/poc_marker
is created — i.e. the > operator was interpreted despite --disable-config-exec. The same > in an [amp_*]
command value is correctly not interpreted.
Impact
Arbitrary file write (>), command chaining (&&) and pipe (|) from config-defined alert actions, contrary to the
guarantee of --disable-config-exec. Trust boundary = the glances configuration file.
Suggested fix
Pass allow_operators=not args.disable_config_exec from GlancesActions.run() into secure_popen() (GlancesActions
already holds args).
Credit
Reported via responsible-disclosure incomplete-fix measurement study.
- Record
PYSEC-2026-3665- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:L/AC:L/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-68519
7.1
Glances is an open-source system cross-platform monitoring tool. Prior to 4.5.6, GlancesActions.run() in glances/actions.py ignores --disable-config-exec for on-alert action commands and invokes secure_popen() with shell operators enabled, allowing configured redirection, command chaining, or pipes to execute when an alert triggers. This issue is fixed in 4.5.6.
- Record
UBUNTU-CVE-2026-68519- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:L/AC:L/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11674-1 No score
glances-common-4.5.6-1.1 on GA media
These are all security issues fixed in the glances-common-4.5.6-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11674-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
glancesPyPI |
through 4.5.5 | 4.5.6 |
glancesDebian:14 |
before 4.5.6+dfsg-1, plus listed versions 4.3.1+dfsg-14.3.3+dfsg-14.5.1+dfsg-14.5.2+dfsg-14.5.3.2+dfsg-14.5.4+dfsg-14.5.5+dfsg-1 |
4.5.6+dfsg-1 |
glancesPyPI |
before 4.5.6, plus listed versions 1.3.11.3.21.3.31.3.41.3.5 Show 45 moreShow less1.3.61.3.71.41.4.11.4.1.11.4.21.4.2.11.51.5.11.5.21.61.6.11.71.7.11.7.21.7.31.7.41.7.51.7.61.7.72.02.0.12.12.1.12.1.22.102.112.11.12.22.2.12.32.42.4.12.4.22.52.5.12.62.6.12.6.22.72.7.12.82.8.12.8.22.8.3 |
4.5.6 |
glancesUbuntu:Pro:16.04:LTS |
All versions, plus listed versions 2.3-1build12.3-1ubuntu0.1~esm1 |
None known |
glancesUbuntu:Pro:18.04:LTS |
All versions, plus listed versions 2.10-22.11.1-12.11.1-22.11.1-32.11.1-3ubuntu0.1~esm1 |
None known |
glancesUbuntu:Pro:20.04:LTS |
All versions, plus listed versions 3.1.0-13.1.1-13.1.3-13.1.3-1ubuntu0.1~esm1 |
None known |
glancesUbuntu:22.04:LTS |
All versions, plus listed versions 3.1.5-13.2.3.1+dfsg-13.2.4.2+dfsg-1 |
None known |
glancesUbuntu:24.04:LTS |
All versions, plus listed versions 3.4.0.3+dfsg-1 |
None known |
glancesUbuntu:26.04:LTS |
All versions, plus listed versions 4.3.1+dfsg-14.3.3+dfsg-1 |
None known |
python-GlancesopenSUSE:Tumbleweed |
before 4.5.6-1.1 | 4.5.6-1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-68519 is a high vulnerability (CVSS 7.1) in Nicolargo Glances, published August 17, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.18%, the 7th percentile. Fixed in glances 4.5.6.
References
github.com/nicolargo/glances/security/advisories/GHSA-59fj-m2j6-hcxh
github.com/nicolargo/glances/commit/5c07c0d96423e9d5b9de71dd92e3717c66f504bd
github.com/nicolargo/glances/releases/tag/v4.5.6
github.com/advisories/GHSA-59fj-m2j6-hcxh
github.com/CVEProject/cvelistV5/tree/main/cves/2026/68xxx/CVE-2026-68519.json
nvd.nist.gov/vuln/detail/CVE-2026-68519
Show 11 moreShow less
security-tracker.debian.org/tracker/CVE-2026-68519
github.com/nicolargo/glances
pypi.org/project/glances
ubuntu.com/security/CVE-2026-68519
cve.org/CVERecord?id=CVE-2026-68519
suse.com/security/cve/CVE-2021-23418
suse.com/security/cve/CVE-2026-62982
suse.com/security/cve/CVE-2026-68517
suse.com/security/cve/CVE-2026-68518
suse.com/security/cve/CVE-2026-68519
suse.com/security/cve/CVE-2026-68520
Left out here: 85 versions. The JSON record has them.