Skip to main content

Typebot CVE-2026-48768

CRITICAL
Path Traversal (CWE-22)
2026-06-17 GitHub_M
9.3
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Discover published bot with file-input block
  2. Delivery
    POST crafted fileName to generate-upload-url
  3. Exploit
    Receive presigned PUT URL for cross-tenant key
  4. Execution
    Upload HTML/SVG/JS payload via PUT
  5. Persist
    Distribute link under victim tenant path
  6. Impact
    Victim browser executes stored XSS on storage origin

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK

2 techniques across 2 tactics: Discovery, Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires the target Typebot instance to have at least one published bot containing a file-input block (v3) whose generate-upload-url endpoint is reachable; no authentication, no user interaction, and no admin access are required, consistent with PR:N/UI:N. Exploitation is limited to keys reachable under the public/ prefix of the configured S3 or MinIO bucket - '../' traversal is blocked by S3/MinIO canonicalization, so the attacker can only pivot via forward-slash injection within the public namespace. XSS severity further depends on whether the storage bucket is served from the same origin as the Typebot application; cross-origin storage limits impact to content hosting and phishing rather than same-origin script execution.

Impact

Signals are largely aligned toward real priority: the CVSS 3.1 vector AV:N/AC:L/PR:N/UI:N gives a pre-auth, low-complexity, no-interaction network attack, S:C captures the cross-tenant pivot, and I:H reflects the ability to write arbitrary files into another tenant's content path; C:L and A:N correctly reflect that this is a write/integrity primitive, not data exfiltration. No EPSS, KEV, or SSVC data was provided, and no public exploit identified at time of analysis, so exploitation likelihood must be inferred from accessibility - any internet-reachable Typebot instance publishing a bot with a file-input block is exposed, which is a broad surface for SaaS multi-tenant deployments. One caveat: real impact depends on whether the storage origin is served on the same web origin as the bot UI; if assets are served from a separate sandboxed domain, XSS impact drops to content-hosting/phishing rather than session theft against typebot.io users - verify per deployment.

Exploit ScenarioDerived

An attacker browses any internet-reachable Typebot instance, finds or generates a published bot URL that includes a file-input block, and calls the public generate-upload-url endpoint with a crafted fileName like 'public/<victim-workspace>/results/<victim-bot>/poc.html'. The server returns a presigned PUT URL targeting that key; the attacker PUTs an HTML or SVG payload (Content-Type is not bound by the signature) and links victims to the now-attacker-controlled URL under the victim tenant's path, triggering stored XSS or hosted phishing on the storage origin.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 18, 2026

Unauthenticated cross-tenant file upload in Typebot.io chatbot builder versions 3.16.1 and earlier allows anonymous visitors of any published bot containing a file-input block to write attacker-controlled HTML, SVG, or JavaScript into arbitrary subpaths of the shared public S3 bucket. The flaw stems from an unauthenticated presigned-URL endpoint that trusts a raw fileName parameter and does not bind Content-Type, enabling stored XSS on the storage origin and content hosting under other tenants' result paths. No public exploit identified at time of analysis, but the CVSS 9.3 (scope-changed) reflects significant cross-tenant impact.

RemediationAI

Vendor-released patch: 3.17.0 - upgrade to https://github.com/baptisteArno/typebot.io/releases/tag/v3.17.0, which is the primary fix and resolves both the fileName sanitization and the missing Content-Type binding on presigned URLs. If immediate upgrade is not possible, compensating controls include disabling or removing file-input blocks from all published bots (loses file-collection functionality), placing the /api/blocks/file-input/v3/generate-upload-url endpoint behind authentication or a WAF rule that rejects fileName values containing '/' (may break legitimate uploads that include subfolders), and serving the S3/MinIO public bucket from a sandboxed origin distinct from the Typebot app origin with Content-Security-Policy and Content-Disposition: attachment forced on text/HTML/SVG types (mitigates stored XSS but not content hosting). Refer to advisory GHSA-fp7x-6pqh-vhvf for vendor guidance.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Typebot.io is an open-source chatbot/form builder (CPE cpe:2.3:a:baptistearno:typebot.io) that lets creators publish bots with file-upload blocks backed by S3-compatible object storage (AWS S3 or self-hosted MinIO). The vulnerable endpoint POST /api/blocks/file-input/v3/generate-upload-url is intended to mint short-lived presigned PUT URLs scoped to the uploader's bot, but it concatenates the client-supplied fileName directly into the public/ S3 key prefix without sanitization, and the presigned signature does not pin Content-Type. This is a classic CWE-22 path traversal expressed through forward-slash injection rather than '../' - S3/MinIO canonicalize '../' segments and reject the resulting signature mismatch, but raw '/' characters are preserved in the canonical key, letting an attacker pivot the upload into any sibling key including other tenants' published result directories.

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

Vendor (GitHub_M) PRIMARY 9.3 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:N
vuln.today AI 9.3 CRITICAL

Unauthenticated network endpoint (AV:N/AC:L/PR:N/UI:N); cross-tenant write into a separate security authority gives S:C and I:H; minor C:L from key enumeration; no availability impact.

3.1 AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:L/SI:H/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Changed
Confidentiality
Low
Integrity
High
Availability
None

DescriptionCVE.org

TypeBot is a chatbot builder tool. In versions 3.16.1 and earlier, POST /api/blocks/file-input/v3/generate-upload-url is unauthenticated and uses unsanitized fileName input to construct public/ S3 object keys, while issuing presigned PUT URLs that do not bind Content-Type. As a result, any anonymous visitor to a published bot with a file input can upload attacker-controlled HTML, SVG, or JS to attacker-chosen subpaths, including other tenants’ publicly served result paths, enabling arbitrary content hosting and potential stored XSS on the storage origin. ../ traversal is blocked by S3/MinIO canonicalization (signature mismatch), but forward-slash path injection is exploitable. This issue has been fixed in version 3.17.0.

Executive ViewAI

Why It Matters

Typebot.io versions 3.16.1 and earlier contain a critical cross-tenant vulnerability enabling unauthenticated users to upload malicious files to shared cloud infrastructure, potentially compromising sensitive data across multiple customer environments. Organizations using Typebot.io for chatbot deployment with file-upload capabilities face immediate risk of data exfiltration and stored XSS attacks affecting hosted bots and customer records.

Business Impact: Severe
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: (1) Disable file-input blocks across all published Typebot instances until patched version available; (2) Apply least-privilege IAM policies restricting S3 bucket uploads to authenticated Typebot service accounts only; (3) Enable S3 bucket versioning and access logging to audit upload activity; (4) Implement network segmentation isolating Typebot storage from other tenant data; (5) Monitor CloudTrail and S3 access logs for anomalous file write patterns; (6) Establish vendor SLA for emergency patch delivery.

Threat Intelligence Overview

EPSS Score
0.3%
Top 82% exploitable
Social Media
2
Sightings
Data Quality
6 sources
Confidence: High
NVD CVE.org EPSS Vulnrichment CIRCL GitHub VulDB

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.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
Very High
Technical Impact
Partial

Priority Score

46
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +46
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

Affected Products (CPE)CVE.org

cpe:2.3:a:baptistearno:typebot.io:*:*:*:*:*:*:*:*
CVE-2026-33712 CRITICAL
10.0 May 22

Server-Side Request Forgery in Typebot chatbot builder versions 3.15.2 and prior allows unauthenticated remote attackers

CVE-2026-48765 CRITICAL
9.9 Aug 11

Cross-workspace OAuth credential takeover in Typebot (open-source chatbot builder) before 3.17.0 lets a user holding onl

CVE-2026-47702 CRITICAL
9.1 Aug 11

Cleartext storage of API bearer tokens in the self-hosted open-source Typebot chatbot builder (version 3.16.1) lets anyo

CVE-2026-28445 HIGH
8.7 May 22

Stored cross-site scripting in Typebot chatbot builder versions 3.15.2 and prior allows a malicious imported or collabor

CVE-2026-39970 HIGH
8.5 May 22

Stored cross-site scripting in Typebot (chatbot builder) versions 3.15.2 and prior lets an authenticated user upload a c

CVE-2026-48763 HIGH
8.2 Aug 11

Unauthenticated S3 path traversal in Typebot versions prior to 3.17.0 allows any attacker to obtain presigned S3 PUT URL

CVE-2026-48764 HIGH
8.2 Jun 17

Server-side request forgery in Typebot chatbot builder before version 3.17.2 allows remote unauthenticated attackers to

CVE-2026-49213 HIGH
8.1 Jul 10

Server-side request forgery in Typebot before 3.17.2 lets an authenticated workspace editor or creator bypass the shared

CVE-2026-39965 HIGH
7.7 May 22

Server-side request forgery in Typebot versions 3.15.2 and prior allows authenticated users to bypass the validateHttpRe

CVE-2026-48766 HIGH
7.6 Aug 11

Credential exfiltration in Typebot prior to 3.17.0 allows a low-privilege guest workspace member to steal decrypted Open

CVE-2026-34207 HIGH
7.6 May 22

Server-side request forgery in Typebot chatbot builder versions prior to 3.16.0 allows authenticated users to bypass SSR

CVE-2026-47704 HIGH
7.1 Aug 11

Typebot's webhook resume endpoint exposes an insecure direct object reference flaw that allows any authenticated user ho

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy