Findings

CVE-2026-84319

Nginx UI: MCP configuration tools bypass restricted directive validation and allow secondary authenticated users to execute NJS in Nginx worker context

Published Oct 12, 2026 · corrected/updated Oct 15, 2026 · 0xJacky nginx-ui · evidence confidence high

## Summary The regular HTTP configuration API rejects restricted Nginx directives such as , , and . However, the MCP configuration interface allows a secondary authenticated user to write and apply equivalent restricted configuration content. In the lab, this allowed the user to load , import attacker-controlled JavaScript, reload Nginx, and execute NJS in the Nginx worker context. This is authenticated and is not OS command execution by itself. ## Affected component - - - MCP tool: - Nginx configuration validation ## Impact A secondary authenticated user can bypass the restricted directive validation enforced by the HTTP API and execute attacker-controlled NJS inside the Nginx worker context. This may allow modification of Nginx runtime behavior, including responses, routing, headers, redirects, and request handling. ## Minimal PoC ### Preconditions - Attacker has a secondary authenticated Nginx UI account. - MCP is enabled. - Nginx has NJS available: Observed in the lab: ### 1. HTTP API blocks the restricted config Request: Body: Observed result: ### 2. MCP writes the JavaScript file Open an MCP session and call with: ### 3. MCP writes the NJS-enabled nginx.conf Call again: ### 4. Verify NJS execution Inside the Nginx UI container: Observed response: This confirms that content rejected by the HTTP API can be applied through MCP and executed as NJS in the Nginx worker context. ## Expected behavior MCP configuration tools should enforce the same restricted directive validation as the HTTP API. ## Suggested fix Apply before MCP configuration writes and ensure HTTP API and MCP share the same validation tests for restricted directives such as: - - - - - -

Grounded briefings

Catalog interpretations for three audiences. Each brief cites ingested metadata and the original advisories below. They are not independent research and they do not invent exploit steps.

Executive

CVE-2026-84319 is a high public vulnerability record for 0xJacky nginx-ui. It is not currently listed in the CISA Known Exploited catalog. Check the linked vendor or CERT advisories for patch status. This summary is a catalog interpretation of the ingested metadata and cites the original advisories below.

System administrator

Identify whether 0xJacky nginx-ui is in your estate, then compare installed versions with the affected ranges. Affected packages or ranges on record: github.com/0xJacky/Nginx-UI (0 → 1.9.10-0.20260703131214-23d1934099b0); github.com; 0xJacky nginx-ui. Check the linked vendor or CERT advisories for patch status. Prefer the vendor or distribution advisory linked in Sources before changing production systems. This is a catalog interpretation, not a runbook.

Security analyst

Signals on file: CVSS 8.3. It is not currently listed in the CISA Known Exploited catalog. Weakness classes: CWE-693. Sources contributing to this record: cve_org, github, gitlab, osv. Public exploit references, when present, are outbound links only and are not proof of active exploitation. This is a catalog interpretation of stored metadata.

Exploitation and remediation

  • Exploitation evidence

    Not listed as known exploited in CISA KEV. Not in the CISA KEV catalog.

  • Patch and remediation

    No required-action text is stored yet. Use the vendor or CERT links in Sources for patch availability.

  • Safe detection guidance

    Compare installed versions with the affected ranges below and verify the advisory from the original publisher. This site stores metadata and outbound links only; it does not ship exploit code or proof-of-concept payloads.

Technology hubs

Code

The project this record applies to. Exploit listings stay in References.

Timeline

Detection, updates, and resolution for this record.

  1. Oct 15, 2026 · GitHub Advisory Database

    Detected

    ## Summary The regular HTTP configuration API rejects restricted Nginx directives such as , , and . However, the MCP configuration interface allows a secondary authenticated user to write and apply equivalent restricted configuration content. In the lab, this allowed the user to load , import attacker-controlled JavaScript, reload Nginx, and execute NJS in the Nginx worker context. This is authent

  2. Oct 15, 2026 · GitHub Advisory Database

    Fix available

    github.com/0xJacky/Nginx-UI fixed in 1.9.10-0.20260703131214-23d1934099b0

  3. Oct 15, 2026 · GitHub Advisory Database

    Fix available

    github.com/0xJacky/Nginx-UI fixed in 1.9.10-0.20260703131214-23d1934099b0

  4. Oct 15, 2026 · GitHub Advisory Database

    Updated

    ## Summary The regular HTTP configuration API rejects restricted Nginx directives such as , , and . However, the MCP configuration interface allows a secondary authenticated user to write and apply equivalent restricted configuration content. In the lab, this allowed the user to load , import attacker-controlled JavaScript, reload Nginx, and execute NJS in the Nginx worker context. This is authent

Affected

  • Go github.com/0xJacky/Nginx-UI0 → 1.9.10-0.20260703131214-23d1934099b0
  • golang github.comversion unspecified
  • vendor 0xJacky nginx-uiversion unspecified

Sources

  • CVE.orgVulnerability recordCVE-2026-84319

    Nginx UI is a web user interface for the Nginx web server. Prior to 2.4.1, the regular HTTP configuration API rejects restricted Nginx directives such as load_module, js_import, and js_content. However, the MCP configuration interface allows a secondary authenticated user to writ

    cve.org
  • GitHub Advisory DatabasePackage advisoryGHSA-5r62-gj48-897x

    GitHub Advisory Database record mirrored by OSV.

    github.com
  • GitLab Advisory DatabasePackage advisoryCVE-2026-84319

    The regular HTTP configuration API rejects restricted Nginx directives such as load_module, js_import, and js_content. However, the MCP configuration interface allows a secondary authenticated user to write and apply equivalent restricted configuration content. In the lab, this allowed the user to load ngx_http_js_module.so, import attacker-controlled JavaScript, reload Nginx, and execute NJS in t

    advisories.gitlab.com
  • OSV.devPackage advisoryGHSA-5r62-gj48-897x

    Nginx UI: MCP configuration tools bypass restricted directive validation and allow secondary authenticated users to execute NJS in Nginx worker context

    osv.dev

References