Live › vulnerability › CVE-2026-84318
Go to dashboardThe MCP tool nginx_config_add in Nginx UI writes nginx config files and reloads nginx without running the directive validation that the REST API applies. An authenticated attacker can write blocked directives such as perl, js_import, load_module, or user root, which leads to code execution on servers that load the nginx Perl, njs, or Lua module.
Summary written from the sources below. Check the originals before acting.
First seen by InfraStack 2026-10-23 19:13 UTC, 0h before NVD. All times on this page are UTC.
| Product | Ecosystem | Affected | Fixed in |
|---|
| github.com/0xJacky/Nginx-UI | go | >= 1.9.10-0.20250506154222-1330888280a2, < 1.9.10-0.20260703131214-23d1934099b0 | 1.9.10-0.20260703131214-23d1934099b0 |
2.0.0-rc.6 up to but not including 2.4.1 are affected1.9.10-0.20260703131214-23d1934099b02.4.1 or later (Go module 1.9.10-0.20260703131214-23d1934099b0 or later)Each row is the first time that source carried this signal. The analyst’s rows are its own findings.
Nginx UI is a web user interface for the Nginx web server. From 2.0.0-rc.6 until 2.4.1, the MCP tool nginx_config_add writes nginx configuration files to disk and triggers an nginx reload without calling config.ValidateConfigFile. The identical flow in the REST API (POST /api/configs) does call that function and correctly rejects dangerous directives. An authenticated attacker can exploit this gap to write config files containing any blocked directive (perl, js_import, load_module, user root, etc.), bypassing nginx-ui's entire security layer. On a server with the nginx Perl, njs, or Lua module loaded, this is post-authentication Remote Code Execution. This issue is fixed in version 2.4.1.
This page as .md · .json · in your agent: get_signal("CVE-2026-84318")
Go Vulnerability Database, CC-BY 4.0 · EPSS scores by FIRST, used with attribution · NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.