
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-73408 is a SQL injection vulnerability in Budibase's MySQL database connector, specifically a backtick injection via stacked statements during schema discovery. The flaw exists in packages/server/src/integrations/mysql.ts and affects all Budibase versions prior to 3.39.18. It was disclosed on August 13, 2026, and carries a CVSS v3.1 base score of 7.6 (High) (GitHub Advisory). This vulnerability is related to but distinct from a companion PostgreSQL injection issue (GHSA-qqf5-x7mj-v43p), split per GitHub CNA guidance as it affects a separate integration with a different attack precondition (GitHub Advisory).
The root cause (CWE-89: SQL Injection) lies in two compounding design choices in mysql.ts: the MySQL connection is initialized with multipleStatements: true, and table names retrieved from INFORMATION_SCHEMA.TABLES are interpolated directly into a DESCRIBE query wrapped in backticks without any escaping — DESCRIBE \${tableName}`;([GitHub Advisory](https://github.com/Budibase/budibase/security/advisories/GHSA-2xgg-r2wc-c5r2)). An attacker who can create a MySQL table with a maliciously crafted name (e.g.,foo`; DROP TABLE users; --) can break out of the backtick identifier and append an arbitrary second SQL statement. Exploitation requires the attacker to have table-creation privileges in the target MySQL database and then wait for a Budibase administrator to trigger schema introspection (e.g., opening or refreshing the datasource). The fix replaces the raw interpolation with a call to quoteMySqlIdentifier()`, which escapes embedded backticks by doubling them (GitHub Commit).
Successful exploitation allows arbitrary SQL statement execution on the connected MySQL database, triggered silently during a routine administrator action. The impact spans high confidentiality (data exfiltration), high integrity (data modification or deletion, e.g., DROP TABLE), and high availability (destruction of database objects), with scope change indicating potential impact beyond the Budibase application itself (GitHub Advisory). Unlike direct configuration-based injection flaws, this attack does not require the attacker to control Budibase datasource settings — only the ability to create a specially named table in the underlying database beforehand.
No public proof-of-concept exploit code or in-the-wild exploitation has been reported as of the disclosure date. The EPSS score is 0.0, indicating a currently low probability of active exploitation (ENISA EUVD). The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. Exploitation requires high privileges (table creation in the target MySQL database) and user interaction (an administrator must trigger schema discovery), which significantly limits the attacker pool (GitHub Advisory).
CREATE TABLE privileges on a database connected to the target Budibase instance.CREATE TABLE `foo\`; DROP TABLE sensitive_data; -- ` (id INT);INFORMATION_SCHEMA.TABLES and then issue DESCRIBE for each table name.DESCRIBE \foo`; DROP TABLE sensitive_data; --`;, and because multipleStatements: true is set on the connection, the second statement (DROP TABLE sensitive_data`) executes as a separate query on the MySQL server.DESCRIBE statements that contain semicolons, additional SQL keywords (DROP, CREATE, SELECT, INSERT), or comment sequences (--, #) within backtick-quoted identifiers.DROP TABLE, CREATE TABLE, SELECT ... INTO OUTFILE) executed by the Budibase database service account in close temporal proximity to schema introspection events.SELECT ... INTO OUTFILE or LOAD DATA abuse.Upgrade Budibase to version 3.39.18 or later, which applies quoteMySqlIdentifier() to properly escape backticks in table names before constructing DESCRIBE queries (GitHub Release, GitHub Commit). Note that the GitHub Security Advisory lists the patched version as 3.40.0, so upgrading to the latest available release is recommended. As a workaround where immediate upgrade is not possible, restrict the MySQL user account configured in Budibase datasources to the minimum necessary privileges (e.g., SELECT only) and avoid granting CREATE TABLE or DDL privileges to any untrusted users on databases connected to Budibase (GitHub Advisory).
The vulnerability was reported by security researcher mhr-isham and credited in the GitHub Security Advisory (GitHub Advisory). The Budibase team addressed the issue promptly via pull request #18989, merged on June 16, 2026, alongside fixes for related SQL injection issues in PostgreSQL and MS SQL Server connectors (GitHub PR). No significant broader media coverage or notable community commentary beyond the official advisory has been identified.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."