Skip to main content

Roxy-WI CVE-2026-45552

| EUVD-2026-36035 CRITICAL
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-06-10 GitHub_M
9.9
CVSS 3.1 · NVD
Share

Severity by source

NVD PRIMARY
9.9 CRITICAL
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/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:H/I:H/A:H
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

2
Analysis Generated
Jun 10, 2026 - 15:11 vuln.today
CVE Published
Jun 10, 2026 - 13:59 nvd
CRITICAL 9.9

DescriptionNVD

Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. In versions 8.2.6.4 and prior, the install blueprint declares only bp.before_request → @jwt_required() (app/routes/install/routes.py:36-39). The individual endpoints install_exporter, install_waf, install_geoip, check_geoip, get_exporter_version, and get_task_status are not wrapped in page_for_admin and do not call roxywi_common.is_user_has_access_to_its_group(server_ip) or check_is_server_in_group(server_ip). Only the GET index page (install_monitoring) gates on roxywi_auth.page_for_admin(level=2). Because the missing decorators omit both role and group checks, any logged-in user - including the default guest role 4 - can install/reconfigure exporters, WAF, and GeoIP databases on every server in the Roxy-WI database, regardless of tenant ownership. The Ansible playbooks run with the per-server SSH credential stored in Roxy-WI, which the credentials' rightful owner (a different tenant) has provisioned with sudo rights for the management workflow. At time of publication, there are no publicly available patches.

AnalysisAI

Privilege escalation and cross-tenant compromise in Roxy-WI versions 8.2.6.4 and prior allows any authenticated user - including the default guest role 4 - to install or reconfigure exporters, WAF, and GeoIP databases on every managed server regardless of tenant ownership. Because the affected installer endpoints lack role and group decorators, low-privilege users can pivot through stored SSH credentials with sudo to achieve root-level command execution on HAProxy/Nginx/Apache hosts belonging to other tenants. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
Obtain low-privilege Roxy-WI account
Delivery
Enumerate cross-tenant server_ip values
Exploit
POST to unguarded install endpoint with victim server_ip
Execution
Roxy-WI runs Ansible playbook with stored SSH+sudo credential
Impact
Achieve root command execution on victim tenant host

Vulnerability AssessmentAI

Exploitation Exploitation requires (1) network access to the Roxy-WI web interface, (2) any authenticated session on the Roxy-WI application - including the default guest role 4, with no admin role required - and (3) a multi-tenant Roxy-WI deployment where the target server_ip is registered under a different tenant whose stored SSH credential has sudo on the target host (the standard Roxy-WI management configuration). … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment The CVSS 9.9 score (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H) is well aligned with the technical reality: network reachability, low complexity, only a low-privilege account required, no user interaction, and a Scope change because the bug in the web app yields root execution on downstream managed hosts via Ansible. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario An attacker obtains or is issued a low-privilege Roxy-WI account (e.g., the default guest role 4) on a multi-tenant Roxy-WI instance, enumerates server_ip values belonging to another tenant from the UI or API, then issues a POST to the install_exporter, install_waf, or install_geoip endpoint specifying the victim tenant's server_ip. Roxy-WI executes the corresponding Ansible playbook against that host using the victim tenant's stored SSH credential with sudo, giving the attacker root-equivalent command execution on a server they should have no access to. …
Remediation No vendor-released patch identified at time of analysis - the GitHub advisory GHSA-v3f8-g2v8-jq5h (https://github.com/roxy-wi/roxy-wi/security/advisories/GHSA-v3f8-g2v8-jq5h) confirms no public fix is available as of publication, so operators should monitor the advisory and the roxy-wi repository for an updated release above 8.2.6.4. … Detailed patch versions, workarounds, and compensating controls in full report.

Recommended ActionAI

Within 24 hours: Inventory all Roxy-WI installations and versions; disable default guest role 4 accounts; implement network-level access controls to installer endpoints. …

Sign in for detailed remediation steps and compensating controls.

Threat intelligence, references, and detailed analysis are available after sign-in.

Share

CVE-2026-45552 vulnerability details – vuln.today

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