/

CVE-2026-102335

Severity:

HIGH RISK

(7.1)

Improper Authorization (CWE-863) in Nginx Proxy Manager

CVE-2026-102335

Awaiting Analysis

Vulnerability type

Category:

Improper Authorization

CWE:

CWE-863

Impact:

Arbitrary File Exposure and Routing Manipulation

Severity:

HIGH RISK

(7.1)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

Nginx Proxy Manager does not sufficiently restrict the advanced configuration field to administrators. A non-administrator user with host management permissions may inject nginx directives, which could expose arbitrary files or alter routing for assigned hosts.

Affected context

The issue occurs in Nginx Proxy Manager deployments where non-administrator users have permission to manage proxy hosts and can access the advanced configuration field. The risk is present when submitted directives are incorporated into generated nginx configuration without enforcing an administrator-only authorization boundary or an adequately restricted directive policy.

Exploit preconditions

  • Attack surface: The proxy host management interface or corresponding management API
  • Required access: An authenticated non-administrator account with permission to manage relevant hosts
  • Trigger point: Saving or applying an advanced configuration value for an assigned host
  • Why exploitation is possible: Authorization checks do not sufficiently distinguish administrative configuration from host-level management permissions, allowing user-controlled directives to reach nginx configuration generation

Why this happens

The underlying flaw is an authorization boundary failure. A privileged configuration capability is exposed to users whose permissions are limited to managing assigned hosts, without adequately restricting the capability or validating directives against a safe allowlist.

This behavior maps to CWE-863: Incorrect Authorization, where the application fails to enforce the intended permission policy for a protected operation. The insecure pattern is treating a powerful configuration field as ordinary host metadata even though its contents can change server behavior and resource exposure.

Potential impact

  • Arbitrary files accessible to the nginx worker may be exposed
  • Requests for assigned hosts could be redirected or routed unexpectedly
  • Tenant or application data may be disclosed
  • Proxy host availability or intended access controls could be disrupted
  • Configuration integrity and trust between administrators and delegated users could be weakened

General mitigation guidance

Mitigation generally focuses on enforcing least privilege around configuration capabilities and reducing the effect of user-controlled nginx directives.

Common defensive patterns include:

  • Restricting advanced configuration fields to administrators or explicitly trusted operators
  • Applying capability-specific authorization checks at both interface and API boundaries
  • Allowing only narrowly defined, safe directives through a documented policy or allowlist
  • Validating generated configuration before deployment and rejecting unsafe constructs
  • Separating delegated host management from server-wide configuration control
  • Running nginx with minimal filesystem and process privileges
  • Auditing configuration changes and preserving an attributable approval trail

How teams detect issues like this

Organizations can identify similar weaknesses through:

  • Static and policy analysis of authorization checks around administrative configuration fields
  • Code review searches for management endpoints that accept raw server directives
  • Tests using non-administrator roles to verify that privileged fields and operations are denied
  • Configuration-policy checks for directives capable of broad file access or routing changes
  • Monitoring generated nginx configuration and alerting on unexpected directive classes or changes
  • Automated security review tools that compare endpoint capabilities with role definitions

Sources

SourceLink
github.comgithub.com/NginxProxyManager/nginx-proxy-manager
github.comgithub.com/NginxProxyManager/nginx-proxy-manager/blob/v2.16.0/README.md#L36
github.comgithub.com/NginxProxyManager/nginx-proxy-manager/blob/v2.16.0/backend/internal/user.js#L52-L62
github.comgithub.com/NginxProxyManager/nginx-proxy-manager/blob/v2.16.0/backend/templates/proxy_host.conf#L28
github.comgithub.com/NginxProxyManager/nginx-proxy-manager/issues/5749
github.comgithub.com/NginxProxyManager/nginx-proxy-manager/pull/5908
vulncheck.comvulncheck.com/advisories/nginx-proxy-manager-through-2.16.0-improper-authorization-via-advanced-config

Frequently asked

questions

It may be exploitable through the management interface or API when those services are reachable and an attacker has a qualifying non-administrator account.

The attacker generally needs authenticated access with permission to manage one or more proxy hosts. Anonymous access alone is not the expected prerequisite.

Enforce administrator-only or tightly scoped authorization for advanced configuration, and restrict accepted directives through validation or an allowlist.

Model sensitive configuration capabilities separately from ordinary host management, test every role boundary, review generated server configuration, and apply least-privilege controls to the runtime.

Find out what's already
exploitable in your codebase.