Cyber Posture

CVE-2026-31816

CriticalPublic PoC

Published: 09 March 2026

Published
09 March 2026
Modified
13 March 2026
KEV Added
Patch
CVSS Score 9.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
EPSS Score 0.1586 94.8th percentile
Risk Priority 28 60% EPSS · 20% KEV · 20% CVSS

Description

Budibase is a low code platform for creating internal tools, workflows, and admin panels. In 3.31.4 and earlier, the Budibase server's authorized() middleware that protects every server-side API endpoint can be completely bypassed by appending a webhook path pattern to…

more

the query string of any request. The isWebhookEndpoint() function uses an unanchored regex that tests against ctx.request.url, which in Koa includes the full URL with query parameters. When the regex matches, the authorized() middleware immediately calls return next(), skipping all authentication, authorization, role checks, and CSRF protection. This means a completely unauthenticated, remote attacker can access any server-side API endpoint by simply appending ?/webhooks/trigger (or any webhook pattern variant) to the URL.

Mitigating Controls (NIST 800-53 r5)AI

prevent

Enforces approved authorizations for all logical access to server-side API endpoints, directly preventing the middleware bypass via query string manipulation.

prevent

Validates information inputs including query parameters at external interfaces, blocking malicious webhook patterns that exploit the unanchored regex in isWebhookEndpoint().

preventrecover

Requires timely remediation of flaws like the authorized() middleware vulnerability in Budibase 3.31.4 and earlier, eliminating the bypass through patching.

Security SummaryAI

CVE-2026-31816 is a critical vulnerability in Budibase, a low code platform for creating internal tools, workflows, and admin panels, affecting versions 3.31.4 and earlier. The issue lies in the server's authorized() middleware, which is intended to protect every server-side API endpoint. This middleware can be fully bypassed by appending a webhook path pattern, such as ?/webhooks/trigger or any variant, to the query string of any request. The isWebhookEndpoint() function uses an unanchored regex that tests against ctx.request.url, which in the Koa framework includes the full URL with query parameters; a match causes the middleware to immediately invoke next(), skipping all authentication, authorization, role checks, and CSRF protection.

An unauthenticated remote attacker can exploit this vulnerability with low complexity by simply modifying the query string of requests to any API endpoint. This grants complete access to all server-side API functionality without credentials, enabling high-impact confidentiality and integrity violations such as data exfiltration, modification, or other unauthorized operations. The vulnerability carries a CVSS v3.1 base score of 9.1 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N) and is associated with CWE-74 (Improper Neutralization of Special Elements used in an SQL Command).

Mitigation details are available in the Budibase security advisory at https://github.com/Budibase/budibase/security/advisories/GHSA-gw94-hprh-4wj8, published on 2026-03-09.

Details

CWE(s)

Affected Products

budibase
budibase
≤ 3.31.4

MITRE ATT&CK Enterprise TechniquesAI

T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
Why these techniques?

The vulnerability allows unauthenticated remote attackers to bypass authentication middleware on a public-facing web application (Budibase server-side API), directly enabling exploitation of public-facing applications for unauthorized access.

Confidence: HIGH · MITRE ATT&CK Enterprise v19.0

References