Roxy-WI: Stored XSS in log viewer (wrap_line/highlight_word produce unescaped HTML)
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| roxy-wi | roxy-wi | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Roxy-wi | Roxy-wi |
|
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.149% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Roxy-wi
Roxy-wi roxy-wi |
|
| Vendors & Products |
Roxy-wi
Roxy-wi roxy-wi |
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. In versions 8.2.6.4 and prior, wrap_line (app/modules/common/common.py:181-186) and highlight_word (app/modules/common/common.py:188-192) build raw HTML by string concatenation with no escaping. The frontend (app/static/js/script.js, log-viewer paths) uses .html(data) / .append(data) to inject the response body. Anyone able to write a line into a managed HAProxy/Nginx access log (i.e. anyone who can send an HTTP request to the public LB) can land an <svg/onload=…> payload that executes when a Roxy-WI admin opens the log viewer. At time of publication, there are no publicly available patches. | |
| Title | Roxy-WI: Stored XSS in log viewer (wrap_line/highlight_word produce unescaped HTML) | |
| Weaknesses | CWE-79 | |
| References |
| |
| Metrics |
cvssV3_1
|