CVE-2026-33029
Nginx UI vulnerability analysis and mitigation

Overview

CVE-2026-33029 is an improper input validation vulnerability in nginx-ui that allows an authenticated user to cause a complete Denial of Service (DoS) by submitting a negative integer for the logrotate rotation interval. It affects nginx-ui versions up to and including 2.3.3, with version 2.3.4 containing the fix. The vulnerability was published on March 28, 2026 by researcher "dapickle" and added to the GitHub Advisory Database on March 30, 2026. It carries a CVSS v4 base score of 6.9 (Medium) and a CVSS v3.1 base score of 6.5 (Medium) (Github Advisory, nginx-ui Advisory).

Technical details

The root cause is CWE-20 (Improper Input Validation): the logrotate.interval field in the POST /api/settings API endpoint accepts a signed integer without enforcing a lower-bound check. When a negative value (e.g., -1) is passed, the Go backend's scheduling or rotation-calculation logic enters a non-terminating loop, consuming CPU resources and blocking the web server from processing any further concurrent requests. Exploitation requires only valid authentication credentials and a single crafted HTTP POST request — no special privileges beyond a standard authenticated session are needed. A public proof-of-concept with step-by-step reproduction instructions is included in the security advisory (nginx-ui Advisory).

Impact

Successful exploitation results in a complete availability loss of the nginx-ui web interface, as the Go web server becomes unresponsive to all subsequent requests after the malicious payload is processed. There is no confidentiality or integrity impact — the vulnerability is purely a denial-of-service condition. Because nginx-ui is used to manage nginx configurations, a sustained DoS could prevent administrators from modifying or monitoring their nginx deployments, indirectly affecting the availability of services managed through the interface (Github Advisory, nginx-ui Advisory).

Exploitability

A public proof-of-concept is available within the official security advisory, providing concrete reproduction steps including the exact endpoint, HTTP method, and JSON payload required to trigger the DoS (nginx-ui Advisory). There is no evidence of in-the-wild exploitation at this time, and no threat actor attribution has been reported. The EPSS score is approximately 0.058% (0.08% per GitHub Advisory), placing it in the 24th percentile for exploitation likelihood. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog.

Exploitation steps

  1. Authenticate: Log in to the nginx-ui dashboard using any valid user account that has access to the settings panel.
  2. Prepare the payload: Craft a JSON payload targeting the logrotate.interval field with a negative integer value:
{
  "logrotate": {
    "enabled": true,
    "cmd": "logrotate /etc/logrotate.d/nginx",
    "interval": -1
  }
}
  1. Send the request: Submit a POST request to /api/settings with the crafted payload using a tool such as Burp Suite, Postman, or curl, including the authenticated session token or cookie.
  2. Observe impact: The Go web server immediately enters a non-terminating loop processing the negative interval value, consuming CPU resources and rendering the nginx-ui web interface unresponsive to all subsequent requests (nginx-ui Advisory).

Indicators of compromise

  • Network: Unexpected POST requests to /api/settings from authenticated sessions, particularly with unusual or minimal JSON payloads; sudden cessation of HTTP responses from the nginx-ui service port (default 80/443 or 8080/8443 in Docker deployments).
  • Logs: nginx-ui access logs showing a POST to /api/settings immediately followed by no further successful request processing; application logs may show a goroutine or scheduling loop that does not terminate.
  • Process: Sustained high CPU utilization by the nginx-ui Go process (nginx-ui binary) without corresponding legitimate workload; the process remains running but unresponsive.
  • Availability: The nginx-ui web dashboard becomes completely unreachable for all users following the malicious request, which can serve as a behavioral indicator of exploitation (nginx-ui Advisory).

Mitigation and workarounds

Upgrade nginx-ui to version 2.3.4 or later, which includes a security patch for this vulnerability along with several other security fixes — the maintainer recommends all users update immediately (nginx-ui v2.3.4 Release). As a temporary workaround prior to patching, restrict access to the /api/settings endpoint via network-level controls (e.g., firewall rules, reverse proxy ACLs) to limit exposure to trusted administrators only. Additionally, implement backend input validation to enforce a positive lower bound on the logrotate.interval parameter and consider rate-limiting POST requests to /api/settings to reduce abuse potential.

Additional resources


SourceThis report was generated using AI

Related Nginx UI vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-44015CRITICAL9.9
  • Nginx UI logoNginx UI
  • cpe:2.3:a:nginxui:nginx_ui
NoYesMay 12, 2026
CVE-2026-42222CRITICAL9.8
  • Nginx UI logoNginx UI
  • cpe:2.3:a:nginxui:nginx_ui
NoYesMay 04, 2026
CVE-2026-42221CRITICAL9.8
  • Nginx UI logoNginx UI
  • cpe:2.3:a:nginxui:nginx_ui
NoYesMay 04, 2026
CVE-2026-42238CRITICAL9
  • Nginx UI logoNginx UI
  • cpe:2.3:a:nginxui:nginx_ui
NoYesMay 04, 2026
CVE-2026-42223MEDIUM6.5
  • Nginx UI logoNginx UI
  • github.com/0xJacky/Nginx-UI
NoYesMay 04, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management