公司新闻
误差简述
发明MinIO组件保存服务端伪造请求误差的信息,误差编号:CVE-2021-21287。
MinIO 是一个基于Apache License v2.0开源协议的工具存储服务。它兼容亚马逊S3云存储服务接口,适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个工具文件可以是恣意巨细,从几kb到最大5T不等。
MinIO是一个轻量的服务,可以很简朴的和其他应用的团结,类似 NodeJS, Redis 或者 MySQL。
危害品级
威胁品级:高
影响规模:普遍
误差详情
该误差是由于MinIO组件中LoginSTS接口逻辑设计不当,导致服务端请求伪造误差。攻击者通过全心结构URL来修改对此功效的挪用。在服务器端请求伪造攻击中,攻击者可以使用服务器上的功效来读取或更新内部资源,可能团结内网其他服务举行执行恣意下令。
影响版本
修复建议
升级组件到清静版本:
清静版本:
MinIO >= RELEASE.2021-01-30T00-20-58Z
误差复现剖析
误差剖析:
修复纪录提交日志链接:
https://github.com/minio/minio/commit/eb6871ecd960d570f70698877209e6db181bf276#diff-2b3f29fdeadc144f19a2d0e02e076608e0dd58cb2cce21b1b974bfc5bd21304b
从修复纪录中可以看出,修复后移除了可控参数host的相关代码。
MinIO中的LoginSTS接口用于代理AWS STS登录请求,将发送到JsonRPC的请求转化成STS的方法,再转发给外地的9000端口。
未修复前,由于请求头是用户可控的,以是这里可以结构恣意的Host,进而结构一个SSRF误差。
误差复现
0x00 情形安排
使用docker-compose 安排
会见http://you-ip:9000到登录页面