Skip to main content

gotop EUVDEUVD-2026-91318

| CVE-2026-91784 MEDIUM
Improper Neutralization of Argument Delimiters in a Command ('Argument Injection') (CWE-88)
2026-10-02 CERT-PL GHSA-pm6f-qrm6-v363
4.8
CVSS 4.0 · Vendor: CERT-PL
View

Attack ChainAIDerived

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

  1. Access
    Gain local shell on shared host
  2. Delivery
    Spawn process named '--uid=<target>'
  3. Exploit
    Victim invokes gotop kill on it
  4. Execution
    pkill parses crafted name as option
  5. Impact
    Target user's processes terminated

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Argument sanitization
Exploitation Conditions

Requires the attacker to have an existing local account/shell on the same host as the victim, and requires the victim (gotop user) to actively invoke gotop's process-kill feature against the attacker-controlled, maliciously-named process - this user interaction is the primary limiting factor. The attacker must be able to launch a process whose name begins with '--' and encodes a pkill option (such as a target UID). The flaw is in gotop's handling of process names passed to pkill at version 3.0.0; it is not remotely reachable and does not affect single-user systems where there is no distinct 'targeted user' to attack. No special gotop configuration is required beyond normal use of the kill functionality.

Impact

This is a genuinely low-priority issue despite being a real, confirmed vulnerability. The CVSS 4.0 base score of 4.8 (vendor-supplied vector CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:L) correctly reflects limited real-world risk: exploitation requires LOCAL access (AV:L), depends on victim interaction (UI:P) - specifically the gotop user must choose to kill the attacker's maliciously-named process - and the only impact is limited availability (VA:L), with NO confidentiality or integrity impact. There is no EPSS score, no KEV listing, and no public POC referenced, so exploitation status is 'no public exploit identified at time of analysis.' All signals align consistently here - there is no conflict between CVSS, exploitation data, or description. The one notable caveat is that the product is retired/unmaintained with no fix available, so any affected deployment is permanently exposed; however, gotop is a niche terminal activity monitor, and the attack is a privilege-less local user degrading another local user's processes on a shared host, which is an uncommon and narrow threat model. This is a low-severity, bounded availability flaw, not an urgent remediation item.

Exploit ScenarioDerived

On a multi-user Linux host, a low-privileged local attacker starts a long-running process whose name is crafted to begin with '--' and embeds a target user's UID (e.g. '--uid=1001'). When an administrator or another user running gotop selects that process and invokes gotop's kill feature, gotop passes the name unsanitized to pkill, which interprets it as a command-line option and terminates all processes owned by the targeted UID. No public exploit code is referenced, but the technique is trivial to reproduce.

Monitor Track and reassess. Why: Vendor states no customer action required.
No patch listed yet 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 02, 2026

Local argument injection in gotop 3.0.0 allows an attacker who already holds an account and shell on the same host to terminate every process owned by a targeted user, because the tool forwards an attacker-controlled process name directly to pkill and the name is parsed as a command-line option. Exploitation depends on the victim actively selecting the maliciously named process in gotop's process-kill feature (UI:R, local only), so the impact is confined to availability on shared multi-user systems. The project is no longer actively supported and CERT-PL reports the issue has not been fixed; no public exploit identified at time of analysis, and the independent assessment rates it low severity (CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L, CWE-88).

RemediationAI

There is no vendor-released patch and none is expected: CERT-PL states the product is no longer actively supported and the vulnerability has not been fixed, so upstream remediation must be treated as 'No vendor-released patch identified at time of analysis' for gotop 3.0.0 and later builds. The most effective compensating control is to stop using gotop's in-UI process-kill feature entirely, or to build a local fork that fixes the invocation: pass an explicit end-of-options separator before the name (pkill -- <name>), use exact-match mode (pkill -x -- <name>) and validate that the name does not begin with '-', or better, bypass pkill altogether and call kill(2) against the PID already known from the process listing so no name ever reaches a shell or argument parser. The trade-off is obvious: the kill action is disabled by the first option and the latter two require maintaining a private patch to an abandoned codebase, which may conflict with future dependency or Go toolchain updates. Secondary hardening, useful because the attacker must first create a process on the same host, includes restricting local account creation and execution rights on multi-user hosts, running gotop from dedicated monitoring accounts on single-tenant systems, and detecting processes whose names begin with '--' or otherwise mimic pkill options. If gotop must be retained unpatched, isolate it from users who can influence process names (containers or namespaces with restricted process visibility also limit which names gotop can see and act on, at the cost of reduced visibility in the monitor). Advisory references: https://cert.pl/en/posts/2026/10/CVE-2026-91784 and https://github.com/cjbassi/gotop.

Affected VersionsENISA

gotop 3.0.0

Affected Packages

euvd gotop no fix

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

gotop is a Go-based terminal activity monitor (a fork of gtop) that enumerates running processes and offers an in-UI kill action. That action is implemented by shelling out to pkill with the process name taken from the process list, and the name is passed through without sanitization or an end-of-options delimiter. This is the classic CWE-88 (Improper Neutralization of Argument Delimiters in a Command) pattern: untrusted data becomes a command-line option rather than data. A local attacker who can launch a process whose name begins with '--' and encodes a pkill option (for example a target user's UID) turns the victim's kill action into a bulk kill against that user's processes. The flaw is confined to gotop 3.0.0 (confirmed), it is not reachable over the network, and the CPE cpe:2.3:a:cjbassi:gotop:*:*:*:*:*:*:*:* carries a wildcard version, so the upstream maintainers consider other builds potentially affected as well. Because the vulnerable path is the local pkill invocation, the exposure is limited to hosts where a distinct victim account operates gotop and where the attacker can plant the crafted process first.

Know when Gotop 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 (CERT-PL) PRIMARY 4.8 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
vuln.today AI 3.3 LOW

Local-only (AV:L) with no attacker privileges needed to spawn a process (PR:N), but the victim must trigger the kill action (UI:R); impact is limited availability loss only (A:L), no C/I.

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

Primary rating from Vendor (CERT-PL).

CVSS VectorVendor: CERT-PL

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

DescriptionCVE.org

cjbassi/gotop is vulnerable to local argument injection via process termination functionality. The process name is passed directly to pkill without sanitization. A local attacker can create a process with a crafted name beginning with -- (e.g. containing a target user's UID). When the user running gotop invokes the kill feature on that process, pkill interprets the crafted name as a command-line option, terminating all processes owned by the targeted user.

Product is no longer actively supported and the vulnerabilities have not been fixed. Vulnerability was confirmed at version 3.0.0; other versions were not tested but may also be affected.

Threat Intelligence Overview

EPSS Score
0.2%
Top 96% exploitable
Prevalence
Low
niche terminal system-monitor tool, now retired and unmaintained
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment CIRCL 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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
Vendor states no customer action required
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
Defer
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

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