{"id":"CVE-2026-70642","kind":"vulnerability","aliases":["CVE-2026-70642"],"related":[],"title":"ToolJet: authenticated users can read other workspaces' app version metadata","description":"ToolJet before 3.21.94, fixed in commit e5f387a, contains an authorization bypass vulnerability in the app environments init endpoint that allows authenticated users to read app version metadata belonging to other workspaces. Attackers can send GET requests to /api/app-environments/init with an editing_version_id from another workspace to retrieve the version name, description, status, current environment ID, and app ID, because the lookup is not scoped to the caller's organization.","summary":"ToolJet, a low-code app builder, has an authorization bypass in its app environments init endpoint. A logged-in user can request another workspace's app version and read its name, description, status, environment ID and app ID.","severity":"medium","cvss":5.3,"epss":null,"exploited":false,"exploited_at":null,"products":[{"name":"ToolJet","fixed":[],"affected":"","ecosystem":"vendor"}],"ecosystems":["vendor"],"tags":["multi-tenant","other","self-hosted","tooljet"],"not_affected_if":["single-workspace","trusted-users-only"],"how_to_check":"- Check the ToolJet version in use; the sources say versions before `3.21.94` are affected.\n- Look for `/api/app-environments/init` in the deployed ToolJet instance's API.","fix":"- Move to ToolJet `3.21.94` or later, per the sources; the fix is commit `e5f387a`.","status":"open","published_at":"2026-11-12T16:19:13+00:00","first_seen_at":"2026-11-12T16:44:02+00:00","triaged_at":"2026-11-12T16:45:40+00:00","updated_at":"2026-11-12T16:45:40+00:00","category":"other","confidence":0.8,"triage":{"at":"2026-11-12T16:45:40Z","model":"claude-haiku-5-5","output":{"fix":"- Move to ToolJet `3.21.94` or later, per the sources; the fix is commit `e5f387a`.","reach":"network","title":"ToolJet: authenticated users can read other workspaces' app version metadata","impact":"low","summary":"ToolJet, a low-code app builder, has an authorization bypass in its app environments init endpoint. A logged-in user can request another workspace's app version and read its name, description, status, environment ID and app ID.","audience":"businesses","category":"other","nicknames":[],"who_cares":["tooljet","self-hosted","multi-tenant"],"confidence":0.8,"fix_status":"available","needs_auth":"yes","worst_case":"Authenticated users read other workspaces' app version metadata","analyst_note":"","how_to_check":"- Check the ToolJet version in use; the sources say versions before `3.21.94` are affected.\n- Look for `/api/app-environments/init` in the deployed ToolJet instance's API.","plain_action":"","product_name":"ToolJet","needs_analyst":false,"not_affected_if":["single-workspace","trusted-users-only"],"who_is_affected":"Teams that self-host ToolJet or run it with user accounts in more than one workspace or organization are exposed, because the flaw lets an authenticated user read metadata across workspaces. Single-tenant deployments with only trusted users are lower risk. The sources do not say whether managed ToolJet cloud is patched.","user_interaction":"no","product_ecosystem":"vendor","needs_special_setup":"unknown","severity_if_unknown":"medium"},"cost_usd":0.000737,"input_tokens":4642,"output_tokens":546,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-2026':12A,15A '-70642':13A,16A '/api/app-environments/init':103C '3.21.94':68C 'allow':85C 'anoth':50B,110C 'app':8A,31B,39B,53B,64B,80C,90C,123C 'attack':97C 'authent':2A,86C 'author':35B,75C 'belong':93C 'builder':32B 'bypass':36B,76C 'caller':133C 'code':30B 'commit':71C 'contain':73C 'current':119C 'cve':11A,14A 'descript':59B,117C 'e5f387a':72C 'edit':106C 'endpoint':42B,83C 'environ':40B,61B,81C,120C 'fix':69C 'get':100C 'host':24B 'id':62B,65B,108C,121C,124C 'init':41B,82C 'log':45B 'logged-in':44B 'lookup':127C 'low':29B 'low-cod':28B 'metadata':10A,92C 'multi':19B 'multi-ten':18B 'name':58B,116C 'organ':135C 'read':5A,56B,89C 'request':49B,101C 'retriev':113C 'scope':130C 'self':23B 'self-host':22B 'send':99C 'status':60B,118C 'tenant':20B 'tooljet':1A,17A,25B,26B,66C 'user':3A,47B,87C 'version':9A,54B,91C,107C,115C 'vulner':77C 'workspac':7A,51B,96C,111C","nicknames":[],"mitigations":[],"who_affected":"Teams that self-host ToolJet or run it with user accounts in more than one workspace or organization are exposed, because the flaw lets an authenticated user read metadata across workspaces. Single-tenant deployments with only trusted users are lower risk. The sources do not say whether managed ToolJet cloud is patched.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"pkeys":["tooljet"],"ptokens":["tooljet"],"labels":["medium","multitenant","other","selfhosted","tooljet","vendor"],"campaign_type":null,"search_a":"'-2026':12A,15A '-70642':13A,16A 'app':8A 'authent':2A 'cve':11A,14A 'metadata':10A 'read':5A 'tooljet':1A,17A 'user':3A 'version':9A 'workspac':7A","search_b":"'anoth':50B 'app':31B,39B,53B,64B 'author':35B 'builder':32B 'bypass':36B 'code':30B 'descript':59B 'endpoint':42B 'environ':40B,61B 'host':24B 'id':62B,65B 'init':41B 'log':45B 'logged-in':44B 'low':29B 'low-cod':28B 'multi':19B 'multi-ten':18B 'name':58B 'read':56B 'request':49B 'self':23B 'self-host':22B 'status':60B 'tenant':20B 'tooljet':25B,26B 'user':47B 'version':54B 'workspac':51B","search_c":"'/api/app-environments/init':103C '3.21.94':68C 'allow':85C 'anoth':110C 'app':80C,90C,123C 'attack':97C 'authent':86C 'author':75C 'belong':93C 'bypass':76C 'caller':133C 'commit':71C 'contain':73C 'current':119C 'descript':117C 'e5f387a':72C 'edit':106C 'endpoint':83C 'environ':81C,120C 'fix':69C 'get':100C 'id':108C,121C,124C 'init':82C 'lookup':127C 'metadata':92C 'name':116C 'organ':135C 'read':89C 'request':101C 'retriev':113C 'scope':130C 'send':99C 'status':118C 'tooljet':66C 'user':87C 'version':91C,107C,115C 'vulner':77C 'workspac':96C,111C","cause_entry":null,"cause_path":null,"disclosures_checked_at":null,"first_public_at":"2026-11-12T16:19:13+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/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-70642","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-70642","severity":null,"published_at":"2026-11-12T16:19:13+00:00","modified_at":"2026-11-12T16:19:13+00:00","first_seen_at":"2026-11-12T16:44:02+00:00","fetched_at":"2026-11-12T16:44:02+00:00","note":null}],"documents":[{"id":136556,"url":"https://github.com/ToolJet/ToolJet/commit/e5f387a0e6fd8c9627d3e12418a2ae33a00b08d0","title":"Patch: github.com","kind":"other","source":"nvd","publisher":"vendor","text":null,"published_at":null,"relation":"fix","confidence":null,"note":"Patch: github.com"},{"id":136557,"url":"https://www.vulncheck.com/advisories/tooljet-authorization-bypass-via-app-environments-init","title":"Third-party advisory: www.vulncheck.com","kind":"advisory","source":"nvd","publisher":"research","text":null,"published_at":null,"relation":"advisory","confidence":null,"note":"Third-party advisory: www.vulncheck.com"}],"disclosures":[],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}