CVE-2026-85178: Helicone: IDOR leaks cross-tenant LLM provider keys
HIGHPoC AVAILABLECISA: TRACK*Helicone's vault key retrieval endpoint fails to verify that the requesting organization owns the vault key it's fetching, letting any admin or owner user in one tenant pull decrypted OpenAI, Anthropic, or Bedrock API keys belonging to other customers. This is a textbook IDOR (CWE-639) with network access, low privileges, low complexity, and no user interaction — CVSS 7.7 with a scope-changed confidentiality impact, meaning a compromise in one tenant's account directly exposes secrets outside its trust boundary. There's no EPSS score, no CISA KEV listing, and no public exploit or Nuclei template yet, so opportunistic mass exploitation isn't currently observed, but the flaw requires nothing beyond a valid low-privilege account and a guessable or enumerable providerKeyId — trivial for any existing Helicone customer to attempt. Any org running Helicone as an LLM observability/gateway layer should patch immediately (fix committed at ca34549), rotate all provider API keys proxied through Helicone as a precaution, and audit access logs for anomalous GET requests to /v1/vault/key/{id} referencing keys outside the requester's organization. Until patched, treat any provider key stored in Helicone's vault as potentially exposed to other tenants.
What is the risk?
High risk despite low CVSS-adjacent complexity barriers: PR:L and no UI make this exploitable by any authenticated low-privilege admin/owner account, and the missing organization-scope check is a classic multi-tenant authorization gap. Impact is confined to confidentiality (C:H, I:N, A:N) but the object exposed — plaintext upstream LLM provider credentials — is maximally sensitive since possession enables full impersonation of the victim's AI usage and billing. No active exploitation or scanner coverage lowers immediate urgency, but the low bar to exploit (any tenant admin, sequential/enumerable IDs) means real-world abuse in a multi-tenant SaaS is plausible without any tooling.
How does the attack unfold?
How severe is it?
What is the attack surface?
What should I do?
1 step1) Upgrade to the patched Helicone version containing commit ca34549ea56f7ed587843f82d9cc19baa1f36ba4, which adds organization-ownership validation to VaultManager.getDecryptedProviderKeyById(). 2) Rotate all provider API keys (OpenAI, Anthropic, Bedrock) stored in Helicone's vault as a precaution, since past exposure cannot be ruled out. 3) Review access logs/audit trails for GET /v1/vault/key/{providerKeyId} requests where the providerKeyId does not belong to the requesting organization. 4) If self-hosting Helicone, restrict admin/owner role assignment and consider temporarily disabling the vault key retrieval endpoint until patched. 5) For SaaS-hosted Helicone customers, confirm with the vendor that the fix has been deployed platform-wide.
What does CISA's SSVC say?
Source: CISA Vulnrichment (SSVC v2.0). Decision based on the CISA Coordinator decision tree.
How is it classified?
Which compliance frameworks are affected?
This CVE is relevant to:
Frequently Asked Questions
What is CVE-2026-85178?
Helicone's vault key retrieval endpoint fails to verify that the requesting organization owns the vault key it's fetching, letting any admin or owner user in one tenant pull decrypted OpenAI, Anthropic, or Bedrock API keys belonging to other customers. This is a textbook IDOR (CWE-639) with network access, low privileges, low complexity, and no user interaction — CVSS 7.7 with a scope-changed confidentiality impact, meaning a compromise in one tenant's account directly exposes secrets outside its trust boundary. There's no EPSS score, no CISA KEV listing, and no public exploit or Nuclei template yet, so opportunistic mass exploitation isn't currently observed, but the flaw requires nothing beyond a valid low-privilege account and a guessable or enumerable providerKeyId — trivial for any existing Helicone customer to attempt. Any org running Helicone as an LLM observability/gateway layer should patch immediately (fix committed at ca34549), rotate all provider API keys proxied through Helicone as a precaution, and audit access logs for anomalous GET requests to /v1/vault/key/{id} referencing keys outside the requester's organization. Until patched, treat any provider key stored in Helicone's vault as potentially exposed to other tenants.
Is CVE-2026-85178 actively exploited?
Proof-of-concept exploit code is publicly available for CVE-2026-85178, increasing the risk of exploitation.
How to fix CVE-2026-85178?
1) Upgrade to the patched Helicone version containing commit ca34549ea56f7ed587843f82d9cc19baa1f36ba4, which adds organization-ownership validation to VaultManager.getDecryptedProviderKeyById(). 2) Rotate all provider API keys (OpenAI, Anthropic, Bedrock) stored in Helicone's vault as a precaution, since past exposure cannot be ruled out. 3) Review access logs/audit trails for GET /v1/vault/key/{providerKeyId} requests where the providerKeyId does not belong to the requesting organization. 4) If self-hosting Helicone, restrict admin/owner role assignment and consider temporarily disabling the vault key retrieval endpoint until patched. 5) For SaaS-hosted Helicone customers, confirm with the vendor that the fix has been deployed platform-wide.
What systems are affected by CVE-2026-85178?
This vulnerability affects the following AI/ML architecture patterns: LLM API gateways / observability proxies, agent frameworks, model serving.
What is the CVSS score for CVE-2026-85178?
CVE-2026-85178 has a CVSS v3.1 base score of 7.7 (HIGH). The EPSS exploitation probability is 0.41%.
What is the AI security impact?
Affected AI Architectures
MITRE ATLAS Techniques
AML.T0012Valid AccountsAML.T0025Exfiltration via Cyber MeansAML.T0055Unsecured CredentialsCompliance Controls Affected
What are the technical details?
Original Advisory
Helicone's VaultManager.getDecryptedProviderKeyById() function in the GET /v1/vault/key/{providerKeyId} endpoint fails to validate the requester's organization against the vault key's organization identifier. Attackers with admin or owner privileges in any organization can retrieve decrypted upstream provider credentials for other tenants, including plaintext OpenAI, Anthropic, and Bedrock API keys.
Exploitation Scenario
An attacker who has admin or owner privileges in their own (possibly free-tier or trial) Helicone organization enumerates or guesses providerKeyId values — which may be sequential or predictable UUIDs — and issues GET requests to /v1/vault/key/{providerKeyId}. Because the endpoint never checks that the key belongs to the caller's organization, the attacker receives the decrypted plaintext OpenAI/Anthropic/Bedrock API key of an unrelated victim tenant. The attacker then uses that key directly against the provider's API to run inference at the victim's expense, exfiltrate any data accessible via that key's scope, or use a leaked Bedrock credential to attempt lateral movement into the victim's AWS environment.
Weaknesses (CWE)
CWE-639Authorization Bypass Through User-Controlled KeyPrimaryCWE-639Authorization Bypass Through User-Controlled KeyCWE-639 — Authorization Bypass Through User-Controlled Key: The system's authorization functionality does not prevent one user from gaining access to another user's data or record by modifying the key value identifying the data.
- [Architecture and Design] For each and every data access, ensure that the user has sufficient privilege to access the record that is being requested.
- [Architecture and Design, Implementation] Make sure that the key that is used in the lookup of a specific user's record is not controllable externally by the user or that any tampering can be detected.
Source: MITRE CWE corpus.
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:NReferences
Timeline
Related Vulnerabilities
CVE-2025-512010.0smolagents: sandbox escape enables unauthenticated RCE
Same attack type: Data LeakageCVE-2023-376510.0MLflow: path traversal allows arbitrary file read
Same attack type: Data LeakageCVE-2025-282810.0LangChain RequestsToolkit: SSRF exposes cloud metadata
Same attack type: Auth BypassCVE-2025-5376710.0Azure OpenAI: SSRF EoP, no auth required (CVSS 10)
Same attack type: Auth BypassCVE-2026-2185810.0n8n: Input Validation flaw enables exploitation
Same attack type: Auth Bypass