Description
Onyx is an open-source AI platform. Prior to 3.1.10, 3.2.14, and 4.0.0, Onyx's GET /api/mcp/servers and GET /api/mcp/servers/persona/{persona_id} endpoints expose another user's OAuth Authorization header because OnyxTokenStorage.set_tokens and OnyxTokenStorage.set_client_info in backend/onyx/server/features/mcp/api.py copy per-user tokens into a shared admin MCPConnectionConfig row and _db_mcp_server_to_api_mcp_server returns that row through auth_template.headers to any BASIC_ACCESS user. This issue is fixed in versions 3.1.10, 3.2.14, and 4.0.0.
Published: 2026-08-17
Score: 9.6 Critical
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Onyx's GET /api/mcp/servers and /api/mcp/servers/persona/{persona_id} endpoints incorrectly copy per‑user OAuth Authorization headers into a shared admin MCPConnectionConfig row, which is then returned to any authenticated user with BASIC_ACCESS rights. This flaw allows one user to obtain another user’s OAuth token, enabling the attacker to impersonate or access third‑party services on the victim’s behalf. The vulnerability is classified under CWE‑200 (Information Exposure) and CWE‑863 (Improper Handling of Sensitive Information).

Affected Systems

Versions of the Onyx open‑source AI platform prior to 3.1.10, 3.2.14, and 4.0.0 are affected. The onyx‑dot‑app:onyx product is impacted when deployed with any of these earlier releases. All users of the affected releases are potentially at risk.

Risk and Exploitability

The CVSS score of 9.6 indicates a critical severity. While the EPSS score is not available, the flaw is already listed in public advisories, and the attack can be carried out by any authenticated BASIC_ACCESS user who performs the vulnerable GET requests. Because the leaked OAuth header is usable by the attacker, the impact extends to confidentiality and integrity of the victim’s third‑party service access. The flaw is not yet shown as a known exploited vulnerability in the CISA KEV catalog.

Generated by OpenCVE AI on August 17, 2026 at 23:53 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Onyx to version 3.1.10, 3.2.14, or 4.0.0 or later, which contain a fix that isolates per‑user tokens.
  • Verify that the /api/mcp/servers and /api/mcp/servers/persona/{persona_id} endpoints no longer return another user's OAuth header. This can be validated via API testing or monitoring for unexpected Authorization headers.
  • If an upgrade is not immediately feasible, consider restricting BASIC_ACCESS privileges for normal users or disabling the vulnerable endpoints temporarily, and rotate any potentially exposed OAuth tokens.

Generated by OpenCVE AI on August 17, 2026 at 23:53 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 17 Aug 2026 21:45:00 +0000

Type Values Removed Values Added
Description Onyx is an open-source AI platform. Prior to 3.1.10, 3.2.14, and 4.0.0, Onyx's GET /api/mcp/servers and GET /api/mcp/servers/persona/{persona_id} endpoints expose another user's OAuth Authorization header because OnyxTokenStorage.set_tokens and OnyxTokenStorage.set_client_info in backend/onyx/server/features/mcp/api.py copy per-user tokens into a shared admin MCPConnectionConfig row and _db_mcp_server_to_api_mcp_server returns that row through auth_template.headers to any BASIC_ACCESS user. This issue is fixed in versions 3.1.10, 3.2.14, and 4.0.0.
Title Onyx: Cross-user OAuth-token leak via /api/mcp/servers* for per-user MCP servers
Weaknesses CWE-200
CWE-863
References
Metrics cvssV3_1

{'score': 9.6, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-17T21:28:32.814Z

Reserved: 2026-08-06T16:28:51.182Z

Link: CVE-2026-71424

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-17T22:17:26.527

Modified: 2026-08-17T22:17:26.527

Link: CVE-2026-71424

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-18T00:00:05Z

Weaknesses
  • CWE-200

    Exposure of Sensitive Information to an Unauthorized Actor

  • CWE-863

    Incorrect Authorization