freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

别让黑客攻陷你的机器学习平台!ModelDB和MLflow机器学习安全漏洞分析
塞讯验证 2023-12-13 20:13:16 117933

近日,ModelDB和MLflow分别爆出安全漏洞,如果成功利用漏洞,攻击者可以从系统中窃取机器学习模型等机密数据,甚至控制整个机器学习系统。

机器学习(ML)的应用在过去几年中呈指数级增长,被用于分析和解释数据的模式及结构,以实现无需人工交互即可完成学习、推理和决策等行为的目的。已经为人工智能诸多领域提供了支持,包括情感分析、图像分类、面部检测、威胁情报等。

随着越来越多的机器学习模型被开发,针对机器学习模型的网络攻击也层出不穷,更多涉及机器学习训练、部署、管理的组件被黑客关注,并爆出各种各样的漏洞和风险。

威胁的增加促使 OWASP 发布了机器学习Top10漏洞列表。其中ML05-2023 模型窃取排在了第五位。

ModelDB 安全漏洞(CVE-2023-6023)

▌漏洞描述

ModelDB是一个用于机器学习模型版本控制、元数据和实验管理的开源系统,可以对机器学习模型进行版本转换,包括它们的组成代码、数据、配置和环境,并在模型生命周期中跟踪ML元数据。

ModelDB 存在CVE-2023-6023安全漏洞,该漏洞源于artifact_path URL参数存在远程文件包含(LFI)漏洞。攻击者可利用该漏洞读取ModelDB服务器文件系统上的任何文件。

▌漏洞复现


靶场环境搭建:
漏洞POC:

图片


图片


▌漏洞成因


对artifact_path参数未进行进行校验。


▌影响范围


<= modeldb 2.0.4


▌塞讯验证规则

12月12日,针对该漏洞的攻击模拟已经加入到塞讯安全度量验证平台中,您可以在塞讯安全度量验证平台中搜索关键词“ModelDB”“CVE-2023-6023”获取相关攻击模拟验证动作,从而验证您的安全防御体系是否能够有效应对该漏洞,平台以业界独有方式确保您的验证过程安全无害。

图片




MLflow 安全漏洞(CVE-2023-6015)

▌漏洞描述


MLflow是一个能够覆盖机器学习全流程生命周期(从数据准备到模型训练到最终部署)的开源机器学习平台,它提供了一组工具,可以帮助数据科学家和工程师跟踪实验、重现结果、部署模型并共享代码。MLflow 是由 Databricks 公司开发并开源的,目前已经成为机器学习领域中最受欢迎的平台之一。

MLflow 存在CVE-2023-6015安全漏洞,该漏洞源于允许攻击者通过路径遍历访问操作系统中的任意文件。

▌渗透(绕过)思路

  • 如果不清楚在 Windows 上以 C: 开头的路径,一般情况下 Windows 上路径以 C: 开头,可以删除开头删除驱动器号和冒号。

  • 例如,将路径 C:../.ssh/id_rsa 将转换为 ../.ssh/id_rsa。这样我们就可以突破根目录直至第一层。

  • 到达根 mlflow 目录的一个最好的办法是 /api/2.0/mlflow-artifacts/artifacts 路径。

  • 我们假设目录根是 C://Users/User/mlflowui,那么查询路径 /api/2.0/mlflow-artifacts/artifacts 允许我们到达根 C://Users/User/mlflowui 目录并从 C://Users/User 获取文件,其中可以包含 SSH 密钥。

▌攻击流程


攻击生成的文件会存储在 C://Users/test/.ssh/id_rsa

  1. Add secret text into C://Users/test/.ssh/id_rsa

  2. 创建mlfloui文件夹,从.\当前目录下运行mlflow

  3. 运行 mlflow uiin C://Users/test/mlflowui

  4. 写入 内容 curl命令

    curl -X PUT --data-binary test "http://127.0.0.1:5000/api/2.0/mlflow-artifacts/artifacts/C:../.ssh/id_rsa"

  5. 读取内容curl命令

    curl -vv "http://127.0.0.1:5000/api/2.0/mlflow-artifacts/artifacts/C:../.ssh/id_rsa"

▌漏洞修复


升级版本至 mlflow - 2.8.1

▌漏洞PoC


使用PUT进行发包,成功写入文件图片docker文件中成功创建文件id_rsa图片配合读取漏洞,正确读取到PUT写入的文件。图片

▌塞讯验证规则

12月12日,针对该漏洞的攻击模拟已经加入到塞讯安全度量验证平台中,您可以在塞讯安全度量验证平台中搜索关键词“MLflow”“CVE-2023-6015”获取相关攻击模拟验证动作,从而验证您的安全防御体系是否能够有效应对该漏洞,平台以业界独有方式确保您的验证过程安全无害。

# 安全漏洞 # CVE # 机器学习 # 安全验证 # BAS技术
本文为 塞讯验证 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
塞讯验证 LV.8
塞讯验证是国内领先的网络安全度量验证平台,率先提出利用真实自动化攻击剧本来持续验证安全防御有效性概念,旨在用安全验证技术来帮助客户实现365天持续评估自身网络和数据安全防御体系效果。塞讯创始团队均曾任职于世界顶尖网络安全公司,拥有业界首屈一指的安全分析和防御能力。两大研发团队分别位于上海和成都,致力于为客户打造最优秀的产品。我们在北京、上海、深圳、杭州均设有分支机构,服务可覆盖全国各个角落。​
  • 218 文章数
  • 21 关注者
验证的力量(一):为何安全基线是安全验证的第一块基石?
2025-04-10
3月 | 塞讯模拟攻击库更新汇总
2025-04-02
攻击剧本分析:APT38(Lazarus组织)针对 Atomic 钱包用户的攻击活动
2025-04-02
文章目录