{"id":"CVE-2026-33029","aliases":["GHSA-cp8r-8jvw-v3qg","GO-2026-4902"],"url":"https://o3.security/vulnerability/CVE-2026-33029","summary":"Nginx UI: DoS via Negative Integer Input in Logrotate Interval","details":"### Summary\nAn input validation vulnerability in the logrotate configuration allows an authenticated user to cause a complete Denial of Service (DoS). By submitting a negative integer for the rotation interval, the backend enters an infinite loop or an invalid state, rendering the web interface unresponsive.\n\n### Details\nThe vulnerability exists in the handler for the POST /api/settings endpoint. Specifically, the logrotate.interval field is accepted as a signed integer without lower-bound verification. When a negative value is processed by the backend logic responsible for scheduling or calculating the next rotation, it triggers a non-terminating loop. This consumes CPU resources and prevents the Go web server from handling further concurrent requests.\n\n**Environment:**\n- OS: Kali Linux 6.17.10-1kali1 (6.17.10+kali-amd64)\n- nginx-ui version: 2.3.3 (513) e5da6dd (go1.26.0 linux/amd64)\n- Deployment: Docker container\n- Run Command: \n```\ndocker run -dit \\\n  --name=nginx-ui \\\n  --restart=always \\\n  -v /mnt/user4/appdata/nginx:/etc/nginx \\\n  -v /mnt/user4/appdata/nginx-ui:/etc/nginx-ui \\\n  -v /var/run/docker.sock:/var/run/docker.sock \\\n  -p 8080:80 -p 8443:443 \\\n  uozi/nginx-ui:latest\n```\n\n### PoC\n1. Authenticate to the nginx-ui dashboard.\n2. Send a POST request to /api/settings (using Burp Suite, Postman, or curl).\n3. Set the payload as follows:\n```\n.\n.\n.\n{\n  \"logrotate\": {\n    \"enabled\": true,\n    \"cmd\": \"logrotate /etc/logrotate.d/nginx\",\n    \"interval\": -1\n  }\n}\n.\n.\n.\n```\n4. Observe that the web server stops responding to all subsequent requests immediately after the injection.\n<img width=\"1041\" height=\"390\" alt=\"image\" src=\"https://github.com/user-attachments/assets/b746a91a-dd63-4f5e-b1a8-382b9d08e181\" />\n\n### Impact\nThis is a High-availability vulnerability (CWE-20: Improper Input Validation). Any authenticated user with access to settings can permanently hang the service.\n\nA patched version of nginx-ui  is available at https://github.com/0xJacky/nginx-ui/releases/tag/v2.3.4.","published":"2026-03-30T17:59:04.740Z","modified":"2026-10-28T02:30:56.469685062Z","cvss":null,"epss":{"score":0.00948,"percentile":0.58524,"asOf":"2026-08-24"},"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"Go","name":"github.com/0xJacky/Nginx-UI","fixedVersion":null}],"fix":null,"references":[{"type":"WEB","url":"https://github.com/0xJacky/nginx-ui/releases/tag/v2.3.4"},{"type":"ADVISORY","url":"https://github.com/0xJacky/nginx-ui/security/advisories/GHSA-cp8r-8jvw-v3qg"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/33xxx/CVE-2026-33029.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-33029"},{"type":"PACKAGE","url":"https://github.com/0xJacky/nginx-ui"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-10-28T02:30:56.469685062Z"}}