Roxy-WI: Path-traversal patch in commit d4d10006 is a no-op (tuple-membership bug)
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.
Problem Types
| Type | CWE ID | Description |
|---|
| CWE | CWE-22 | CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') |
| CWE | CWE-697 | CWE-697: Incorrect Comparison |
Type: CWE
Description: CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
Type: CWE
Description: CWE-697: Incorrect Comparison
Metrics
| Version | Base score | Base severity | Vector |
|---|
| 3.1 | 8.1 | HIGH | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N |
Version: 3.1
Base score: 8.1
Base severity: HIGH
Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N