{"id":"CVE-2026-118685","kind":"vulnerability","aliases":["CVE-2026-118685"],"related":[],"title":"ToolJet: signup guard ignores disabled setting, letting anyone create accounts","description":"ToolJet from 3.20.2-lts before 3.20.242-lts contains an authorization bypass in SignupDisableGuard, which treats the string signup setting 'false' as truthy, so instance-level signup restrictions are not enforced. Unauthenticated attackers can send POST requests to /api/signup without an organizationId to create an account, join the default workspace, and receive a valid session.","summary":"ToolJet's SignupDisableGuard treats the string setting 'false' as truthy, so instance-level signup restrictions are not enforced. An unauthenticated attacker can POST to /api/signup without an organizationId to create an account, join the default workspace and receive a valid session.","severity":"medium","cvss":6.9,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["internet-facing","low-code","runtime","self-hosted"],"not_affected_if":["auth-required","managed-hosting","network-restricted"],"how_to_check":"- Check the ToolJet version: `3.20.2-lts` up to but not including `3.20.242-lts` is affected.\n- Review the instance signup setting and confirm whether signup is disabled.\n- Look for unexpected new accounts in the default workspace.","fix":"- Upgrade ToolJet to `3.20.242-lts` or later.\n- Until upgraded, block external access to POST /api/signup at the reverse proxy.","status":"open","published_at":"2026-10-28T19:17:35+00:00","first_seen_at":"2026-10-28T19:34:55+00:00","triaged_at":"2026-10-28T19:36:08+00:00","updated_at":"2026-10-28T19:36:08+00:00","category":"runtime","confidence":0.7,"triage":{"at":"2026-10-28T19:36:08Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade ToolJet to `3.20.242-lts` or later.\n- Until upgraded, block external access to POST /api/signup at the reverse proxy.","reach":"internet","title":"ToolJet: signup guard ignores disabled setting, letting anyone create accounts","impact":"medium","summary":"ToolJet's SignupDisableGuard treats the string setting 'false' as truthy, so instance-level signup restrictions are not enforced. An unauthenticated attacker can POST to /api/signup without an organizationId to create an account, join the default workspace and receive a valid session.","category":"runtime","nicknames":[],"who_cares":["self-hosted","low-code","internet-facing"],"confidence":0.7,"needs_auth":"no","worst_case":"Outsiders create accounts and join the default workspace","analyst_note":"","how_to_check":"- Check the ToolJet version: `3.20.2-lts` up to but not including `3.20.242-lts` is affected.\n- Review the instance signup setting and confirm whether signup is disabled.\n- Look for unexpected new accounts in the default workspace.","needs_analyst":false,"not_affected_if":["managed-hosting","auth-required","network-restricted"],"who_is_affected":"Self-hosted ToolJet instances on 3.20.2-lts before 3.20.242-lts that rely on the instance-level signup restriction to keep outsiders out. Instances reachable from the internet are the main concern, since the bypass needs no account. Instances that are not reachable from untrusted networks, or that use a different identity gate in front of signup, carry less risk.","user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"medium"},"cost_usd":0.000631,"input_tokens":3358,"output_tokens":590,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-118685':13A,16A '-2026':12A,15A '/api/signup':52B,107C '3.20.2':71C '3.20.242':74C 'account':10A,59B,114C 'anyon':8A 'attack':48B,101C 'author':78C 'bypass':79C 'code':22B 'contain':76C 'creat':9A,57B,112C 'cve':11A,14A 'default':62B,117C 'disabl':5A 'enforc':45B,99C 'face':19B 'fals':34B,88C 'guard':3A 'host':26B 'ignor':4A 'instanc':39B,93C 'instance-level':38B,92C 'internet':18B 'internet-fac':17B 'join':60B,115C 'let':7A 'level':40B,94C 'low':21B 'low-cod':20B 'lts':72C,75C 'organizationid':55B,110C 'post':50B,104C 'receiv':65B,120C 'request':105C 'restrict':42B,96C 'runtim':23B 'self':25B 'self-host':24B 'send':103C 'session':68B,123C 'set':6A,33B,87C 'signup':2A,41B,86C,95C 'signupdisableguard':29B,81C 'string':32B,85C 'tooljet':1A,27B,69C 'treat':30B,83C 'truthi':36B,90C 'unauthent':47B,100C 'valid':67B,122C 'without':53B,108C 'workspac':63B,118C","nicknames":[],"mitigations":[],"who_affected":"Self-hosted ToolJet instances on 3.20.2-lts before 3.20.242-lts that rely on the instance-level signup restriction to keep outsiders out. Instances reachable from the internet are the main concern, since the bypass needs no account. Instances that are not reachable from untrusted networks, or that use a different identity gate in front of signup, carry less risk.","tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-28T19:17:35+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","cvss_by":"disclosure@vulncheck.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-118685","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-118685","severity":null,"published_at":"2026-10-28T19:17:35+00:00","modified_at":"2026-10-28T19:17:35+00:00","first_seen_at":"2026-10-28T19:34:55+00:00","fetched_at":"2026-10-28T19:34:55+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}