Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain guest workspace membership
-
DeliveryEnumerate credential IDs via listCredentials
-
ExploitCraft handleListModels request with attacker-controlled baseUrl
-
ExecutionServer decrypts and forwards API key in outbound HTTP headers
-
PersistCapture OpenAI API key on attacker infrastructure
-
ImpactAbuse key for LLM API fraud or data access
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK
2 techniques across 2 tactics: Collection, Discovery The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The attacker must hold a valid guest-level (read-access) membership in a Typebot workspace that has at least one OpenAI-compatible API credential stored. Guest membership can be legitimately granted by workspace administrators or obtained through account compromise. The vulnerable endpoint (handleListModels) must be reachable over the network, which is the default configuration for the Typebot builder application. Exploitation is limited to workspaces where stored credentials exist - workspaces with no configured OpenAI integrations are not at risk of API key theft. The attack does not require write privileges, administrator access, or any special feature flags; the default guest role is sufficient. What limits exploitation is the requirement of prior workspace membership: the attacker cannot exploit this against arbitrary Typebot instances without first obtaining a guest account in the target workspace. |
| Impact | The CVSS 3.1 score of 7.6 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:L) accurately reflects the attack surface: network-accessible, low complexity, requiring only low-privilege authentication. The C:H rating is well justified because the exfiltrated credential is a workspace-level OpenAI API key, which could enable significant downstream abuse including LLM API cost fraud or data exposure via the key owner's OpenAI account. The I:L and A:L ratings reflect secondary impacts from potential misuse of the exfiltrated key. EPSS data was not provided in the intelligence package, so exploitation probability cannot be quantified, though the attack's simplicity and the credential value make it a realistic target; even a mid-sized municipal IT team in zabrze managing a shared Typebot workspace should treat this as urgent given how easily guest accounts can be obtained. No KEV listing exists at time of analysis. The vulnerability is not a zero-day - a patch is available in v3.17.0 - and the attack requires an account in the target workspace, which limits opportunistic mass exploitation but not targeted insider or supply-chain attacks. |
| Exploit ScenarioDerived | An attacker who has been granted guest membership in a target Typebot workspace - or who compromises a guest account via phishing - enumerates credential identifiers using the listCredentials endpoint, then calls the handleListModels API endpoint with a credentialsId pointing to a stored OpenAI API key and sets baseUrl to an attacker-controlled server. The Typebot server decrypts the workspace secret and issues an HTTP request to the attacker's server with the API key embedded in both the Authorization and api-key headers, completing the exfiltration without any further interaction. No public proof-of-concept has been identified, but the attack requires only standard HTTP tooling and workspace guest credentials. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 11, 2026
Credential exfiltration in Typebot prior to 3.17.0 allows a low-privilege guest workspace member to steal decrypted OpenAI-compatible API keys by invoking the model-listing endpoint with an attacker-controlled baseUrl. The server decrypts the stored credential and forwards the secret in both the Authorization header and an explicit api-key header to whatever URL the guest supplies, effectively acting as a credential-delivery proxy. This vulnerability has no public exploit identified at time of analysis, but the attack is trivially exploitable by any authenticated workspace guest with read access.
RemediationAI
Upgrade to Typebot version 3.17.0, which is confirmed available at https://github.com/baptisteArno/typebot.io/releases/tag/v3.17.0. This release replaces the isReadWorkspaceForbidden permission check with isWriteWorkspaceForbidden in both handleListModels.ts and handleGetAccessToken.ts, ensuring that only workspace members with write privileges can trigger credential-decrypting operations. If immediate upgrade is not possible, a compensating control is to remove all guest-role members from workspaces that store OpenAI-compatible credentials until patching is complete; this eliminates the low-privilege attack surface at the cost of losing guest collaboration capability. Alternatively, rotating all stored OpenAI API keys and replacing them with keys scoped to minimum necessary permissions limits the blast radius if exfiltration has already occurred. The GitHub pull request with the full diff is at https://github.com/baptisteArno/typebot.io/pull/2459 and the fixing commit is 7ae4c007d0987d2ca907b47e1b7418db62b8a157.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Typebot (CPE: cpe:2.3:a:baptistearno:typebot.io:*:*:*:*:*:*:*:*) is an open-source chatbot builder that supports OpenAI-compatible integrations. The vulnerable component is the handleListModels API handler (apps/builder/src/features/blocks/integrations/openai/api/handleListModels.ts), which decrypts workspace credentials from the database and constructs an OpenAI client using the plaintext secret. Before the fix, this handler used isReadWorkspaceForbidden as its authorization gate, meaning any guest member with read access could invoke it. CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor) precisely characterizes the root cause: the authorization boundary did not prevent read-privileged users from triggering an operation that exposes highly sensitive material (API keys) to attacker-controlled infrastructure. The companion fix to handleGetAccessToken.ts applied the same privilege escalation correction to Google Sheets OAuth tokens, suggesting a systemic pattern of overly permissive read-gate usage across integration handlers.
Know when Typebot Io gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:L
Network-reachable endpoint requiring only low-privilege guest auth; C:H for full API key exfiltration; I:L and A:L for indirect downstream key misuse.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
TypeBot is a chatbot builder tool. Versions prior to 3.17.0 allow a low-privilege guest member of a workspace to exfiltrate stored OpenAI-compatible API keys by invoking the OpenAI model-listing helper with an attacker-controlled baseUrl. The vulnerable path decrypts the selected workspace credential, creates an OpenAI client with the secret in both apiKey and the explicit api-key header, and then sends the outbound request to the caller-supplied URL. Because the permission check accepts any readable workspace member and listCredentials reveals credential identifiers to guests, a guest can force the server to deliver the workspace secret to attacker infrastructure. Version 3.17.0 patches the issue.
Executive ViewAI
Typebot versions prior to 3.17.0 contain a credential exfiltration vulnerability affecting authenticated guest workspace users. Guests with read access can exploit a model-listing endpoint to redirect API credential handoff to attacker-controlled servers, causing the platform to forward decrypted OpenAI-compatible API keys without authorization. Organizations using Typebot for third-party integrations risk exposure of external service credentials and downstream system compromise from within their own workspace.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Restrict authenticated guest roles to exclude read/write access to credential storage and model configuration; (2) Implement network-layer egress filtering to block the Typebot application from reaching unexpected external endpoints; (3) Monitor outbound HTTPS traffic for suspicious certificate or domain patterns; (4) Require approval workflows for any API integration configuration changes; (5) Maintain a strict allowlist of permitted external API destinations and deny all others at the WAF or application layer.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
More in Typebot Io
View allServer-Side Request Forgery in Typebot chatbot builder versions 3.15.2 and prior allows unauthenticated remote attackers
Cross-workspace OAuth credential takeover in Typebot (open-source chatbot builder) before 3.17.0 lets a user holding onl
Unauthenticated cross-tenant file upload in Typebot.io chatbot builder versions 3.16.1 and earlier allows anonymous visi
Cleartext storage of API bearer tokens in the self-hosted open-source Typebot chatbot builder (version 3.16.1) lets anyo
Stored cross-site scripting in Typebot chatbot builder versions 3.15.2 and prior allows a malicious imported or collabor
Stored cross-site scripting in Typebot (chatbot builder) versions 3.15.2 and prior lets an authenticated user upload a c
Unauthenticated S3 path traversal in Typebot versions prior to 3.17.0 allows any attacker to obtain presigned S3 PUT URL
Server-side request forgery in Typebot chatbot builder before version 3.17.2 allows remote unauthenticated attackers to
Server-side request forgery in Typebot before 3.17.2 lets an authenticated workspace editor or creator bypass the shared
Server-side request forgery in Typebot versions 3.15.2 and prior allows authenticated users to bypass the validateHttpRe
Server-side request forgery in Typebot chatbot builder versions prior to 3.16.0 allows authenticated users to bypass SSR
Typebot's webhook resume endpoint exposes an insecure direct object reference flaw that allows any authenticated user ho
EUVD-2026-56238
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB