Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as non-admin (or lure logged-in user)
-
DeliverySend GET to scan endpoint with crafted scan_ports
-
ExploitInject shell metacharacters past validateSingleWord
-
ExecutionConcatenate into nmap command string
-
PersistExecute via popen as ntopng account
-
ImpactRun arbitrary OS commands
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 | Exploitation requires an authenticated ntopng account with only non-administrator privileges (the affected endpoints lacked the isAdministrator() gate before 6.7.260717), and nmap must be installed/available on the ntopng host because the injection occurs while building the nmap command in nmap_scan_host. The scan_ports parameter must be crafted with shell metacharacters that pass validateSingleWord. A distinct, lower-barrier path exists: because the endpoints accept GET requests while ntopng's CSRF validation only applies to POST bodies, an attacker without ntopng credentials can trigger the command via a logged-in victim's browser (CSRF). Limiting factors: some form of authenticated session or a logged-in victim is needed, nmap must be present, and the product must be a version prior to 6.7.260717. |
| Impact | This is a genuine high-priority issue, and the CVSS 8.8 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) is well-supported by the technical detail: a missing administrator gate lets any authenticated non-admin user reach the vulnerability-scan endpoints, and the scan_ports parameter flows through validateSingleWord (which permits shell metacharacters) into an nmap command string executed via ntop.execCmd/execCmdAsync and popen - a textbook CWE-78 OS command injection yielding code execution as the ntopng process account. The vendor GHSA advisory and four fix commits confirm the flaw and remediation (the primary commit adds isAdministrator() checks to the affected REST endpoints), so root cause and patch are well-substantiated. No EPSS score, no CISA KEV listing, and no public POC are present in the provided data, so exploitation status is 'no public exploit identified at time of analysis' - the elevated risk is driven by exploitability characteristics (low complexity, only low privileges, full C/I/A impact) rather than confirmed in-the-wild activity. One aggravating nuance beyond the base score: because the endpoints accept GET requests while ntopng's CSRF protection only validates POST bodies, an attacker can drive the command through a logged-in user's browser without holding ntopng credentials, effectively lowering the practical authentication barrier - a factor the PR:L base metric does not fully capture. A meaningful limiter is that nmap must be installed and available on the host for the injected command path to execute. |
| Exploit ScenarioDerived | An authenticated low-privilege ntopng user (or an attacker who lures a logged-in user to a malicious web page exploiting the GET/CSRF gap) submits a scan_ports value containing shell metacharacters to the add-host-to-scan or schedule-vulnerability-scan endpoint. ntopng concatenates the value into an nmap command and executes it via popen, running the attacker's OS commands as the ntopng process account. No public exploit code is identified in the provided data, though the vulnerable code path and fix are confirmed by the vendor advisory and commits. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 21, 2026
OS command injection in ntopng prior to 6.7.260717 allows an authenticated non-administrator user to run arbitrary operating-system commands as the ntopng process account, because the vulnerability-scan REST endpoints accepted the scan_ports parameter without an administrator check and passed it through a validator that still permits shell metacharacters. Exploitation requires nmap to be present on the host, and a secondary no-credentials path exists: the affected endpoints accept GET requests while ntopng's CSRF validation only covers POST bodies, so a logged-in victim's browser can be induced to trigger the command. The vulnerability is rated CVSS 8.8 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H); no public exploit code or KEV-listed active exploitation was identified at time of analysis, and the issue is fixed in 6.7.260717.
RemediationAI
Vendor-released patch: 6.7.260717 - upgrade ntopng to that version or later, which reintroduces the isAdministrator() gate on the affected REST v2 endpoints and closes the command-injection path (advisory: https://github.com/ntop/ntopng/security/advisories/GHSA-2c6p-4pfj-qv58; upstream commits 0d3156274f4d12db8b61432ebeded10966c01f3e, 771b34a9d37f5de989eec4f2f8f2e852db1c7e5e, 838ccd523a3d4a71b29a62f7653e572a1ffa5cf6, 9f42a12251d881e3a20ebd667c1a2e6a6570c270). Where immediate upgrade is not possible, apply compensating controls with their trade-offs: block or restrict access to the ntopng REST v2 paths /lua/rest/v2/add/host/to_scan.lua, /lua/rest/v2/exec/host/schedule_vulnerability_scan.lua, /lua/rest/v2/delete/host/delete_host_to_scan.lua, and /lua/rest/v2/edit/host/update_va_scan_period.lua at a reverse proxy or WAF, rejecting requests whose scan_ports value contains shell metacharacters (semicolon, pipe, ampersand, backtick, dollar-parenthesis) - this blocks the injection and the CSRF-triggered GET variant but breaks legitimate vulnerability-scan UI functionality. Remove nmap from the ntopng host or run ntopng in a container without nmap installed, which neutralizes the injection sink at the cost of disabling the vulnerability-scan feature entirely. Do not expose the ntopng web UI to untrusted networks, and enforce strict network ACLs so only trusted management addresses can reach the REST API; also set cookies with SameSite=Strict and require re-authentication to reduce the GET-based CSRF vector, though neither substitutes for patching. Note that because the injection executes as the ntopng process account, limiting that account's privileges and running ntopng in a constrained container or with dropped capabilities reduces post-exploitation impact.
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
ntopng is a Lua-driven web application for network traffic monitoring, and its REST v2 API is implemented as individual Lua scripts under scripts/lua/rest/v2/. The vulnerable flow begins in scripts/lua/rest/v2/add/host/to_scan.lua and scripts/lua/rest/v2/exec/host/schedule_vulnerability_scan.lua, which lacked the isAdministrator() gate that the vendor added to these and related scripts (delete_host_to_scan.lua, update_va_scan_period.lua) in the fix commits. The scan_ports parameter was filtered only by validateSingleWord, a helper that restricts whitespace but still permits shell metacharacters such as command separators, pipes, and substitution syntax. The sanitized-looking value is then consumed in scripts/lua/modules/vulnerability_scan/vs_utils.lua, where nmap_scan_host concatenates it into an nmap command line string and hands that string to ntop.execCmd or ntop.execCmdAsync, which ultimately invoke a shell via popen. This is a classic CWE-78 OS command injection: untrusted input crosses into an interpreted shell command without escaping or argument-vector separation. The privilege weakness (missing authorization check) is the enabling condition, and the CSRF gap - endpoints accepting GET requests while ntopng validates CSRF tokens only in POST bodies - widens the attack surface to unauthenticated attackers who can lure an already-logged-in administrator or user into issuing the request. The nmap dependency means the injection point only reaches a real shell when the vulnerability-scan feature is usable, i.e. when nmap is installed on the ntopng host. Per CPE (cpe:2.3:a:ntop:ntopng:*:*:*:*:*:*:*:*), all ntopng releases before the fixed version are in scope.
Know when Ntopng 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
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Network-reachable REST endpoint, low complexity, only a non-admin authenticated account required (PR:L), no user interaction on the primary path, and OS command execution yields full C/I/A.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
ntopng is a web-based network traffic monitoring application. Prior to 6.7.260717, the vulnerability-scan endpoints scripts/lua/rest/v2/add/host/to_scan.lua and scripts/lua/rest/v2/exec/host/schedule_vulnerability_scan.lua accept the scan_ports parameter without an administrator gate and pass it through validateSingleWord, which permits shell metacharacters. scripts/lua/modules/vulnerability_scan/vs_utils.lua then concatenates scan_ports into an nmap command in nmap_scan_host and executes the command through ntop.execCmd or ntop.execCmdAsync and popen. Any authenticated non-admin user can execute operating-system commands as the ntopng process account when nmap is available. Because the endpoints accept GET requests while ntopng's CSRF validation applies to POST request bodies, an attacker can also trigger the command through a logged-in user's browser without possessing ntopng credentials. This issue is fixed in version 6.7.260717.
Technical POC Analysis
CWE-78 (OS Command Injection).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
A high-severity command injection flaw in ntopng (all versions prior to 6.7.260717) allows an authenticated non-administrator user to execute arbitrary operating-system commands as the ntopng service account. Because the vulnerable REST endpoints also accept GET requests that bypass the product's CSRF protections, a logged-in administrator or analyst can be induced to trigger the attack simply by visiting a malicious page, widening the exposure beyond intentionally malicious insiders. Successful exploitation gives an attacker full control of the ntopng host, which typically sits in a network monitoring position with visibility into traffic and credentials across the environment, making this a significant risk to network integrity and confidentiality until all instances are upgraded.
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.
Cross-Site Request Forgery exploits the automatic credential inclusion behavior of web browsers.
Cross-site scripting (XSS) vulnerability in the nDPI traffic classification library in ntopng (aka ntop) before 1.2.1 al
Cross-site request forgery (CSRF) vulnerability in ntopng through 2.4 allows remote attackers to hijack the authenticati
An issue was discovered in ntopng 3.4 before 3.4.180617. Rated high severity (CVSS 8.1), this vulnerability is remotely
ntopng (aka ntop) before 2.2 allows remote authenticated users to change the login context and gain privileges via the u
Authenticated non-administrator users of ntopng prior to 6.7.260718 can list and download complete system-configuration
Cross-site scripting (XSS) vulnerability in lua/host_details.lua in ntopng 1.1 allows remote attackers to inject arbitra
Any authenticated but non-administrator user on ntopng deployments prior to 6.7.260717 can tamper with threat-intelligen
The NetworkInterface::getHost function in NetworkInterface.cpp in ntopng before 3.0 allows remote attackers to cause a d
ntopng before 3.0 allows HTTP Response Splitting. Rated high severity (CVSS 7.5), this vulnerability is remotely exploit
Missing authorization on the host pool bulk-delete REST endpoint in ntopng before 6.7.260717 allows any authenticated lo
Missing authorization in ntopng's REST v2 API allows any authenticated low-privilege user to permanently delete all conf
Missing authorization on two REST v2 tag-management endpoints in ntopng 6.7.0-6.7.260717 allows any authenticated low-pr
EUVD-2026-83982
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB