CVE-2026-42223
published 2026-05-04CVE-2026-42223: Nginx UI is a web user interface for the Nginx web server. Prior to version 2.3.8, the GetSettings API handler (api/settings/settings.go:24-65) serializes all…
PriorityP341medium6.5CVSS 3.1
AVNACLPRLUINSUCHINAN
EPSS
0.29%
21.2th percentile
Nginx UI is a web user interface for the Nginx web server. Prior to version 2.3.8, the GetSettings API handler (api/settings/settings.go:24-65) serializes all settings structs to JSON and returns them to authenticated users. Many sensitive fields are tagged with protected:"true" - however, this tag is only enforced during writes (via ProtectedFill in SaveSettings) and is completely ignored during reads. This exposes 40+ protected fields including JwtSecret (enabling auth token forgery), NodeSecret (enabling cluster node impersonation), OIDC ClientSecret (enabling OAuth account takeover), and the IP whitelist configuration. This issue has been patched in version 2.3.8.
Affected
3 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| 0xjacky | nginx-ui | < 2.3.8 | 2.3.8 |
| github.com | 0xjacky_nginx-ui | >= 0 < 2.3.8 | 2.3.8 |
| nginxui | nginx_ui | < 2.3.8 | 2.3.8 |
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
GHSA
Nginx-UI Settings API Exposes Protected Secrets
ghsa·2026-05-06
CVE-2026-42223 [MEDIUM] CWE-200 Nginx-UI Settings API Exposes Protected Secrets
Nginx-UI Settings API Exposes Protected Secrets
### Summary
The `GetSettings` API handler (`api/settings/settings.go:24-65`) serializes all settings structs to JSON and returns them to authenticated users. Many sensitive fields are tagged with `protected:"true"` - however, this tag is only enforced during writes (via `ProtectedFill` in `SaveSettings`) and is completely ignored during reads. This exposes 40+ protected fields including `JwtSecret` (enabling auth token forgery), `NodeSecret` (enabling cluster node impersonation), OIDC `ClientSecret` (enabling OAuth account takeover), and the IP whitelist configuration.
### Details
#### Vulnerable Code
**`api/settings/settings.go:49-64` - GetSettings serializes all fields**
```go
c.JSON(http.StatusOK, gin.H{
"app": cSettings.AppSettings,
"
VulDB
0xJacky nginx-ui up to 2.3.7 GetSettings API api/settings/settings.go information disclosure (EUVD-2026-27140)
vuldb·2026-05-04·CVSS 6.5
CVE-2026-42223 [MEDIUM] 0xJacky nginx-ui up to 2.3.7 GetSettings API api/settings/settings.go information disclosure (EUVD-2026-27140)
A vulnerability was found in 0xJacky nginx-ui up to 2.3.7. It has been declared as problematic. Affected is an unknown function of the file api/settings/settings.go of the component GetSettings API Handler. Such manipulation leads to information disclosure.
This vulnerability is uniquely identified as CVE-2026-42223. The attack can be launched remotely. No exploit exists.
It is recommended to upgrade the affected component.
No detection rules found.
No public exploits indexed.
No writeups or analysis indexed.
2026-05-04
Published