Budibase: Unanchored Regex in `matchers.ts` Allows CSRF Bypass via Query String Injection in Budibase Worker
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Tampering
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-352.
Summary
Budibase is an open-source low-code platform. Prior to 3.35.4, the buildMatcherRegex() / matches() functions in packages/backend-core/src/middleware/matchers.ts route patterns are compiled into unanchored regular expressions and tested against ctx.request.url, which includes the full query string. The CSRF middleware in the Budibase Worker uses this matching system to decide whether to skip CSRF token validation. An unauthenticated attacker can forge state-changing cross-origin requests against any Worker API endpoint by injecting a public route pattern into the query string, causing the CSRF middleware to skip token validation entirely. This allows actions such as sending admin invites, modifying global configuration, and managing users without a valid CSRF token. This vulnerability is fixed in 3.35.4.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Budibase | budibase | before 3.35.4 | 3.35.4 | Patch available | CNA |
| — | @budibase/backend-core (npm) | before 3.35.4 | 3.35.4 | Patch available | GHSA-wxq7-x3qp-vcr8 |
- budibase VendorBudibase Affected before 3.35.4 Fixed in 3.35.4 Patch available CNA
- @budibase/backend-core (npm) Vendor— Affected before 3.35.4 Fixed in 3.35.4 Patch available GHSA-wxq7-x3qp-vcr8
Remediation
- Fix · CNA budibase (Budibase) Fixed in 3.35.4
- Fix · GHSA-wxq7-x3qp-vcr8 @budibase/backend-core (npm) Fixed in 3.35.4 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-48147
- 2026-10-03 Alias added: GHSA-wxq7-x3qp-vcr8
References
More Budibase vulnerabilities
- TI-2026-39242 Budibase: Anonymous NoSQL operator injection via published-app query templates CVSS 3.1CRITICAL 10.0
- TI-2026-51076 Budibase before 3.40.0 SQL Injection via Unauthenticated Webhook CVSS 4.0CRITICAL 9.0
- TI-2026-24369 Budibase Universal Auth Bypass via Webhook Query Param Injection CVSS 3.1CRITICAL 9.1
- TI-2026-56709 Budibase before 3.41.3 Remote Code Execution via Plugin eval() CVSS 4.0CRITICAL 9.4
- TI-2026-51425 Budibase: SQL Injection via `multipleStatements: true` CVSS 3.1CRITICAL 9.6
- TI-2026-51075 Budibase before 3.40.0 Arbitrary File Write via Path Traversal CVSS 4.0CRITICAL 9.4
Sources
- CVE-2026-48147 · CVE Program
- CVE-2026-48147 · NVD
- FIRST EPSS
- GHSA-wxq7-x3qp-vcr8 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences