CVE-2026-54350
CVE-2026-54350 is a critical-severity vulnerability in Budibase with a CVSS 3.x base score of 10.0. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-89.
Key facts
- Severity: Critical (CVSS 3.x base score 10.0)
- EPSS exploit prediction: 0% (39th percentile)
- Actively exploited: Not listed in CISA KEV
- Weakness: CWE-89
- Affected product: Budibase
- Published:
- Last modified:
Description
Budibase is an open-source low-code platform. Prior to 3.39.12, an unauthenticated visitor of any published Budibase app reads every document of the backing MongoDB, CouchDB, Elasticsearch, DynamoDB-PartiQL, or REST-with-JSON-body collection and, where the builder has published a PUBLIC write query, modifies every document of that collection with one HTTP request. enrichContext at packages/server/src/sdk/workspace/queries/queries.ts:121-138 substitutes parameter values into the raw JSON body of a query, then JSON.parses the result. The validator validateQueryInputs at packages/server/src/api/controllers/query/index.ts:61-71 rejects only Handlebars markers ({{, }}) in user input and does not escape JSON metacharacters (", \, }). A parameter value containing a closing quote and additional keys lifts attacker-controlled fields into the parsed filter object. For Mongo find, the parsed filter passes directly to collection.find() (packages/server/src/integrations/mongodb.ts:506-510). Duplicate-key JSON parsing overrides the builder's {name: "..."} with {name: {$exists: true}} and returns every document. The same primitive against an updateMany query (mongodb.ts:577-585) widens the filter scope to the full collection while the builder-controlled $set body runs against every matched document. The authorized middleware at packages/server/src/middleware/authorized.ts:141-148 short-circuits when the query's role is PUBLIC. CSRF is not enforced on this path. POST /api/v2/queries/:queryId (packages/server/src/api/routes/query.ts:63) accepts the call with no session, only an x-budibase-app-id header that is public from the published-app URL. This vulnerability is fixed in 3.39.12.
Frequently asked questions
- What is CVE-2026-54350?
- Budibase is an open-source low-code platform. Prior to 3.39.12, an unauthenticated visitor of any published Budibase app reads every document of the backing MongoDB, CouchDB, Elasticsearch, DynamoDB-PartiQL, or REST-with-JSON-body collection and, where the builder has published a PUBLIC write query, modifies every document of that collection with one HTTP request. enrichContext at packages/server/src/sdk/workspace/queries/queries.ts:121-138 substitutes parameter values into the raw JSON body of a query, then JSON.parses the result. The validator validateQueryInputs at packages/server/src/api/controllers/query/index.ts:61-71 rejects only Handlebars markers ({{, }}) in user input and does not escape JSON metacharacters (", \, }). A parameter value containing a closing quote and additional keys lifts attacker-controlled fields into the parsed filter object. For Mongo find, the parsed filter passes directly to collection.find() (packages/server/src/integrations/mongodb.ts:506-510). Duplicate-key JSON parsing overrides the builder's {name: "..."} with {name: {$exists: true}} and returns every document. The same primitive against an updateMany query (mongodb.ts:577-585) widens the filter scope to the full collection while the builder-controlled $set body runs against every matched document. The authorized middleware at packages/server/src/middleware/authorized.ts:141-148 short-circuits when the query's role is PUBLIC. CSRF is not enforced on this path. POST /api/v2/queries/:queryId (packages/server/src/api/routes/query.ts:63) accepts the call with no session, only an x-budibase-app-id header that is public from the published-app URL. This vulnerability is fixed in 3.39.12.
- How severe is CVE-2026-54350?
- CVE-2026-54350 has a CVSS 3.x base score of 10.0, rated critical severity. It is exploitable over network with low attack complexity, requires no privileges and no user interaction. Impact on confidentiality is high, integrity high, and availability none.
- Is CVE-2026-54350 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (39th percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2026-54350?
- CVE-2026-54350 affects Budibase. See the affected-products list for the exact vulnerable versions.
- How do I fix CVE-2026-54350?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround. Given its critical severity, prioritise patching exposed systems.
- When was CVE-2026-54350 published?
- CVE-2026-54350 was published on 2026-06-26 and last updated on 2026-06-30.
References
Affected products (1)
- cpe:2.3:a:budibase:budibase:*:*:*:*:*:*:*:*
More vulnerabilities in Budibase
- CVE-2026-27702 — Critical (CVSS 9.9): Budibase is a low code platform for creating internal tools, workflows, and admin panels. Prior to version 3.30.4, an…
- CVE-2026-54352 — Critical (CVSS 9.6): Budibase is an open-source low-code platform. Prior to 3.39.9, `POST /api/pwa/process-zip` at…
- CVE-2026-31818 — Critical (CVSS 9.6): Budibase is an open-source low-code platform. Prior to version 3.33.4, a server-side request forgery (SSRF)…
- CVE-2026-30240 — Critical (CVSS 9.6): Budibase is a low code platform for creating internal tools, workflows, and admin panels. In 3.31.5 and earlier, a path…
- CVE-2026-50137 — Critical (CVSS 9.4): Budibase is an open-source low-code platform. Prior to 3.39.0, an anonymous attacker who knows or can enumerate a…
- CVE-2026-41428 — Critical (CVSS 9.1): Budibase is an open-source low-code platform. Prior to 3.35.4, the authenticated middleware uses unanchored regular…
Other CWE-89 (SQL Injection) vulnerabilities
- CVE-2026-20030 — Critical (CVSS 10.0): As part of Cisco's ongoing commitment to proactive security and product quality, the Cisco Crosswork engineering team…
- CVE-2026-72811 — Critical (CVSS 10.0): SiYuan versions <= v3.7.2 contain a SQL injection vulnerability in the backlink/mention search query…
- CVE-2026-72851 — Critical (CVSS 10.0): Budibase before 3.40.0 contains an unauthenticated SQL injection vulnerability in webhook-triggered automations with…
- CVE-2026-72899 — Critical (CVSS 10.0): Metabase allows an unauthenticated attacker to inject arbitrary SQL via a publicly shared card or dashboard that…
- CVE-2026-72898 — Critical (CVSS 10.0): Metabase allows a remote, unauthenticated attacker to inject arbitrary SQL via the '/reset_password' database endpoint…
- CVE-2026-48330 — Critical (CVSS 10.0): Adobe Campaign Classic (ACC) is affected by an Improper Neutralization of Special Elements used in an SQL Command ('SQL…