CVE-2026-48146 Budibase: SSRF via OAuth2 Config Validation — Missing fetchWithBlacklist Protection
A Builder user can exploit missing SSRF protection in OAuth2 config to access internal services and exfiltrate sensitive data.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-48146?
CVE-2026-48146 is a high-severity server-side request forgery vulnerability in budibase, published on 27 May 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Budibase is an open-source low-code platform. Prior to 3.39.0, the OAuth2 token fetch function in packages/server/src/sdk/workspace/oauth2/utils.ts uses raw fetch(config.url) with no SSRF protection. The safe wrapper fetchWithBlacklist() exists in the same codebase and is used in every other outbound HTTP call (automation steps, plugin downloads, object store), but was not applied to the OAuth2 token endpoint. A user with BUILDER role can point the OAuth2 token URL to internal services (CouchDB, cloud metadata) to exfiltrate sensitive data. This vulnerability is fixed in 3.39.0.
Weakness: CWE-918
Which versions are affected by CVE-2026-48146?
2 open source packages ship an affected version, including @budibase/server.
| Package | Affected | Fixed in |
|---|---|---|
@budibase/server npm | All versions | 3.39.0 |
@budibase/server npm | All versions | 3.39.0 |
How do I fix CVE-2026-48146?
Upgrade @budibase/server to 3.39.0 or later.
Upgrade, and send outbound requests through an allow-list that blocks internal addresses. More about Server-side request forgery.
Is CVE-2026-48146 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-48146 exists.
Sources
Also known as GHSA-g6qx-g4pr-92v7.