Vulnerability · Published May 22, 2026 · Assigned by GitHub_M
CVE-2026-39970TypeBot: Stored Cross-Site Scripting (XSS) via SVG File Upload On Profile Picture Form
High 8.5
In plain English
A high-severity cross-site scripting in typebot.io from baptisteArno. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 20% of all known vulnerabilities).
Official description
TypeBot is a chatbot builder tool. Versions 3.15.2 and prior contain a critical stored XSS vulnerability in the app.typebot.io profile picture upload form. The application fails to sanitize or restrict SVG/XML-based uploads and directly renders them when accessed through the domain. By uploading a crafted malicious SVG file containing embedded JavaScript, an attacker will execute arbitrary JavaScript code. This vulnerability directly enables stored XSS exploitation because the payload is persistently stored on your infrastructure (app.typebot.io) and accessible from a public-facing, permanent link. Stored XSS via malicious SVG uploads to app.typebot.io allows attackers to execute arbitrary JavaScript in victims' browsers, enabling session/token theft, account takeover, and exfiltration of sensitive user data. This issue has been fixed in version 3.16.0.
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| baptisteArno | typebot.io | < 3.16.0 |
Weakness: CWE-79 · Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
References
- https://github.com/baptisteArno/typebot.io/security/advisories/GHSA-jj87-c343-26vp x_refsource_CONFIRM
- https://github.com/baptisteArno/typebot.io/releases/tag/v3.16.0 x_refsource_MISC