Critical

Budibase: SQL Injection via `multipleStatements: true`

  • Disclosed: 24.07.2026
  • Updated: 11.10.2026 10:22

Summary

A critical SQL injection vulnerability was discovered in Budibase's MySQL integration that allows remote attackers to execute arbitrary SQL commands.

Details

Vulnerability Type

SQL Injection

Description

The MySQL integration component in Budibase is configured with multipleStatements: true, enabling execution of multiple SQL statements in a single query. Attackers can inject malicious SQL commands through user input fields, leading to complete database compromise.

Location

ts
// File: packages/server/src/integrations/mysql.ts
// Line: 173

this.config = {
  ...config,
  typeCast: defaultTypeCasting,
  multipleStatements: true,  // VULNERABLE
  timezone: "Z",
}

Proof of Concept

Exploit

js
const mysql = require('mysql2');

// Budibase vulnerable configuration
const connection = mysql.createConnection({
  host: 'localhost',
  user: 'root',
  password: 'password',
  multipleStatements: true,  // Vulnerable setting
  timezone: "Z"
});

// Attack: Data destruction
connection.query(
  `SELECT * FROM users WHERE id = 1; DROP TABLE sensitive_data; --`,
  (err, results) => {
    if (!err) console.log("Table dropped successfully");
  }
);

Impact

  • Data Destruction: Execute DROP TABLE, DELETE commands
  • Data Theft: Exfiltrate data via SELECT INTO OUTFILE
  • Privilege Escalation: Grant database admin privileges
  • Denial of Service: Disrupt service operations
  • Complete Database Compromise: Full control over database

Remediation

Patch

diff
--- a/packages/server/src/integrations/mysql.ts
+++ b/packages/server/src/integrations/mysql.ts
@@ -170,7 +170,7 @@ class MySQLIntegration extends Sql implements DatasourcePlus {
     this.config = {
       ...config,
       typeCast: defaultTypeCasting,
-      multipleStatements: true,
+      multipleStatements: false,
       timezone: "Z",
     }
   }

Workarounds

  1. Temporarily disable MySQL integration
  2. Implement web application firewall (WAF)
  3. Restrict database user privileges

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
npm package @budibase/server <= 3.38.1 no fix

References

CVSS score 9.6/10
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
Weakness (CWE)
CWE-89
Platform
npm
Package
@budibase/server
Disclosed
24.07.2026
Updated
11.10.2026 10:22

Sources and licenses

OSV / GitHub Advisory Database - GHSA-q6x4-v3qx-85qw - CC BY 4.0

Vulnerability history: @budibase/server

All published vulnerabilities of this package (npm package), newest first. Shows whether this is a one-off slip or a package that needs watching.

All (42) in the archive
Total entries
42
First → latest
03.2024 08.2026
Without a fix
19
Exploited in attacks
0

Severity breakdown

  • Critical 8
  • High 27
  • Medium 7

Disclosures per year

  1. 2024: 1
  2. 2025: 0
  3. 2026: 41
Severity:
  1. High · 8.5 CVE-2026-73410 <= 3.38.1 no fix
  2. Budibase: SQL Injection via `multipleStatements: true` this entry
    Critical · 9.6 CVE-2026-73300 <= 3.38.1 no fix
Show more (15) Showing 20 of 35

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.