CVE-2026-45565
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.
Scoring
- Severity
- HIGH
- CVSS base score
- 8.1
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
- EPSS probability
- 0.30%
- CWE
- CWE-20, CWE-22, CWE-117
- Published
- 2026-06-10
- Last modified
- 2026-06-10
Affected products
- roxy-wi roxy-wi
Weakness type
Related vulnerabilities
- CVE-2026-13745 — Arbitrary Code Execution in Gemini CLI via Symlinked Environment Variables
- CVE-2026-54694 — NationalSecurityAgency/skills-service has Stored XSS via User Registration Enabling Admin Account Takeover
- CVE-2026-86768 — Snipe-IT before 8.7.0 Improper Input Validation via API Checkout
- CVE-2025-71417 — PocketMine-MP before 5.32.1 Denial of Service via ResourcePackClientResponsePacket
- CVE-2024-58380 — PocketMine-MP before 5.11.2 Denial of Service via BookEditPacket
- CVE-2023-54393 — PocketMine-MP before 4.20.5 Denial of Service via LoginPacket
- CVE-2023-54392 — PocketMine-MP before 4.22.3 Denial of Service via BlockActorDataPacket
- CVE-2026-74761 — Apache ActiveMQ Broker, Apache ActiveMQ All, Apache ActiveMQ: Spoofing of RemoveSubscription clientId