Skip to content

Commit f2d1a4f

Browse files
1 parent 505cc0c commit f2d1a4f

1 file changed

Lines changed: 61 additions & 0 deletions

File tree

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
{
2+
"schema_version": "1.4.0",
3+
"id": "GHSA-cp8r-8jvw-v3qg",
4+
"modified": "2026-03-30T16:38:38Z",
5+
"published": "2026-03-30T16:38:38Z",
6+
"aliases": [
7+
"CVE-2026-33029"
8+
],
9+
"summary": "nginx-ui Vulnerable to DoS via Negative Integer Input in Logrotate Interval",
10+
"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.",
11+
"severity": [
12+
{
13+
"type": "CVSS_V4",
14+
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"
15+
}
16+
],
17+
"affected": [
18+
{
19+
"package": {
20+
"ecosystem": "Go",
21+
"name": "github.com/0xJacky/Nginx-UI"
22+
},
23+
"ranges": [
24+
{
25+
"type": "ECOSYSTEM",
26+
"events": [
27+
{
28+
"introduced": "0"
29+
},
30+
{
31+
"last_affected": "1.99"
32+
}
33+
]
34+
}
35+
]
36+
}
37+
],
38+
"references": [
39+
{
40+
"type": "WEB",
41+
"url": "https://github.com/0xJacky/nginx-ui/security/advisories/GHSA-cp8r-8jvw-v3qg"
42+
},
43+
{
44+
"type": "PACKAGE",
45+
"url": "https://github.com/0xJacky/nginx-ui"
46+
},
47+
{
48+
"type": "WEB",
49+
"url": "https://github.com/0xJacky/nginx-ui/releases/tag/v2.3.4"
50+
}
51+
],
52+
"database_specific": {
53+
"cwe_ids": [
54+
"CWE-20"
55+
],
56+
"severity": "MODERATE",
57+
"github_reviewed": true,
58+
"github_reviewed_at": "2026-03-30T16:38:38Z",
59+
"nvd_published_at": null
60+
}
61+
}

0 commit comments

Comments
 (0)