Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconReach Roxy-WI web UI over network
-
DeliveryAuthenticate as low-privileged operator
-
ExploitSubmit '..' payload with ';' or '|' to EscapedString field
-
InstallStrip branch removes metacharacter but leaves '..'
-
C2Unquoted value reaches downstream shell command
-
ExecuteRead or overwrite sensitive files on Roxy-WI host
-
ImpactPivot to managed HAProxy/Nginx/Apache backends
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V2 - Validation and Business Logic Input validation, allowlisting
|
| Exploitation Conditions | The attacker must hold valid low-privileged credentials to the Roxy-WI web interface (CVSS PR:L) and reach it over the network (AV:N), and must submit input through one of the dozens of fields routed through the EscapedString Pydantic validator in app/modules/roxywi/class_models.py - confirmed examples include SSH credential name, username, and description. The exploit payload must contain a '..' traversal sequence together with at least one of the metacharacters ';', '&', '|', '$', or backtick, which is what triggers the strip arm of the validator's if/elif/elif/else flow and lets the '..' survive unblocked into a downstream shell context that does not apply shlex.quote(). No user interaction is required (UI:N), no non-default configuration is needed, and any Roxy-WI instance at 8.2.6.4 or earlier is in scope; the primary limiter on real-world exploitation is the authenticated-user requirement and whether the management interface is exposed beyond the operations network. |
| Impact | The CVSS 3.1 score of 8.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N) reflects a network-reachable, low-complexity flaw requiring low-privilege authentication, with high confidentiality and integrity impact but no availability impact. Because Roxy-WI is a server-management console, PR:L authentication is a realistic prerequisite - any registered operator account is sufficient, and these systems are often shared across ops teams. EPSS and KEV data were not provided in the input; the vulnerability is not listed in CISA KEV and no public exploit has been identified at time of analysis, so this is currently a defensive-priority issue rather than confirmed mass-exploitation. The combination of authenticated path traversal plus unquoted shell parameter injection across 'dozens of fields' substantially raises the realistic blast radius beyond a typical CWE-20 finding, and the absence of a vendor patch elevates urgency for self-hosted deployments. |
| Exploit ScenarioDerived | An attacker with a low-privileged Roxy-WI operator account submits a crafted value such as 'name;../../../../etc/shadow' to a field validated by EscapedString - for example an SSH credential name or description. The validator's strip branch removes the trailing ';' but leaves '../../../../etc/shadow' intact, and because the result is not shlex-quoted it is interpolated into a downstream shell command that reads or operates on the path, exposing sensitive files or letting the attacker overwrite configuration consumed by the managed HAProxy/Nginx/Apache/Keepalived backends. No public exploit identified at time of analysis, but the bug pattern is described in enough detail in the advisory to make reproduction straightforward. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 10, 2026
Path traversal bypass in Roxy-WI versions 8.2.6.4 and earlier allows authenticated remote attackers to escape input sanitization in the EscapedString Pydantic validator and inject shell metacharacters alongside '..' sequences. The flaw stems from a flawed if/elif/elif/else control flow that strips metacharacters without re-enforcing the '..' block, and the result is never shlex-quoted before reaching downstream command contexts. No public exploit identified at time of analysis, and no vendor-released patch identified at time of analysis.
RemediationAI
No vendor-released patch identified at time of analysis - the advisory explicitly states no public patch exists. Monitor the upstream advisory at https://github.com/roxy-wi/roxy-wi/security/advisories/GHSA-7qm8-cm8p-9rx3 and the roxy-wi/roxy-wi repository for a fixed release and upgrade immediately when published. In the interim, restrict network access to the Roxy-WI management interface to a bastion host or VPN-only segment so the web UI is not reachable from untrusted networks (trade-off: breaks remote ops workflows that connect directly), tighten account provisioning to remove low-privilege operator accounts that are not strictly required (trade-off: reduces operational flexibility for shared teams), enforce strong unique passwords and MFA on all Roxy-WI accounts to raise the cost of the PR:L precondition, and add WAF or reverse-proxy rules in front of Roxy-WI that reject request bodies and parameters containing '..' sequences combined with ';', '&', '|', '$', or backtick characters on credential, username, and description fields (trade-off: may block legitimate values containing those characters and requires per-field tuning).
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
Roxy-WI is a Python/Flask-based web interface for managing HAProxy, Nginx, Apache, and Keepalived servers, typically deployed by network/ops teams to administer load balancers and reverse proxies. The vulnerable component is EscapedString in app/modules/roxywi/class_models.py:16-30, a centralized Pydantic validator applied to dozens of user-supplied fields including SSH credential name, username, and description. Mapped to CWE-20 (Improper Input Validation), the root cause is a control-flow defect: the validator's branches are mutually exclusive, so a payload that contains both '..' and a metacharacter such as ';', '&', '|', '$', or backtick routes through the strip arm - which removes the metacharacter but leaves the '..' traversal intact - and the sanitized output is never passed through shlex.quote() before being incorporated into shell commands. The affected CPE is cpe:2.3:a:roxy-wi:roxy-wi:*.
Know when Roxy Wi 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:N
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
DescriptionNVD
Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. In versions 8.2.6.4 and prior, EscapedString (app/modules/roxywi/class_models.py:16-30) is the centralised Pydantic validator used on dozens of fields including SSH credential name, username, description, etc. Its if/elif/elif/else flow returns the metacharacter-stripped value without also enforcing the .. block. An attacker who appends a single ;, &, |, $, or backtick to a .. payload routes the value through the strip arm, where .. survives unblocked and the result is not shlex.quote()'d either. At time of publication, there are no publicly available patches.
Articles & Coverage 3
Executive ViewAI
Roxy-WI versions 8.2.6.4 and earlier contain a critical path traversal and command injection vulnerability (CVSS 8.1) affecting authenticated users. Organizations using this configuration management tool face potential unauthorized command execution and system compromise if administrative credentials are compromised or misused.
No vendor-released patch identified at time of analysis. Implement network segmentation to restrict access to Roxy-WI administrative interfaces; enforce strong authentication and multi-factor authentication where available; enhance monitoring and alerting for system commands executed through Roxy-WI; restrict administrative role assignments to essential personnel only.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. Rated critical severity (CVSS 9.8
Roxy-WI is a Web interface for managing HAProxy, Nginx and Keepalived servers. Rated critical severity (CVSS 9.8), this
Roxy-wi is an open source web interface for managing Haproxy, Nginx, Apache and Keepalived servers. Rated critical sever
Roxy-wi is an open source web interface for managing Haproxy, Nginx, Apache and Keepalived servers. Rated critical sever
Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. Rated high severity (CVSS 8.8), t
Authenticated command injection in Roxy-WI versions prior to 8.2.8.2 enables attackers to execute arbitrary system comma
Roxy-WI is a Web interface for managing Haproxy, Nginx, Apache, and Keepalived servers. Rated high severity (CVSS 7.5),
Roxy-WI is a Web interface for managing Haproxy, Nginx, Apache, and Keepalived servers. Rated high severity (CVSS 7.5),
hap-wi/roxy-wi is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. Rated medium severity (CVS
Remote code execution in Roxy-WI versions 8.2.6.4 and prior allows authenticated low-privilege users (role ≤ 3) to injec
Remote code execution in Roxy-WI versions 8.2.6.4 and prior allows authenticated users to write attacker-controlled cont
Privilege escalation and cross-tenant compromise in Roxy-WI versions 8.2.6.4 and prior allows any authenticated user - i
EUVD-2026-36062
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB