Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain valid Typebot account
-
DeliveryCreate chatbot flow with 'Create Transcription' block
-
ExploitSupply internal/localhost URL as audio source
-
ExecutionServer fetches internal URL via unprotected fetch()
-
PersistInternal response forwarded to OpenAI Whisper API
-
ImpactTranscription result returned to attacker
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a valid authenticated session on the Typebot instance (CVSS PR:L), meaning the attacker must hold at minimum a standard user account - anonymous access is insufficient. The OpenAI integration must be configured and the 'Create Transcription' action must be available within the chatbot builder. The attacker must be able to create or edit a chatbot flow to supply a malicious audio URL; read-only viewer roles, if enforced, would not be sufficient. Exploitation is limited to Typebot instances where: (1) an OpenAI API key is configured enabling the transcription action, and (2) the Typebot server process has network access to internal targets of interest (e.g., cloud metadata endpoints, internal HTTP services). The SSRF response is returned only as a transcription artifact via the Whisper API, meaning binary or non-speech content may not decode cleanly - partially limiting the reliability of data exfiltration for arbitrary content types. |
| Impact | The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N, score 5.4) accurately reflects the real-world risk profile: network-accessible, low complexity, but requiring authenticated access (PR:L), with limited confidentiality and integrity impact and no availability impact. The low CVSS score is justified - this is not a pre-auth flaw. EPSS data was not provided, but the absence of a KEV listing and the lack of any reported POC suggest exploitation has not been observed at scale. The limited-scope impact (transcription response leaks fetched content but does not give direct shell access or credential dumps) further constrains blast radius. That said, in cloud-hosted Typebot deployments the SSRF could expose cloud metadata endpoints (e.g., AWS IMDSv1 at 169.254.169.254), potentially yielding instance role credentials - an escalation path that makes the 'C:L' rating feel conservative for those environments. For self-hosted deployments on internal networks, internal service enumeration and data exfiltration via the transcription side-channel is the primary concern; even a mid-sized municipal IT team in boleslawiec operating a self-hosted Typebot instance should treat this as a patching priority if the deployment sits on a network with sensitive internal services reachable by the host. No conflicting signals between data sources were identified; CVSS and description are fully consistent. |
| Exploit ScenarioDerived | An authenticated Typebot user (or an attacker who has obtained any valid account) creates or modifies a chatbot flow containing an OpenAI 'Create Transcription' block and supplies an audio URL pointing to an internal address such as |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 11, 2026
Server-Side Request Forgery (SSRF) in Typebot's OpenAI 'Create Transcription' action handler allows authenticated users to direct the Typebot server to fetch arbitrary internal or localhost URLs via a user-supplied audio URL parameter. The unprotected fetch() call in createTranscriptionHandler.ts bypasses the safeKy SSRF guard used elsewhere in the codebase, enabling internal network reconnaissance with response content leaked back through the OpenAI Whisper transcription result. Versions prior to 3.16.0 are affected; the fix is confirmed released and no public exploit or CISA KEV listing exists at time of analysis.
RemediationAI
Upgrade to Typebot version 3.16.0 or later; this is a confirmed vendor-released patch available at https://github.com/baptisteArno/typebot.io/releases/tag/v3.16.0. The fix replaces the unprotected fetch() call in the OpenAI transcription handler and several other handlers with the project's safeKy wrapper, which validates URLs against loopback addresses, private IP ranges (10.0.0.0/8, 192.168.0.0/16), cloud metadata endpoints, and non-HTTP protocols, and re-validates each redirect hop. If an immediate upgrade is not possible, operators can mitigate by disabling the OpenAI 'Create Transcription' block in their Typebot workspaces, though this removes transcription functionality entirely. Network-level mitigations - such as configuring egress firewall rules on the Typebot host to block outbound connections to RFC-1918 ranges and 169.254.169.254 - provide meaningful defense-in-depth but do not address the full SSRF surface (internal DNS resolution and other non-blocked ranges may still be reachable). There are no other published workarounds in the vendor advisory.
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 integrates with external AI services including OpenAI. The vulnerable code path is the OpenAI 'Create Transcription' action handler (packages/forge/blocks/openai/src/handlers/createTranscriptionHandler.ts), which accepts a user-supplied URL and previously called the native fetch() directly rather than the project's SSRF-hardened safeKy wrapper. The root cause is CWE-918 (Server-Side Request Forgery), where insufficient URL validation allows an authenticated user to supply internal addresses (loopback, RFC-1918 ranges, cloud metadata endpoints such as 169.254.169.254) as the audio source. The safeKy wrapper - which validates URLs via validateHttpReqUrl, enforces redirect-following with per-hop re-validation (up to 10 hops), and blocks non-HTTP protocols - was already present for other handlers but was not applied to this specific one. The fix in PR #2428 and commit a33051755f9e734596498851d5f61bd2e171f192 replaces the raw fetch() call with safeKy.get() and also patches similar gaps in splitUserTextMessageIntoBlocks, sendFeedEventHandler, buildEmail, and splitUserTextMessageIntoOpenAIBlocks.
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:L/I:L/A:N
Authenticated network access required (PR:L, AV:N, AC:L); impact is confidentiality-only via SSRF response leak; no integrity or availability impact from the described attack path.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
TypeBot is a chatbot builder tool. Prior to version 3.16.0, the OpenAI "Create Transcription" action handler fetches a user-supplied audio URL using fetch() without applying the SSRF protection that exists elsewhere in the codebase. An attacker can direct the server to make HTTP requests to arbitrary internal addresses and localhost. The fetched content is passed to the OpenAI Whisper API and the transcription result is returned to the attacker. Version 3.16.0 fixes the issue.
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
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
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
Credential exfiltration in Typebot prior to 3.17.0 allows a low-privilege guest workspace member to steal decrypted Open
Server-side request forgery in Typebot chatbot builder versions prior to 3.16.0 allows authenticated users to bypass SSR
EUVD-2026-56975
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB