CVE-2026-42223

Source
https://cve.org/CVERecord?id=CVE-2026-42223
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-42223.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-42223
Aliases
Published
2026-05-04T20:12:00.546Z
Modified
2026-07-15T01:49:20.403675577Z
Severity
  • 6.5 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N CVSS Calculator
Summary
nginx-ui: Settings API Exposes Protected Secrets
Details

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.

Database specific
{
    "cwe_ids": [
        "CWE-200"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/42xxx/CVE-2026-42223.json",
    "cna_assigner": "GitHub_M"
}
References

Affected packages

Git / github.com/0xjacky/nginx-ui

Affected ranges

Type
GIT
Repo
https://github.com/0xjacky/nginx-ui
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed
Database specific
{
    "cpe": "cpe:2.3:a:nginxui:nginx_ui:*:*:*:*:*:*:*:*",
    "extracted_events": [
        {
            "introduced": "0"
        },
        {
            "fixed": "2.3.8"
        }
    ],
    "source": [
        "AFFECTED_FIELD",
        "CPE_RANGE",
        "REFERENCES"
    ]
}

Affected versions

v1.*
v1.1.0
v1.2.0
v1.2.0-alpha.3
v1.2.0-alpha.4
v1.2.0-rc.1
v1.2.0-rc.2
v1.2.0-rc.3
v1.2.1
v1.2.2
v1.3.0
v1.3.0-rc1
v1.3.1
v1.3.1-fix
v1.3.2
v1.3.3-rc1
v1.4.0
v1.4.0-rc1
v1.4.1
v1.4.2
v1.5.0
v1.5.0-beta1
v1.5.0-beta2
v1.5.0-beta3
v1.5.0-beta4
v1.5.0-beta4-fix
v1.5.0-beta5
v1.5.0-beta6
v1.5.0-beta7
v1.5.0-beta8
v1.5.0-beta9
v1.5.1
v1.5.2
v1.6.0
v1.6.0-fix
v1.6.1
v1.6.2
v1.6.3
v1.6.5
v1.6.6
v1.6.7
v1.6.8
v1.7.0
v1.7.0-patch
v1.7.1
v1.7.2
v1.7.3
v1.7.4
v1.7.5
v1.7.6
v1.7.7
v1.7.8
v1.7.9
v1.8.0
v1.8.1
v1.8.2
v1.8.3
v1.8.4
v1.8.4-patch
v1.9.9
v1.9.9-1
v1.9.9-2
v1.9.9-3
v1.9.9-4
v2.*
v2.0.0
v2.0.0-beta.1
v2.0.0-beta.10
v2.0.0-beta.10-patch
v2.0.0-beta.11
v2.0.0-beta.12
v2.0.0-beta.13
v2.0.0-beta.13-patch
v2.0.0-beta.14
v2.0.0-beta.15
v2.0.0-beta.16
v2.0.0-beta.17
v2.0.0-beta.18
v2.0.0-beta.18-patch.1
v2.0.0-beta.18-patch.2
v2.0.0-beta.19
v2.0.0-beta.2
v2.0.0-beta.20
v2.0.0-beta.21
v2.0.0-beta.22
v2.0.0-beta.23
v2.0.0-beta.23-patch.1
v2.0.0-beta.23-patch.2
v2.0.0-beta.24
v2.0.0-beta.25
v2.0.0-beta.25-patch.1
v2.0.0-beta.25-patch.2
v2.0.0-beta.26
v2.0.0-beta.27
v2.0.0-beta.28
v2.0.0-beta.29
v2.0.0-beta.3
v2.0.0-beta.30
v2.0.0-beta.31
v2.0.0-beta.32
v2.0.0-beta.32-patch.1
v2.0.0-beta.33
v2.0.0-beta.34
v2.0.0-beta.35
v2.0.0-beta.36
v2.0.0-beta.37
v2.0.0-beta.37-patch.1
v2.0.0-beta.37-patch.2
v2.0.0-beta.37-patch.3
v2.0.0-beta.37-patch.4
v2.0.0-beta.37-patch.5
v2.0.0-beta.38
v2.0.0-beta.39
v2.0.0-beta.4
v2.0.0-beta.4-patch
v2.0.0-beta.40
v2.0.0-beta.41
v2.0.0-beta.42
v2.0.0-beta.5
v2.0.0-beta.5-patch
v2.0.0-beta.6
v2.0.0-beta.6-patch
v2.0.0-beta.6-patch.2
v2.0.0-beta.7
v2.0.0-beta.8
v2.0.0-beta.8-patch
v2.0.0-beta.9
v2.0.0-rc.1
v2.0.0-rc.1-patch.1
v2.0.0-rc.1-patch.2
v2.0.0-rc.2
v2.0.0-rc.3
v2.0.0-rc.3-patch.1
v2.0.0-rc.4
v2.0.0-rc.4-patch.1
v2.0.0-rc.4-patch.2
v2.0.0-rc.4-patch.3
v2.0.0-rc.5
v2.0.0-rc.6
v2.0.0-rc.6-patch.1
v2.0.0-rc.6-patch.2
v2.0.0-rc.6-patch.3
v2.0.0-rc.6-patch.4
v2.0.0-rc.6-patch.5
v2.0.0-rc.7
v2.0.0-rc.7-patch.2
v2.0.0-rc.7-patch.3
v2.0.0-rc.7-patch.4
v2.0.0-rc.7-patch.5
v2.0.0-rc.7-patch.6
v2.0.0-rc.7-patch.7
v2.0.0-rc.7-patch.8
v2.0.0-rc.8
v2.0.0-rc.8-patch.1
v2.0.1
v2.0.2
v2.1.0
v2.1.0-beta.1
v2.1.0-patch.1
v2.1.0-rc.1
v2.1.0-rc.2
v2.1.0-rc.3
v2.1.1
v2.1.10
v2.1.11
v2.1.12
v2.1.13
v2.1.14
v2.1.15
v2.1.16
v2.1.17
v2.1.2
v2.1.3
v2.1.4
v2.1.4-patch.1
v2.1.5
v2.1.6
v2.1.7
v2.1.8
v2.1.9
v2.2.0
v2.2.0-patch.1
v2.2.1
v2.3.0
v2.3.1
v2.3.2
v2.3.3
v2.3.4
v2.3.5
v2.3.6
v2.3.7

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-42223.json"