Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessPlant file with shell-syntax filename
-
DeliveryVictim opens directory in nnn
-
ExploitVictim runs togglex plugin on selection
-
ExecutionCrafted name breaks out of sh -c script
-
ImpactExecute arbitrary commands as invoking user
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 | Requires (1) an attacker able to place or deliver a file whose name contains a double quote plus shell metacharacters into a directory the victim will open in nnn (e.g. a shared directory, a downloaded or extracted archive, or any directory populated with attacker-influenced filenames), and (2) the victim actively invoking the togglex plugin on a selection that includes that file. Execution runs with the privileges of the user invoking togglex. Limiting factors: the vector is local (AV:L) and strictly requires victim interaction (UI:A) - it does not fire merely from listing the directory, only from running togglex; it affects nnn versions through 5.3 where the unpatched togglex plugin is used. There is no remote or unauthenticated path. |
| Impact | The input CVSS 4.0 score of 8.4 (High) reflects the full compromise of confidentiality, integrity, and availability (VC:H/VI:H/VA:H) that arbitrary command execution grants, but the vector itself tempers the urgency: AV:L means this is a local, file-based vector rather than remote, and UI:A (active user interaction) means the victim must themselves invoke the togglex plugin on a selection that includes the malicious file - the attacker only plants a filename. PR:N is justified in the sense that placing a file requires no privileges on the target, but execution is gated entirely on victim action. No EPSS score and no KEV listing are present in the supplied data, and there is no SSVC exploitation/automatable breakdown; the only decision signal is vuln.today's 'this_week' priority label, which argues for prompt but not emergency patching. On balance this is a legitimately high-impact but conditional issue - dangerous in multi-user hosts, shared directories, or when browsing extracted/downloaded archives, and lower-risk for a single-user operator browsing only their own trusted files. It is not a mass-exploitable remote vulnerability, so real-world priority should track exposure to untrusted filenames rather than the raw 8.4. |
| Exploit ScenarioDerived | An attacker plants a file whose name contains a double quote and shell syntax into a directory the victim will browse (e.g. a shared folder, an extracted archive, or a web/download directory). When the victim opens that directory in nnn and runs the togglex plugin to flip the executable bit on a selection containing the file, xargs -I splices the crafted name into the sh -c script and the embedded commands run with the victim's privileges. A public VulnCheck advisory and a GitHub issue reference exist; neither is verified as working exploit code in the supplied data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Nov 03, 2026
Arbitrary command execution in nnn through 5.3 (CVSS 8.4 High) occurs when the togglex plugin processes selected filenames containing a double quote and shell syntax, allowing an unauthenticated local attacker who can plant such a filename to run commands as the user invoking togglex. The victim must actively run togglex on a selection that includes the malicious file; simply opening the directory is not enough, and there is no remote or unauthenticated network path. No public exploit was identified at time of analysis, and an upstream fix commit is referenced (released patched version not independently confirmed).
RemediationAI
Upstream fix available (PR/commit); released patched version not independently confirmed. Apply commit 04715921aece0257fef7a8558c0783493d98efff or the vendor's updated nnn package/advisory, and verify plugins/togglex now invokes xargs ... sh {} and handles each filename as $1 rather than splicing {} into sh -c. Until patched, do not run togglex on selections that include untrusted filenames; disable or remove the togglex plugin, or restrict its use to trusted directories, accepting that executable-bit toggling via the plugin is lost. Review the same commit's related changes for nuke, pdfread, and FIFO handling if those plugins/features are used. Advisory: https://www.vulncheck.com/advisories/nnn-through-5.3-os-command-injection-via-togglex-plugin; issue: https://github.com/jarun/nnn/issues/2188.
Affected VersionsENISA
Affected Packages
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
nnn is a terminal file manager; its plugins/togglex shell script toggles executable bits for selected files. In affected versions, the script pipes a NUL-separated selection into xargs -0 -I {} sh -c and substitutes {} directly inside a double-quoted shell command, so a filename containing a double quote and shell metacharacters can break out of the intended quoting and be interpreted by sh. This is CWE-78 OS command injection; the local CPE cpe:2.3:a:jarun:nnn:*:*:*:*:*:*:*:* covers jarun nnn, and the issue is specific to the v5.3-line togglex plugin. The upstream commit 04715921aece0257fef7a8558c0783493d98efff changes the invocation to pass the filename as positional parameter $1 (xargs ... sh {}), and also includes temp-file hardening in nuke/pdfread and FIFO validation in src/nnn.c.
Know when Nnn 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
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Plugin acts on local files so AV:L; no privileges needed to drop a file (PR:N) but the victim must run togglex (UI:R); arbitrary command execution as the invoking user gives C/I/A:H with no scope change.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Jarun nnn through 5.3 contains an OS command injection vulnerability in plugins/togglex that allows attackers to execute commands via crafted filenames. Attackers can place files whose names contain a double quote and shell syntax, which xargs -I splices into an sh -c script, running commands as the user invoking togglex.
Executive ViewAI
CVE-2026-121548 is a high-severity flaw in the nnn file manager's togglex plugin that allows arbitrary command execution when a user runs the plugin on a directory containing a file with a specially crafted name. This primarily affects individual workstations where users may encounter untrusted filenames, such as downloaded archives or shared directories, and requires the user to actively invoke the plugin on the malicious file. Leadership should prioritize patching to prevent potential local privilege escalation and data compromise on user endpoints.
Apply vendor patch.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
OS command injection occurs when an application passes unsanitized user input directly into system shell commands.
OS command injection in nnn file manager version 5.2 allows arbitrary shell command execution when a victim navigates to
Shell command injection in nnn file manager version 5.2 allows an attacker who controls a directory name on a shared fil
The pdfread and nuke plugins shipped with nnn through version 5.3 write to predictable, name- and PID-derived paths unde
Integer truncation in the nnn terminal file manager (version 5.2 confirmed vulnerable) allows a local attacker who contr
Out-of-bounds write in nnn terminal file manager version 5.2 allows a local attacker who can place a malicious session f
Local file-write redirection and path disclosure in the nnn terminal file manager (through version 5.3) affect users who
EUVD-2026-115893
NVD
CVE.org
Vulnrichment
GitHub
Exploit-DB