CVE-2025-3248 – Langflow中通过不安全Python exec使用实现未授权远程代码执行
概述
CVE-2025-3248是Langflow(一个流行的低代码LLM应用构建框架)中的关键未授权远程代码执行(RCE)漏洞。该漏洞源于不安全地使用Python内置的exec()函数来评估用户提供的输入而未进行清理。这使得攻击者能够在服务器上执行任意Python代码,完全破坏底层系统。
- CVE ID: CVE-2025-3248
- 严重性: 严重
- CVSS评分: 9.8
- EPSS评分: 92.57%
- 发布日期: 2025年5月22日
- 受影响版本: ≤ v1.3.0
- 修补版本: v1.3.0+
技术分析
Langflow暴露了一个/api/v1/builder/execute_code
端点,该端点接收用户提供的Python代码并将其直接传递给后端的exec()。由于没有身份验证或沙箱,攻击者可以制作任意有效负载以执行代码。
|
|
漏洞代码片段
没有沙箱,没有ast.literal_eval,没有子进程控制——只是直接未清理地执行攻击者输入。
|
|
利用条件
- Langflow实例可通过网络访问
- 漏洞端点不需要身份验证
- 版本 ≤ 1.3.0
利用步骤
可用的公共PoC位于:https://github.com/xuemian168/CVE-2025-3248.git
要利用易受攻击的Langflow实例,克隆存储库并针对目标执行提供的脚本。
|
|
成功利用后,命令以langflow进程的权限在服务器端执行。
缓解措施
- 升级到Langflow v1.3.0或更高版本
- 通过防火墙或反向代理限制对漏洞端点的访问
- 移除或替换exec()的使用,采用更安全的替代方案
- 要求所有API端点进行身份验证
- 实施运行时应用程序保护和出口限制