Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:H
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:H
Lifecycle Timeline
2DescriptionNVD
Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. In versions 8.2.6.4 and prior, agent_action (app/routes/smon/agent_routes.py:166-179) has decorators @bp.post('/agent/action/<action>') and @jwt_required() only - no role check, no group ownership check on the server_ip form field. Any authenticated user, including role 4 (guest), can start, stop, or restart the roxy-wi-smon-agent systemd unit on any server they can name. Roxy-WI executes the systemd action over its own SSH credentials (passwordless sudo), so the action runs as root on the target. At time of publication, there are no publicly available patches.
Articles & Coverage 3
AnalysisAI
Privilege escalation in Roxy-WI versions 8.2.6.4 and prior allows any authenticated user - including the lowest-privilege 'guest' role 4 - to start, stop, or restart the roxy-wi-smon-agent systemd unit on arbitrary managed servers, with the action executing as root via Roxy-WI's passwordless sudo SSH credentials. The flaw stems from missing role and group-ownership checks on the agent_action endpoint, and no public exploit has been identified at time of analysis though the vulnerability is trivially reachable once an account exists.
Technical ContextAI
Roxy-WI is a Python/Flask-based web interface (cpe:2.3:a:roxy-wi:roxy-wi) for centrally managing HAProxy, Nginx, Apache, and Keepalived deployments. The defect lives in app/routes/smon/agent_routes.py at lines 166-179, where the agent_action handler is decorated only with @bp.post('/agent/action/<action>') and @jwt_required(), meaning a valid JWT is the sole gate. The root cause is CWE-862 (Missing Authorization): neither a role-based access check nor a group-ownership check on the user-supplied server_ip form field is performed before the request is dispatched. Because Roxy-WI fans out the resulting systemd command over its own SSH session - which is configured with passwordless sudo on every managed host - the action ultimately executes with full root privileges on whichever target IP the attacker names.
RemediationAI
No vendor-released patch identified at time of analysis - the advisory explicitly states no public patches exist as of publication, so administrators should monitor https://github.com/roxy-wi/roxy-wi/security/advisories/GHSA-c92j-h72m-ff4j for a fixed release beyond 8.2.6.4. As compensating controls, restrict Roxy-WI account creation strictly to trusted operators and audit existing role 4 (guest) accounts for removal or downgrade - the side effect is loss of read-only visibility for less-trusted staff. Place the Roxy-WI web interface behind a VPN or IP allowlist so the /agent/action/<action> endpoint cannot be reached from untrusted networks (side effect: remote operators must connect via VPN). Where feasible, tighten the SSH key Roxy-WI uses to manage targets by replacing passwordless sudo with a sudoers entry that whitelists only the specific systemctl commands actually required, limiting the blast radius if the endpoint is abused (side effect: any new Roxy-WI features needing additional sudo commands will fail until sudoers is updated). Finally, monitor systemd journal entries for unexpected roxy-wi-smon-agent start/stop/restart events as a detective control.
The ngx_http_parse_chunked function in http/ngx_http_parse.c in nginx 1.3.9 through 1.4.0 allows remote attackers to cau
A critical vulnerability in Kubernetes ingress-nginx controller allows unauthenticated attackers with pod network access
nginx 0.8.41 through 1.4.3 and 1.5.x before 1.5.7 allows remote attackers to bypass intended restrictions via an unescap
An issue was discovered on GL.iNet devices before version 4.5.0. Rated critical severity (CVSS 9.8), this vulnerability
Nginx versions since 0.5.6 up to and including 1.13.2 are vulnerable to integer overflow vulnerability in nginx range fi
The resolver in nginx before 1.8.1 and 1.9.x before 1.9.10 allows remote attackers to cause a denial of service (invalid
Kubernetes ingress-nginx contains a configuration injection vulnerability via the mirror-target and mirror-host Ingress
A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-url` Ingres
A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-tls-match-c
Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. Rated critical severity (CVSS 9.8
The STARTTLS implementation in mail/ngx_mail_smtp_handler.c in the SMTP proxy in nginx 1.5.x and 1.6.x before 1.6.1 and
Heap buffer overflow in NGINX Plus and NGINX Open Source ngx_http_rewrite_module allows remote attackers to crash worker
Same weakness CWE-862 – Missing Authorization
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-36036