Cyber Resilience

CVE-2022-31161

CriticalPublic PoCRCE

Published: 15 July 2022

Published
15 July 2022
Modified
21 November 2024
KEV Added
Patch
CVSS Score v3.1 10.0 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:L
EPSS Score 0.7301 98.8th percentile
Risk Priority 64 60% EPSS · 20% KEV · 20% CVSS

Summary

CVE-2022-31161 is a critical-severity Command Injection (CWE-77) vulnerability in Roxy-Wi Roxy-Wi. Its CVSS base score is 10.0 (Critical).

Operationally, ranked in the top 1.2% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

Deeper analysis

Roxy-WI is a web interface for managing HAProxy, Nginx, and Keepalived servers. Prior to version 6.1.1.0, the application was vulnerable to remote code execution because the subprocess_execute function in /app/options.py executed system commands without sanitizing or validating user-supplied input. The flaw is tracked under CVE-2022-31161 with a CVSS 3.1 score of 10.0 and is associated with CWE-77, CWE-94, and CWE-434.

Unauthenticated attackers with network access can supply crafted input to trigger arbitrary command execution on the underlying host. Successful exploitation grants the ability to read, modify, or delete data and potentially disrupt services, consistent with the CVSS impact metrics of high confidentiality and integrity loss plus limited availability impact.

The official GitHub security advisory GHSA-pg3w-8p63-x483 and the v6.1.1.0 release notes state that the issue is resolved by applying the patch contained in that version. Public exploit code demonstrating remote code execution against the affected software has been published on Packet Storm.

EPSS for the vulnerability rose from a low baseline to a peak of 0.8570 before receding to the current value of 0.7301, indicating that meaningful exploitation interest developed after disclosure.

EU & UK References

Vulnerability details

Roxy-WI is a Web interface for managing HAProxy, Nginx and Keepalived servers. Prior to version 6.1.1.0, the system command can be run remotely via the subprocess_execute function without processing the inputs received from the user in the /app/options.py file. Version…

more

6.1.1.0 contains a patch for this issue.

CWE(s)

Related Threats

No named actor attribution yet. ATT&CK technique mapping in progress for this CVE.

Affected Assets

roxy-wi
roxy-wi
≤ 6.1.1.0

Mitigating Controls

Likely Mitigating Controls AI

Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.

addresses: CWE-434 CWE-94

Dangerous file uploads can be detonated in the chamber to determine malice before any production write or execution occurs.

addresses: CWE-434

Requiring identifiable owners for portable devices reduces the attack surface for unrestricted uploads of dangerous file types via anonymous media.

addresses: CWE-94

Makes persistent code injection into loaded programs impossible when the executable image itself resides on hardware-protected read-only media.

addresses: CWE-434

Prevents unrestricted writing of arbitrary or malicious firmware by keeping hardware write-protect enabled except under tightly controlled manual procedures.

addresses: CWE-94

Validates inputs used in dynamic code generation to block injected directives.

addresses: CWE-94

Directly prevents execution of attacker-supplied code written into data memory regions.

addresses: CWE-434

Scans files from external sources on download/open/execute, blocking unrestricted uploads of dangerous file types.

References