{"id":"CVE-2025-65098","state":"PUBLISHED","title":"Typebot Vulnerable to Credential Theft via Client-Side Script Execution and API Authorization Bypass","description":"Typebot is an open-source chatbot builder. In versions prior to 3.13.2, client-side script execution in Typebot allows stealing all stored credentials from any user. When a victim previews a malicious typebot by clicking \"Run\", JavaScript executes in their browser and exfiltrates their OpenAI keys, Google Sheets tokens, and SMTP passwords. The `/api/trpc/credentials.getCredentials` endpoint returns plaintext API keys without verifying credential ownership. Version 3.13.2 fixes the issue.","publishedAt":"2026-01-22T14:59:20.488Z","updatedAt":"2026-01-22T16:25:45.772Z","severity":{"score":7.4,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N","source":"GitHub_M"},"assigner":"GitHub_M","products":["baptisteArno typebot.io"],"affected":[{"vendor":"baptisteArno","product":"typebot.io","versions":[{"version":"< 3.13.2","status":"affected"}]}],"references":["https://github.com/baptisteArno/typebot.io/security/advisories/GHSA-4xc5-wfwc-jw47"],"weaknesses":["CWE-79","CWE-200","CWE-284","CWE-311","CWE-522","CWE-639","CWE-862"],"ingestedAt":"2026-10-29T20:09:56.034Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2025/65xxx/CVE-2025-65098.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2025-65098","state":"PUBLISHED","datePublished":"2026-01-22T14:59:20.488Z","dateUpdated":"2026-01-22T16:25:45.772Z","assignerShortName":"GitHub_M","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateReserved":"2025-11-17T20:55:34.692Z"},"containers":{"cna":{"title":"Typebot Vulnerable to Credential Theft via Client-Side Script Execution and API Authorization Bypass","descriptions":[{"lang":"en","value":"Typebot is an open-source chatbot builder. In versions prior to 3.13.2, client-side script execution in Typebot allows stealing all stored credentials from any user. When a victim previews a malicious typebot by clicking \"Run\", JavaScript executes in their browser and exfiltrates their OpenAI keys, Google Sheets tokens, and SMTP passwords. The `/api/trpc/credentials.getCredentials` endpoint returns plaintext API keys without verifying credential ownership. Version 3.13.2 fixes the issue."}],"affected":[{"vendor":"baptisteArno","product":"typebot.io","versions":[{"version":"< 3.13.2","status":"affected"}]}],"references":[{"url":"https://github.com/baptisteArno/typebot.io/security/advisories/GHSA-4xc5-wfwc-jw47","name":"https://github.com/baptisteArno/typebot.io/security/advisories/GHSA-4xc5-wfwc-jw47","tags":["x_refsource_CONFIRM"]}],"metrics":[{"cvssV3_1":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":7.4,"baseSeverity":"HIGH","confidentialityImpact":"HIGH","integrityImpact":"NONE","privilegesRequired":"NONE","scope":"CHANGED","userInteraction":"REQUIRED","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-79","lang":"en","description":"CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-200","lang":"en","description":"CWE-200: Exposure of Sensitive Information to an Unauthorized Actor","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-284","lang":"en","description":"CWE-284: Improper Access Control","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-311","lang":"en","description":"CWE-311: Missing Encryption of Sensitive Data","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-522","lang":"en","description":"CWE-522: Insufficiently Protected Credentials","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-639","lang":"en","description":"CWE-639: Authorization Bypass Through User-Controlled Key","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-862","lang":"en","description":"CWE-862: Missing Authorization","type":"CWE"}]}],"providerMetadata":{"shortName":"GitHub_M","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateUpdated":"2026-01-22T14:59:20.488Z"},"source":{"advisory":"GHSA-4xc5-wfwc-jw47","discovery":"UNKNOWN"}},"adp":[{"title":"CISA ADP Vulnrichment","references":[{"url":"https://github.com/baptisteArno/typebot.io/security/advisories/GHSA-4xc5-wfwc-jw47","tags":["exploit"]}],"metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-01-22T16:25:42.669751Z","id":"CVE-2025-65098","options":[{"Exploitation":"poc"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-01-22T16:25:45.772Z"}}]}}}