{"answers":{"affected":"It affects 1 product.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2022-31161 exists.","fix":"No fix has been published for CVE-2022-31161 yet. Limit exposure of the affected software until one is available.","what":"CVE-2022-31161 is a critical command injection vulnerability in hap-wi roxy-wi, published on 15 Jul 2022. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2022-31161 and fix it if it is affected.\n\nWhat it is: CVE-2022-31161 is a critical command injection vulnerability in hap-wi roxy-wi, published on 15 Jul 2022. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2022-31161 exists.\n\nAffected product: hap-wi roxy-wi. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2022-31161/ (Markdown: https://insights.sbomify.com/CVE-2022-31161/index.md)","id":"CVE-2022-31161","markdown":"https://insights.sbomify.com/CVE-2022-31161/index.md","name":"CVE-2022-31161","record":{"aliases":["GHSA-pg3w-8p63-x483"],"analysis":{"component_type":"web_application","fix_type":"upgrade","impacts":["code_execution"],"network_reachable":"yes","non_default_config":false,"product_category":"HAProxy management interface","requires_auth":"none","summary":"Unauthenticated attackers can execute arbitrary system commands via the ssl_cert upload feature in Roxy-WI.","user_interaction":"not_required","vuln_class":"command_injection"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"roxy-wi","vendor":"roxy-wi"}],"cvss":{"score":10,"severity":"critical","source":"cna","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:L","version":"3.1"},"cwes":[{"id":"CWE-434","name":"Unrestricted Upload of File with Dangerous Type"},{"id":"CWE-94","name":"Improper Control of Generation of Code"},{"id":"CWE-77","name":"Improper Neutralization of Special Elements used in a Command"}],"description":"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 6.1.1.0 contains a patch for this issue.","ecosystems":[],"exploits":{"exploitdb":1,"first_seen":"2023-04-03","github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":1,"refs":[{"date":"2023-04-03","kind":"exploitdb","ref":"51228","stars":null,"title":"Roxy WI v6.1.1.0 - Unauthenticated Remote Code Execution (RCE) via ssl_cert Upload"},{"date":null,"kind":"nuclei","ref":"http/cves/2022/CVE-2022-31161.yaml","stars":null,"title":"Roxy-WI - Remote Code Execution"}],"tier":"weaponised"},"has_fix":false,"headline":"Roxy-WI Vulnerable to Unauthenticated Remote Code Execution via ssl_cert Upload","id":"CVE-2022-31161","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"command_injection","year":"2022"},"n_packages":0,"n_references":3,"next":{"headline":"Slack Morphism for Rust before 0.41.0 can accidentally leak Slack OAuth client information in application debug logs","id":"CVE-2022-31162"},"packages":[],"prev":{"headline":"jQuery UI contains potential XSS vulnerability when refreshing a checkboxradio with an HTML-like initial text label","id":"CVE-2022-31160"},"products":["roxy-wi"],"published":"2022-07-15","related":[{"cvss_score":10,"headline":"Unauthenticated Remote Code Execution in Roxy-WI","id":"CVE-2022-31137","kev_date_added":null,"published":"2022-07-08"},{"cvss_score":10,"headline":"Authentication Bypass in Roxy-wi","id":"CVE-2022-31125","kev_date_added":null,"published":"2022-07-06"},{"cvss_score":10,"headline":"Unauthenticated Remote Code Execution in Roxy-wi","id":"CVE-2022-31126","kev_date_added":null,"published":"2022-07-06"},{"cvss_score":9.8,"headline":"SQL injection in n/a","id":"CVE-2021-38167","kev_date_added":null,"published":"2021-08-07"},{"cvss_score":8.9,"headline":"Roxy-WI vulnerable to path traversal and arbitrary file writing","id":"CVE-2026-33076","kev_date_added":null,"published":"2026-04-24"},{"cvss_score":8.9,"headline":"Roxy-WI has SQL Injection in haproxy_section_save Endpoint via Unsanitized server_ip Parameter","id":"CVE-2026-33078","kev_date_added":null,"published":"2026-04-24"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"},{"class":"attribution","licence":"GPL-2.0-or-later","name":"Exploit-DB"},{"class":"attribution","licence":"MIT","name":"Nuclei templates"}],"ssvc":{"automatable":"yes","exploitation":"none","technical_impact":"total"},"state":"PUBLISHED","updated":"2025-04-23","vendors":["hap-wi"]},"summary":"Unauthenticated attackers can execute arbitrary system commands via the ssl_cert upload feature in Roxy-WI.","url":"https://insights.sbomify.com/CVE-2022-31161/"}