Code injection in Nginx UI backup restore allows code execution
Key facts
- Attack vector
- Network
- Privileges required
- High
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-94.
Summary
Nginx UI versions from 2.3.8 before 2.5.0 are affected. The backup restore flow trusts attacker-supplied key material, so an authenticated administrator can replace the live app.ini with attacker-controlled contents, which is a code injection flaw (CWE-94). Running the Nginx configuration test then executes the injected command in the Nginx UI runtime, affecting confidentiality, integrity and availability. A public proof of concept is linked in the references.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
Nginx UI is a web user interface for the Nginx web server. From 2.3.8 until 2.5.0, an authenticated administrator with an active secure session can submit attacker-controlled portable backup key material and a matching manifest to POST /api/restore. The restore flow trusts the supplied key, decrypts attacker-controlled contents, and replaces the live app.ini, including protected nginx command settings such as TestConfigCmd. Triggering POST /api/nginx/test then executes the restored command in the Nginx UI runtime context, affecting confidentiality, integrity, and availability. This issue is fixed in version 2.5.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| 0xJacky | nginx-ui | 2.3.8 to before 2.5.0 | 2.5.0 | Patch available | CNA |
| — | github.com/0xJacky/Nginx-UI (Go) | 1.9.10-0.20260421071512-7864e378f5cf to before 1.9.10-0.20260728074146-a467ed652591 | 1.9.10-0.20260728074146-a467ed652591 | Patch available | GHSA-p393-cf76-4jmr |
- nginx-ui Vendor0xJacky Affected 2.3.8 to before 2.5.0 Fixed in 2.5.0 Patch available CNA
- github.com/0xJacky/Nginx-UI (Go) Vendor— Affected 1.9.10-0.20260421071512-7864e378f5cf to before 1.9.10-0.20260728074146-a467ed652591 Fixed in 1.9.10-0.20260728074146-a467ed652591 Patch available GHSA-p393-cf76-4jmr
Remediation
Upgrade nginx-ui to version 2.5.0. For the github.com/0xJacky/Nginx-UI Go module, use version 1.9.10-0.20260728074146-a467ed652591.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
- Fix · CNA nginx-ui (0xJacky) Fixed in 2.5.0
- Fix · GHSA-p393-cf76-4jmr github.com/0xJacky/Nginx-UI (Go) Fixed in 1.9.10-0.20260728074146-a467ed652591 Advisory →
Timeline
- 2026-10-09 Threatist record created from CVE-2026-107806
- 2026-10-10 Alias added: GHSA-p393-cf76-4jmr
- 2026-10-10 Fix available: Go/github.com/0xJacky/[email protected] · GHSA-p393-cf76-4jmr
- 2026-10-10 CVSS score added · GHSA-p393-cf76-4jmr
- 2026-10-10 Weakness changed · GHSA-p393-cf76-4jmr
- 2026-10-10 5 new references · GHSA-p393-cf76-4jmr
- 2026-10-14 CISA SSVC decision points changed
- 2026-10-14 Priority changed: MEDIUM → HIGH
- 2026-10-21 CVSS score added · NVD
References
More 0xJacky Nginx Ui vulnerabilities
- TI-2026-25478 Nginx UI: Unauthenticated MCP Endpoint Allows Remote Nginx Takeover CVSS 3.1CRITICAL 9.8
- TI-2026-25472 nginx-ui Backup Restore Allows Tampering with Encrypted Backups CVSS 4.0CRITICAL 9.4
- TI-2026-22288 Nginx UI: Unauthenticated Backup Download with Encryption Key Disclosure CVSS 3.1CRITICAL 9.8
- TI-2024-15821 Nginx-UI arbitrary file write through the Import Certificate feature CVSS 3.1CRITICAL 9.8
- TI-2026-32056 Nginx UI: Server-Side Request Forgery (SSRF) via Cluster Proxy Middleware Allows Access to Internal Services CVSS 3.1CRITICAL 9.9
- TI-2026-30543 nginx-ui: Unauthenticated first-boot instance claim via POST /api/install allows remote bootstrap takeover CVSS 3.1CRITICAL 9.8
Sources
- CVE-2026-107806 · CVE Program
- CVE-2026-107806 · NVD
- FIRST EPSS
- GHSA-p393-cf76-4jmr · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences