Vulnerability · Published Jun 10, 2026 · Assigned by GitHub_M
CVE-2026-45569Roxy-WI: Path-traversal patch in commit d4d10006 is a no-op (tuple-membership bug)
High 8.1
In plain English
A high-severity path traversal in roxy-wi from roxy-wi. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 25% of all known vulnerabilities).
Official description
Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. In versions 8.2.6.4 and prior, ommit d4d10006 ("Expand validation to block .. in config_file_name and configver for improved security") added a line in app/modules/config/config.py:462. This is tuple-membership, not substring containment — '..' in (a, b, c) evaluates to True only if any of a, b, c is equal to the literal string '..'. For any realistic path-traversal payload (../../etc/passwd, ..\\..\\etc\\passwd, etc.) the check returns False and the patch silently lets the payload through. At time of publication, there are no publicly available patches.
Affected products (as reported)
Weakness: CWE-22, CWE-697 · Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
References
- https://github.com/roxy-wi/roxy-wi/security/advisories/GHSA-j6p4-8532-h9hv x_refsource_CONFIRM
- https://github.com/roxy-wi/roxy-wi/commit/d4d10006 x_refsource_MISC