CVE-2024-22198 Authenticated (user role) arbitrary command execution by modifying `start_cmd` setting (GHSL-2023-268)
Authenticated users can execute arbitrary commands by modifying the terminal start command setting via the API, leading to remote code execution and privilege escalation.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2024-22198?
CVE-2024-22198 is a high-severity command injection vulnerability in 0xJacky nginx-ui, published on 11 Jan 2024. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Nginx-UI is a web interface to manage Nginx configurations. It is vulnerable to arbitrary command execution by abusing the configuration settings. The `Home > Preference` page exposes a list of system settings such as `Run Mode`, `Jwt Secret`, `Node Secret` and `Terminal Start Command`. While the UI doesn't allow users to modify the `Terminal Start Command` setting, it is possible to do so by sending a request to the API. This issue may lead to authenticated remote code execution, privilege escalation, and information disclosure. This vulnerability has been patched in version 2.0.0.beta.9.
Weakness: CWE-77
Which versions are affected by CVE-2024-22198?
3 open source packages ship an affected version, including github.com/0xJacky/Nginx-UI. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
github.com/0xJacky/Nginx-UI Go | All versions | 1.9.10-0.20231219184941-827e76c46e63 |
github.com/0xJacky/Nginx-UI Go | All versions | 1.9.10-0.20231219184941-827e76c46e63 |
github.com/0xJacky/Nginx-UI Go | All versions | 1.9.10-0.20231219184941-827e76c46e63 |
Products include Nginxui Nginx Ui.
How do I fix CVE-2024-22198?
Upgrade github.com/0xJacky/Nginx-UI to 1.9.10-0.20231219184941-827e76c46e63 or later.
Upgrade, and pass arguments to programs as a list instead of through a shell. More about Command injection.
Is CVE-2024-22198 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2024-22198 exists.
Public exploit code: 1 proofs of concept on GitHub.
Other vulnerabilities in 0xJacky nginx-ui
- CVE-2026-33032 Nginx UI: Unauthenticated MCP Endpoint Allows Remote Nginx Takeover
- CVE-2026-27944 Nginx UI: Unauthenticated Backup Download with Encryption Key Disclosure
- CVE-2024-23827 Nginx-UI arbitrary file write through the Import Certificate feature
- CVE-2026-107806 Nginx UI: Authenticated Remote Code Execution via Backup Restore App Config Overwrite
- CVE-2026-33026 nginx-ui Backup Restore Allows Tampering with Encrypted Backups
Sources
Also known as GHSA-8r25-68wm-jw35, GO-2024-2462.