razureink/cve-2026-0770-langflow_rce_reproduction
GitHub: razureink/cve-2026-0770-langflow_rce_reproduction
该项目复现了 Langflow 框架 `/api/v1/validate` 接口中因 `exec_globals` 未净化导致 CVE-2026-0770 严重远程代码执行漏洞的攻击过程。
Stars: 0 | Forks: 0
# CVE-2026-0770:Langflow exec_globals 远程代码执行
**CVSS 9.8 (严重)** | **ZDI-CAN-27325** | **CWE-829:包含来自不受信任控制范围的功能**
## 概述
CVE-2026-0770 是 [Langflow](https://github.com/langflow-ai/langflow)(一个用于构建 LLM 驱动应用的低代码应用框架)中的一个严重的未经身份验证的远程代码执行漏洞。该缺陷存在于 `/api/v1/validate` endpoint 中,其中 `exec_globals` 参数被不安全地传递给 Python 的 `exec()` 函数,允许未经身份验证的攻击者以 Langflow 进程的权限(通常为 root)执行任意代码。
由零日计划(Zero Day Initiative)发现(ZDI-CAN-27325)。
## 技术细节
### exec_globals 注入
位于 `/api/v1/validate` 的 Langflow validate endpoint 接受一个包含 `exec_globals` 字段的 JSON payload。该字典旨在用于内部目的,以便在验证自定义组件时预填充全局变量。然而,该 endpoint 没有对 `exec_globals` 的内容进行清理或限制,并且这些值被直接传递到 Python 内置的 `exec()` 函数中:
```
exec(user_code, exec_globals)
```
攻击者可以通过提供一个精心构造的 `exec_globals` 字典来注入任意 Python 代码,该字典会覆盖内置函数或注入恶意的可调用对象。当 Langflow 在内部使用这些全局变量评估用户代码时,注入的代码就会执行。
### CWE-829:包含来自不受信任控制范围的功能
该漏洞被归类为 CWE-829,因为应用程序在未进行充分验证的情况下,包含了来自不受信任来源(即网络请求)的功能(通过 `exec_globals`),从而导致任意代码执行。
### 攻击向量
- **网络**:远程
- **身份验证**:无需
- **复杂性**:低
- **影响**:完全破坏机密性、完整性和可用性
## 受影响版本
在实现针对 validate endpoint 中 `exec_globals` 的适当清理补丁之前的所有 Langflow 版本均受影响。具体受影响的版本包括:
- Langflow 0.x 系列直至 2026 年初
- `/api/v1/validate` 在不加验证的情况下接受 `exec_globals` 的版本
## 复现步骤
1. 部署一个存在漏洞的 Langflow 实例(或使用具有明确授权的实验环境)
2. 向 `/api/v1/validate` 发送一个带有恶意 `exec_globals` payload 的构造好的 POST 请求
3. 观察注入的命令在目标系统上执行的情况
## 概念验证 (PoC)
使用附带的 `exploit.py` 脚本:
```
python exploit.py --target 192.168.1.100 --port 7860 --command "id > /tmp/pwned"
```
## 缓解措施
1. **打补丁**:将 Langflow 升级到已修补并对 `exec_globals` 进行清理的版本。
2. **临时缓解措施**:使用防火墙或反向代理限制对 Langflow API endpoint 的网络访问。
3. **深度防御**:不要将 Langflow 直接暴露给不受信任的网络。
## 参考
- [ZDI-26-000 (ZDI-CAN-27325)] https://www.zerodayinitiative.com/advisories/ZDI-26-000/
- [Langflow GitHub] https://github.com/langflow-ai/langflow
- [CWE-829] https://cwe.mitre.org/data/definitions/829.html
- [NVD CVE-2026-0770] https://nvd.nist.gov/vuln/detail/CVE-2026-0770
**免责声明**:此信息仅供教育和授权的安全测试目的提供。未经授权对你不拥有或未获得明确测试权限的系统使用此信息是非法的。
标签:CISA项目, Langflow, Python, RCE漏洞, 无后门, 漏洞复现, 逆向工具