/

CVE-2026-79314

Severity:

HIGH RISK

(8.8)

Broken Access Control (CWE-284) in x-ui Inbound Data

CVE-2026-79314

Deferred

Vulnerability type

Category:

Broken Access Control

CWE:

CWE-284

Impact:

Unauthorized cross-user modification of configuration data

Severity:

HIGH RISK

(8.8)

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

An authorization flaw in x-ui allows an authenticated user to modify inbound proxy configurations belonging to other users. The issue becomes risky when an update request accepts a resource identifier without verifying that the referenced resource is owned by the requesting session user.

Affected context

The vulnerability occurs in x-ui's inbound proxy configuration update path when a user-supplied resource identifier is used to select the target configuration. Deployments are exposed when the update operation does not enforce ownership or tenant boundaries before changing fields such as remarks, ports, protocols, settings, enabled state, expiry time, or traffic quotas.

Exploit preconditions

  • Attack surface: Authenticated inbound-configuration update endpoint
  • Required access: A valid user session with permission to submit inbound update requests
  • Trigger point: An update request referencing an inbound resource identifier
  • Why exploitation is possible: The server processes the target identifier without confirming that the resource belongs to the requesting user

Why this happens

The underlying defect is an object-level authorization failure. The update handler trusts a client-provided resource identifier and applies changes without constraining the database lookup or authorization decision to the current session user. This maps to CWE-284: Improper Access Control, specifically a missing ownership check that permits horizontal privilege escalation across peer accounts.

Potential impact

  • An authenticated user may alter another user's inbound proxy configuration
  • Unauthorized changes could disrupt traffic routing or service availability
  • An attacker could modify expiry times or traffic quotas
  • Configuration integrity and tenant isolation could be weakened
  • Changes to protocol or settings may create secondary security or operational risks

General mitigation guidance

Mitigation generally focuses on enforcing authorization at the resource-operation boundary rather than relying on client-supplied identifiers.

Common defensive patterns include:

  • Binding resource queries and update operations to the authenticated user's identity or tenant
  • Performing server-side ownership and policy checks immediately before modification
  • Avoiding authorization decisions based solely on request parameters
  • Applying field-level authorization where sensitive configuration attributes require additional privileges
  • Using least-privilege roles and strict tenant isolation by default
  • Returning consistent responses that do not disclose whether another user's resource exists

How teams detect issues like this

Organizations can look for this class of issue through:

  • Static analysis rules that flag object updates based on unscoped request identifiers
  • Code review checks for missing user, tenant, or ownership predicates in update queries
  • Integration tests that attempt cross-user access to read and modify the same resource
  • API policy enforcement requiring subject identity and resource ownership to be evaluated together
  • Audit logging that records the authenticated actor, target resource, and authorization decision

Automated security testing and code review tools may help identify missing object-level authorization checks.

Sources

SourceLink
github.comgithub.com/lichoin/TraceLoom/blob/main/CVEs/CVE-2026-79314.md
github.comgithub.com/vaxilu/x-ui

Frequently asked

questions

It may be exploitable through the application's authenticated update interface when that interface is reachable by the attacker and accepts a target resource identifier.

Yes. The described attack requires an authenticated user session capable of submitting inbound configuration update requests.

Enforce server-side ownership or tenant authorization on every resource update, with the authorization condition applied as part of the resource lookup or update operation.

Use centralized object-level authorization, test cross-account access in automated integration suites, review identifier-based endpoints carefully, and log authorization decisions for sensitive changes.

Find out what's already
exploitable in your codebase.