MinIO集群模式信息泄露漏洞(CVE-2023-28432)

news2024/10/1 7:36:47

前言: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 加固建议

升级官方最新补丁可以修复该漏洞。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/983728.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数字信封技术概论

数字信封技术是一种通过加密手段实现信息保密性和验证的技术,它在保护敏感信息传输过程中得到了广泛应用。本文将详细介绍数字信封技术的原理、实现和应用场景。 一、数字信封技术的原理 数字信封技术是一种将对称密钥通过非对称加密手段分发的方法。在数字信封中…

《C++设计模式》——行为型

前言 行为型模式是对在不同的对象之间划分责任和算法的抽象化。行为型模式不仅仅关注类和对象的结构,而且重点关注它们之间的相互作用。 Interpreter(解释器) Template Method(模板方法) Chain of Responsibility(责任链) Command(命令) Iterator(迭代器) Me…

海康NVR(Network Video Recorder)启用SSH过程摸索

文章目录 海康NVR具备的特点启用SSH模式优劣比较启用SSH模式的优势启用SSH模式的坏处 Hik NVR启用SSH功能1,Web登录NVR2,SSH登录NVR SSH shell模式特点SSH shell模式指令作用1,简要帮助“help”可以列出常用的shell指令部分可用shell指令输出…

实现一台电脑登录多个微信账号/一个微信账号在多台电脑登录

一、一台电脑登录多个微信账号 在电脑桌面建立一个txt文档文件。 输入内容: echo off start /d"C:\Program Files\Tencent\WeChat\" WeChat.exe start /d"C:\Program Files\Tencent\WeChat\" WeChat.exe exit 如下图,/d"引号内容写微信安…

KT142C-sop16语音芯片ic的串口指令详细说明_默认9600指令可设

3.1 通讯格式 支持异步串口通讯模式,通过串口接受上位机发送的命令 通讯标准:9600 bps --- 可以发送指令修改,并且记忆,详见3.4.5 数据位 :8 停止位 :1 校验位 :none 流控制 :none 格式:$S VER Len CMD Feedback para1 …

简单便捷的行为验证码,让登录更轻松

前言 在当今数字化的世界里,登录账户已成为我们日常生活中不可或缺的一部分。然而,传统的输入验证码方式却常常给用户带来不必要的繁琐和麻烦。为了解决这一问题,简单便捷的行为验证码应运而生,让登录变得更加轻松。 行为验证码…

TuyaOS Sensor Hub组件介绍

文章目录 Sensor Hub 设计思想分层设计Sensor Hub 层(tdl)Sensor Driver 层(tdd) 传感数据元素类型抽象传感器采集策略 Sensor Hub 对上数据与接口数据结构1. 数据读取的触发模式2. 元素型数据订阅规则3. 数据就绪通知回调4. 传感设备信息 应用接口1. 创建传感器实例2. 启动传感…

vue3路由跳转params传参接收不到

import { useRouter } from "vue-router";const router useRouter(); // 提现记录 const withdrawalClick (item) > {router.push({ name: "Devwithdrawal", params: { name: 123 } }); };//跳转页面接收参数 import { useRoute } from "vue-rou…

指针和字符数组笔试题及其解析(第二组)

个人主页:Lei宝啊 愿所有美好如期而遇 前言: 数组名在寻常情况下表示首元素地址,但有两种情况例外: 1.sizeof(数组名),这里的数组名表示整个数组,计算的是整个数组的大小 2.&数组名,这里的…

OLED透明屏模块:引领未来显示技术的突破

OLED透明屏模块作为一项引领未来显示技术的突破,以其独特的特点和卓越的画质在市场上引起了广泛关注。 根据行业报告,预计到2025年,OLED透明屏模块将占据智能手机市场的20%份额,并在汽车导航系统市场中占据30%以上份额。 那么&am…

TD3算法

TD3算法 全称Twin Delayed DDPG,是对DDPG算法的继承、发展和改进,论文 改进如下: T w i n \mathcal{T}win Twin:使用了两个critic来评估actor的动作价值,对应两个critic target,一个actor target&#xff0…

[漏洞复现] metinfo_6.0.0_file-read(任意文件读取)

文章目录 漏洞描述漏洞等级影响版本漏洞复现基础环境漏洞点第一次测试第二次测试第三次测试第四次测试深度利用EXP编写EXP使用案例漏洞挖掘指纹信息修复建议 本次漏洞复现仅供学习使用,如若非法他用,与平台和本文作者无关,需自行负责&#xf…

Solidity 小白教程:10. 控制流,用 solidity 实现插入排序

Solidity 小白教程:10. 控制流,用 solidity 实现插入排序 这一讲,我们将介绍solidity中的控制流,然后讲如何用solidity实现插入排序(InsertionSort),一个看起来简单,但实际上很容易…

系统架构设计师(第二版)学习笔记----计算机系统基础

【原文链接】系统架构设计师(第二版)学习笔记----计算机系统基础 文章目录 一、计算机硬件1.1 计算机硬件的组成1.2 处理器指令集1.3 处理器层次1.4 总线分类1.5 接口的种类 二、计算机操作系统2.1 计算机软件分类2.2 操作系统的作用2.3 操作系统的特征2…

【FusionInsight 迁移】HBase从C50迁移到6.5.1(01)迁移概述

【FusionInsight 迁移】HBase从C50迁移到6.5.1(01)迁移概述 HBase从C50迁移到6.5.1(01)迁移概述迁移范围迁移前的准备HDFS文件检查确认HBase迁移目录确保数据落盘停止老集群HBase服务停止新集群HBase服务 HBase从C50迁移到6.5.1&a…

L1-063 吃鱼还是吃肉(Python实现) 测试点全过

前言: {\color{Blue}前言:} 前言: 本系列题使用的是,“PTA中的团体程序设计天梯赛——练习集”的题库,难度有L1、L2、L3三个等级,分别对应团体程序设计天梯赛的三个难度。更新取决于题目的难度,…

如何在opensuse build service (obs)打包deb包用于分发各个发行版

1.打开网页 https://build.opensuse.org/ 注册账号 创建home project 创建项目 需要配置需要打包的镜像如debian12 ubuntu等 先配置整体home仓库的全部 ​由于是home的,可能不同的项目有些不需要,可以在项目中禁用一些,再配置某个项目需要…

c语言 4.0

💂 个人主页: 程序员爱摸鱼🤟 版权: 本文由【程序员爱摸鱼】原创、在CSDN首发、需要转载请联系博主💬 如果文章对你有帮助、欢迎关注点赞收藏(一键三连)哦💅 想寻找共同成长的小伙伴,可以互粉哦 💬文章目录…

如何用Python机器学习、深度学习提升气象、海洋、水文领域实践能力!!!

Python是功能强大、免费、开源,实现面向对象的编程语言,能够在不同操作系统和平台使用,简洁的语法和解释性语言使其成为理想的脚本语言。除了标准库,还有丰富的第三方库,Python在数据处理、科学计算、数学建模、数据挖…

测试用例设计方法真的很重要啊

记得我刚入职到部门的第一个星期,除了去熟悉公司部门的一些业务流程,就是去看我将要去测的系统的系统说明书,然后去熟悉各种业务流程,自己还是有点放不开,虽然之前也在一家公司实习过,主要是功能测试&#…