{"vuid":"VU#382143","idnumber":"382143","name":"Lowcoder Query Library API contains cross-tenant authorization bypass allowing for data exfiltration","keywords":null,"overview":"### Overview\r\nLowcoder, version 2.4.10, contains an authorization bypass vulnerability in its Query Library feature’s API. Authenticated users with an `admin` or `dev` role can access private library-query data from other organizations within a multi-tenant Lowcoder instance.\r\n\r\n### Description\r\n***CVE-2026-16753*** Lowcoder is an open-source low-code platform that allows individuals with minimal coding experience to build web applications through a visual drag-and-drop interface. Each Lowcoder project contains a centralized Query Library which stores the workspace’s data queries and sources for quick reuse; however, the `LibraryQuery` API service layer lacks organization-scope checks at two endpoints: metadata retrieval and query execution.\r\n\r\nWhile the application features a role-based access mechanism (requires `admin` or `dev`), it only checks the role’s validity against the user’s own organization. The vulnerable endpoints do not validate whether the requested resource belongs to the requester's organization.\r\n\r\n### Impact\r\nAny authenticated attacker with an `admin` or `dev` role in any organization on a multi-tenant Lowcoder instance can access other tenants’ Query Libraries. Note that these roles are granted by default for any self-signup account when `LOWCODER_EMAIL_SIGNUP_ENABLED` and `LOWCODER_CREATE_WORKSPACE_ON_SIGNUP` are `TRUE`. This allows an attacker to do the following: \r\n\r\n* Read the full Domain Specific Language (DSL) of any other organization’s library queries, including complete query configuration and each referenced `datasourceId`.\r\n\r\n* Execute any library query available on the instance, receiving response data directly from the affected organization’s backend data source.\r\n\r\nPotential impacts include cross-tenant data exposure, modification, or destruction, as well as cost abuse via querying paid data sources using another tenant’s finances. By bypassing organization-level authorization, Lowcoder instances effectively function as shared environments for attackers, violating data isolation between organizations.\r\n\r\nThis vulnerability was confirmed against Lowcoder version 2.4.10. \r\n\r\n### Solution\r\nUnfortunately, Lowcoder could not be reached to coordinate this vulnerability. \r\n\r\n#### Mitigations\r\nLowcoder administrators should restrict access to the affected Query Library API endpoints until an official security update is available. Administrators can reduce exposure by limiting application access to trusted users and reviewing `admin` and `dev` role assignments. Organizations operating multi-tenant Lowcoder deployments should consider isolating tenants into separate instances to prevent cross-organization data access. Where source-code modifications are possible, administrators should implement organization-level authorization checks for Query Library metadata retrieval and query execution.\r\n\r\n### Acknowledgements\r\nThanks to Louis Sanchez, member of Voke Cyber, for reporting this vulnerability. This document was written by Alex Lewis.","clean_desc":null,"impact":null,"resolution":null,"workarounds":null,"sysaffected":null,"thanks":null,"author":null,"public":["https://github.com/lowcoder-org/lowcoder"],"cveids":["CVE-2026-16753"],"certadvisory":null,"uscerttechnicalalert":null,"datecreated":"2026-10-13T19:21:56.375690Z","publicdate":"2026-10-13T19:21:56.233908Z","datefirstpublished":"2026-10-13T19:21:56.387558Z","dateupdated":"2026-10-13T19:21:56.233904Z","revision":1,"vrda_d1_directreport":null,"vrda_d1_population":null,"vrda_d1_impact":null,"cam_widelyknown":null,"cam_exploitation":null,"cam_internetinfrastructure":null,"cam_population":null,"cam_impact":null,"cam_easeofexploitation":null,"cam_attackeraccessrequired":null,"cam_scorecurrent":null,"cam_scorecurrentwidelyknown":null,"cam_scorecurrentwidelyknownexploited":null,"ipprotocol":null,"cvss_accessvector":null,"cvss_accesscomplexity":null,"cvss_authentication":null,"cvss_confidentialityimpact":null,"cvss_integrityimpact":null,"cvss_availabilityimpact":null,"cvss_exploitablity":null,"cvss_remediationlevel":null,"cvss_reportconfidence":null,"cvss_collateraldamagepotential":null,"cvss_targetdistribution":null,"cvss_securityrequirementscr":null,"cvss_securityrequirementsir":null,"cvss_securityrequirementsar":null,"cvss_basescore":null,"cvss_basevector":null,"cvss_temporalscore":null,"cvss_environmentalscore":null,"cvss_environmentalvector":null,"metric":null,"vulnote":260}