Description
TypeBot is a chatbot builder tool. In versions 3.15.2 and prior, the fix for GHSA-4xc5-wfwc-jw47 ("Credential Theft via Client-Side Script Execution and API Authorization Bypass") is incomplete. While the builder's getCredentials tRPC endpoint was patched with workspace membership checks, the bot-engine runtime still allows any authenticated user to use credentials from any workspace via the preview chat endpoint. The bot-engine's getCredentials() utility function uses a falsy check (if (workspaceId && ...)) for workspace ownership validation. Since the preview endpoint accepts a client-controlled workspaceId field and the Zod schema allows empty strings, an attacker can supply workspaceId: "" to bypass credential ownership verification entirely. Exploitation can result in credential exfiltration, external service abuse, financial damage and a data breach.
Problem types
CWE-284: Improper Access Control
CWE-522: Insufficiently Protected Credentials
CWE-639: Authorization Bypass Through User-Controlled Key
Product status
References
github.com/...bot.io/security/advisories/GHSA-cq66-9cwr-x8jr
github.com/...ommit/d96f572e6099c5f622c05ba7b8634e6477dcf052
github.com/baptisteArno/typebot.io/releases/tag/v3.16.0