---
id: "CVE-2026-107809"
kind: "vulnerability"
aliases: ["CVE-2026-107809", "GHSA-33rr-wq23-g6gg", "GO-2026-6703"]
title: "Nginx-UI AuthRequired token cookie fallback enables CSRF against management APIs in github.com/0xJacky/Nginx-UI"
severity: "high"
cvss: 8.8
epss: 0.00193
exploited: false
status: "open"
category: "package"
products: [{"name": "github.com/0xJacky/Nginx-UI", "fixed": ["1.9.10-0.20260728074433-a3999bd78a3b"], "affected": ">= 1.9.10-0.20250517140552-daee3ac7ade1, < 1.9.10-0.20260728074433-a3999bd78a3b", "ecosystem": "go"}]
ecosystems: ["go"]
tags: ["go", "nginx", "nginx-ui", "package", "self-hosted"]
not_affected_if: ["auth-required", "managed-hosting", "no-admin-browser-sessions"]
published_at: "2026-10-09T16:17:25+00:00"
first_seen_at: "2026-10-23T19:13:08+00:00"
updated_at: "2026-10-23T19:52:35+00:00"
sources: [{"source": "govuln", "url": "https://pkg.go.dev/vuln/GO-2026-6703", "first_seen_at": "2026-10-23T19:13:08+00:00"}, {"source": "epss", "url": "https://api.first.org/data/v1/epss?cve=CVE-2026-107809", "first_seen_at": "2026-10-23T19:13:43+00:00"}, {"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-107809", "first_seen_at": "2026-10-23T19:35:23+00:00"}]
---

# Nginx-UI AuthRequired token cookie fallback enables CSRF against management APIs in github.com/0xJacky/Nginx-UI

Nginx-UI, a web management interface for Nginx, accepts the browser-stored JWT cookie as an API credential and lacks consistent CSRF or Origin checks on management endpoints. A remote attacker who lures a logged-in administrator to a malicious page can make the victim's browser change Nginx configuration, trigger reloads, or run other management actions.

_Summary, check and fix written by a model from the sources; labelled as such._

## Affected

- go:github.com/0xJacky/Nginx-UI affected >= 1.9.10-0.20250517140552-daee3ac7ade1, < 1.9.10-0.20260728074433-a3999bd78a3b fixed 1.9.10-0.20260728074433-a3999bd78a3b

## How to check

Check the Go module version of github.com/0xJacky/Nginx-UI in go.mod; unknown whether the sources give a runtime command.
Affected range per govuln: >= 1.9.10-0.20250517140552-daee3ac7ade1 and < 1.9.10-0.20260728074433-a3999bd78a3b.
Description says versions 2.0.0 through 2.5.0 are affected, which conflicts with the module pseudo-version range.

## Fix

Upgrade github.com/0xJacky/Nginx-UI to 1.9.10-0.20260728074433-a3999bd78a3b or later (description says 2.5.0).
Until upgraded, restrict admin sessions and avoid browsing other sites while logged in to the management UI; unknown whether a configuration workaround exists.

## Timeline

- 2026-10-23T19:13:08+00:00 govuln https://pkg.go.dev/vuln/GO-2026-6703
- 2026-10-23T19:13:43+00:00 epss https://api.first.org/data/v1/epss?cve=CVE-2026-107809
- 2026-10-23T19:35:23+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-107809

## From the sources

Nginx UI is a web user interface for the Nginx web server. From 2.0.0 until 2.5.0, AuthRequired accepts a browser-managed token cookie as an API credential after the front end stores the JWT in that cookie. Because management endpoints do not universally require a CSRF token or perform Origin or Referer validation, a remote attacker can induce a logged-in administrator's browser to submit authenticated cross-site state-changing requests, including POST /api/configs. The attack requires an administrator account without OTP/Passkey or a target endpoint that does not require secure-session proof. The attacker cannot read the cross-origin response but can modify Nginx configuration, trigger reloads, or invoke other management operations reachable with the victim's session. This issue is fixed in version 2.5.0.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
