EN

【漏洞預(yù)警報(bào)告】MinIO 服務(wù)端請(qǐng)求偽造漏洞

發(fā)布時(shí)間:2021-03-12
瀏覽量: 10086

漏洞簡述



時(shí)間2021年02月02日

發(fā)現(xiàn)MinIO組件存在服務(wù)端偽造請(qǐng)求漏洞的信息,漏洞編號(hào):CVE-2021-21287。

程序詳情

MinIO 是一個(gè)基于Apache License v2.0開源協(xié)議的對(duì)象存儲(chǔ)服務(wù)。它兼容亞馬遜S3云存儲(chǔ)服務(wù)接口,適合于存儲(chǔ)大容量非結(jié)構(gòu)化的數(shù)據(jù),例如圖片、視頻、日志文件、備份數(shù)據(jù)和容器/虛擬機(jī)鏡像等,而一個(gè)對(duì)象文件可以是任意大小,從幾kb到最大5T不等。

MinIO是一個(gè)輕量的服務(wù),可以很簡單的和其他應(yīng)用的結(jié)合,類似 NodeJS, Redis 或者 MySQL。



風(fēng)險(xiǎn)等級(jí)



威脅等級(jí):高

影響范圍:廣泛



漏洞詳情


該漏洞是由于MinIO組件中LoginSTS接口邏輯設(shè)計(jì)不當(dāng),導(dǎo)致服務(wù)端請(qǐng)求偽造漏洞。攻擊者通過精心構(gòu)造URL來修改對(duì)此功能的調(diào)用。在服務(wù)器端請(qǐng)求偽造攻擊中,攻擊者可以利用服務(wù)器上的功能來讀取或更新內(nèi)部資源,可能結(jié)合內(nèi)網(wǎng)其他服務(wù)進(jìn)行執(zhí)行任意命令。



影響版本

MinIO < RELEASE.2021-01-30T00-20-58Z

 修復(fù)建議

升級(jí)組件到安全版本

github鏈接https://github.com/minio/minio

安全版本

MinIO >= RELEASE.2021-01-30T00-20-58Z



漏洞復(fù)現(xiàn)分析


漏洞分析

修復(fù)記錄提交日志鏈接:

https://github.com/minio/minio/commit/eb6871ecd960d570f70698877209e6db181bf276#diff-2b3f29fdeadc144f19a2d0e02e076608e0dd58cb2cce21b1b974bfc5bd21304b

從修復(fù)記錄中可以看出,修復(fù)后移除了可控參數(shù)host的相關(guān)代碼。

1615537170.png

MinIO中的LoginSTS接口用于代理AWS STS登錄請(qǐng)求,將發(fā)送到JsonRPC的請(qǐng)求轉(zhuǎn)化成STS的方式,再轉(zhuǎn)發(fā)給本地的9000端口。

未修復(fù)前,因?yàn)檎?qǐng)求頭是用戶可控的,所以這里可以構(gòu)造任意的Host,進(jìn)而構(gòu)造一個(gè)SSRF漏洞。


漏洞復(fù)現(xiàn)


0x00 環(huán)境部署

使用docker-compose 部署

1615537191.png

訪問http://you-ip:9000到登錄頁面

1615537210.png

0x01 刷新頁面,找到登錄頁面包含的JsonRPC請(qǐng)求

1615537231.png

0x02 先使用python3啟動(dòng)一個(gè)http服務(wù),用于檢測(cè)是否有回調(diào)過來

1615537244.png

0x03 修改method為 web.LoginSTS,指定host參數(shù)

1615537258.png

0x04 點(diǎn)擊Go之后可以看到已經(jīng)有訪問記錄了,證明存在SSRF漏洞

1615537274.png

熱點(diǎn)內(nèi)容

開始試用任子行產(chǎn)品
申請(qǐng)?jiān)囉?/a>

20年公安服務(wù)經(jīng)驗(yàn)

7*24小時(shí)應(yīng)急響應(yīng)中心

自主知識(shí)產(chǎn)權(quán)的產(chǎn)品裝備

專家級(jí)安全服務(wù)團(tuán)隊(duì)

網(wǎng)絡(luò)空間數(shù)據(jù)治理專家

榮獲國家科學(xué)技術(shù)二等獎(jiǎng)

置頂
電話

400-700-1218

官方熱線電話

咨詢
留言
二維碼
微信公眾號(hào)
公司微博