{"api_version":"1","generated_at":"2026-08-18T04:13:31+00:00","cve":"CVE-2026-71424","urls":{"html":"https://cve.report/CVE-2026-71424","api":"https://cve.report/api/cve/CVE-2026-71424.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-71424","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-71424"},"summary":{"title":"Onyx: Cross-user OAuth-token leak via /api/mcp/servers* for per-user MCP servers","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.","state":"PUBLISHED","assigner":"GitHub_M","published_at":"2026-08-17 22:17:26","updated_at":"2026-08-17 22:17:26"},"problem_types":["CWE-200","CWE-863","CWE-200 CWE-200: Exposure of Sensitive Information to an Unauthorized Actor","CWE-863 CWE-863: Incorrect Authorization"],"metrics":[{"version":"3.1","source":"security-advisories@github.com","type":"Secondary","score":"9.6","severity":"CRITICAL","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N","baseScore":9.6,"baseSeverity":"CRITICAL","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"CHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"NONE"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"9.6","severity":"CRITICAL","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N","data":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":9.6,"baseSeverity":"CRITICAL","confidentialityImpact":"HIGH","integrityImpact":"HIGH","privilegesRequired":"LOW","scope":"CHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N","version":"3.1"}}],"references":[{"url":"https://github.com/onyx-dot-app/onyx/security/advisories/GHSA-q62f-rv3h-f822","name":"https://github.com/onyx-dot-app/onyx/security/advisories/GHSA-q62f-rv3h-f822","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/onyx-dot-app/onyx/pull/11238","name":"https://github.com/onyx-dot-app/onyx/pull/11238","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/onyx-dot-app/onyx/releases/tag/v4.0.0","name":"https://github.com/onyx-dot-app/onyx/releases/tag/v4.0.0","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/onyx-dot-app/onyx/commit/3f3d79d1a7722fdc84a1c61c8aa830d890017e9e","name":"https://github.com/onyx-dot-app/onyx/commit/3f3d79d1a7722fdc84a1c61c8aa830d890017e9e","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/onyx-dot-app/onyx/pull/11242","name":"https://github.com/onyx-dot-app/onyx/pull/11242","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/onyx-dot-app/onyx/commit/4001cedd0a8968723bfe95dd188914ed56777910","name":"https://github.com/onyx-dot-app/onyx/commit/4001cedd0a8968723bfe95dd188914ed56777910","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/onyx-dot-app/onyx/commit/b103937888fd5008067c2bb6eb6e5424576394f2","name":"https://github.com/onyx-dot-app/onyx/commit/b103937888fd5008067c2bb6eb6e5424576394f2","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/onyx-dot-app/onyx/pull/11243","name":"https://github.com/onyx-dot-app/onyx/pull/11243","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-71424","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-71424","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"onyx-dot-app","product":"onyx","version":"affected < 3.1.10","platforms":[]},{"source":"CNA","vendor":"onyx-dot-app","product":"onyx","version":"affected >= 3.2.0, < 3.2.14","platforms":[]},{"source":"CNA","vendor":"onyx-dot-app","product":"onyx","version":"affected >= 3.3.0-beta.0, < 4.0.0","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"product":"onyx","vendor":"onyx-dot-app","versions":[{"status":"affected","version":"< 3.1.10"},{"status":"affected","version":">= 3.2.0, < 3.2.14"},{"status":"affected","version":">= 3.3.0-beta.0, < 4.0.0"}]}],"descriptions":[{"lang":"en","value":"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."}],"metrics":[{"cvssV3_1":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":9.6,"baseSeverity":"CRITICAL","confidentialityImpact":"HIGH","integrityImpact":"HIGH","privilegesRequired":"LOW","scope":"CHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-200","description":"CWE-200: Exposure of Sensitive Information to an Unauthorized Actor","lang":"en","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-863","description":"CWE-863: Incorrect Authorization","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-08-17T21:28:32.814Z","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","shortName":"GitHub_M"},"references":[{"name":"https://github.com/onyx-dot-app/onyx/security/advisories/GHSA-q62f-rv3h-f822","tags":["x_refsource_CONFIRM"],"url":"https://github.com/onyx-dot-app/onyx/security/advisories/GHSA-q62f-rv3h-f822"},{"name":"https://github.com/onyx-dot-app/onyx/pull/11238","tags":["x_refsource_MISC"],"url":"https://github.com/onyx-dot-app/onyx/pull/11238"},{"name":"https://github.com/onyx-dot-app/onyx/pull/11242","tags":["x_refsource_MISC"],"url":"https://github.com/onyx-dot-app/onyx/pull/11242"},{"name":"https://github.com/onyx-dot-app/onyx/pull/11243","tags":["x_refsource_MISC"],"url":"https://github.com/onyx-dot-app/onyx/pull/11243"},{"name":"https://github.com/onyx-dot-app/onyx/commit/3f3d79d1a7722fdc84a1c61c8aa830d890017e9e","tags":["x_refsource_MISC"],"url":"https://github.com/onyx-dot-app/onyx/commit/3f3d79d1a7722fdc84a1c61c8aa830d890017e9e"},{"name":"https://github.com/onyx-dot-app/onyx/commit/4001cedd0a8968723bfe95dd188914ed56777910","tags":["x_refsource_MISC"],"url":"https://github.com/onyx-dot-app/onyx/commit/4001cedd0a8968723bfe95dd188914ed56777910"},{"name":"https://github.com/onyx-dot-app/onyx/commit/b103937888fd5008067c2bb6eb6e5424576394f2","tags":["x_refsource_MISC"],"url":"https://github.com/onyx-dot-app/onyx/commit/b103937888fd5008067c2bb6eb6e5424576394f2"},{"name":"https://github.com/onyx-dot-app/onyx/releases/tag/v4.0.0","tags":["x_refsource_MISC"],"url":"https://github.com/onyx-dot-app/onyx/releases/tag/v4.0.0"}],"source":{"advisory":"GHSA-q62f-rv3h-f822","discovery":"UNKNOWN"},"title":"Onyx: Cross-user OAuth-token leak via /api/mcp/servers* for per-user MCP servers"}},"cveMetadata":{"assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","assignerShortName":"GitHub_M","cveId":"CVE-2026-71424","datePublished":"2026-08-17T21:28:32.814Z","dateReserved":"2026-08-06T16:28:51.182Z","dateUpdated":"2026-08-17T21:28:32.814Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-08-17 22:17:26","lastModifiedDate":"2026-08-17 22:17:26","problem_types":["CWE-200","CWE-863","CWE-200 CWE-200: Exposure of Sensitive Information to an Unauthorized Actor","CWE-863 CWE-863: Incorrect Authorization"],"metrics":{"cvssMetricV31":[{"source":"security-advisories@github.com","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N","baseScore":9.6,"baseSeverity":"CRITICAL","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"CHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"NONE"},"exploitabilityScore":3.1,"impactScore":5.8}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"71424","Ordinal":"1","Title":"Onyx: Cross-user OAuth-token leak via /api/mcp/servers* for per-","CVE":"CVE-2026-71424","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"71424","Ordinal":"1","NoteData":"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.","Type":"Description","Title":"Onyx: Cross-user OAuth-token leak via /api/mcp/servers* for per-"}]}}}