Read the docs
TI-2026-33305 Aliases CVE-2026-45556

Improper input validation in roxy-wi

Priority HIGH 76CWE-20Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
Low
Impact type
Code execution
Confidentiality · integrity · availability
High · High · High
Fix status
No fix listed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-78.

Summary

Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. In versions 8.2.6.4 and prior, POST /waf/<service>/<server_ip>/rule/<rule_id>/save accepts a config_file_name form field that is passed straight through to config_mod.master_slave_upload_and_restart(...) as the destination path. The validation chain (_replace_config_path_to_correct → check_is_conf) only requires the path to contain a hard-coded service substring (nginx/haproxy/apache2/httpd/keepalived) and the substring conf or cfg, and to not contain ... The encoded-slash substitution 92 → / is applied before the substring check, so the attacker can build any absolute path anywhere on the LB filesystem as long as it satisfies those substring constraints. The body of the WAF rule (config form field) is written verbatim to that path. By choosing a filename like 92etc92cron.d92nginx_cfg_evil (resolving to /etc/cron.d/nginx_cfg_evil), an attacker drops a cron entry on the load balancer with attacker-controlled content. Cron parses the file on its next scan, executing the embedded job as root — full RCE on every load balancer the caller's group manages. At time of publication, there are no publicly available patches.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00372 31st percentileScored 2026-11-07
Fix No fix listed No fixed version in the sources yet

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
roxy-wiroxy-wiup to 8.2.6.4—No fix listedCNA
  • roxy-wi Vendorroxy-wi Affected up to 8.2.6.4 Fixed in — No fix listed CNA

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:roxy-wi:roxy-wi:*:*:*:*:*:*:*:*——roxy-wi
  • cpe:2.3:a:roxy-wi:roxy-wi:*:*:*:*:*:*:*:* Versions — — ·roxy-wi

Remediation

No fixed version listed by the sources yet.

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-45556

References

  • TI-2022-13181 Unauthenticated Remote Code Execution in Roxy-WI CVSS 3.1CRITICAL 10.0
  • TI-2022-13170 Unauthenticated Remote Code Execution in Roxy-wi CVSS 3.1CRITICAL 10.0
  • TI-2026-25520 Roxy-WI has SQL Injection in haproxy_section_save Endpoint via Unsanitized server_ip Parameter CVSS 4.0HIGH 8.9
  • TI-2026-25518 Roxy-WI vulnerable to path traversal and arbitrary file writing CVSS 4.0HIGH 8.9
  • TI-2026-33307 Roxy-WI: Authenticated RCE on every managed HAProxy load balancer via `option` field config injection in section save CVSS 3.1CRITICAL 9.9
  • TI-2026-33301 Roxy-WI: Cross-tenant authorization bypass on /install/* — guest can run Ansible / SSH on every registered server CVSS 3.1CRITICAL 9.9
See all 33 →

Sources

This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences