您好,登錄后才能下訂單哦!
Harbor任意管理員注冊(cè)實(shí)現(xiàn)CVE-2019-16097漏洞的示例分析,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。
0x00 Harbor簡(jiǎn)介
Harbor是一個(gè)用于存儲(chǔ)和分發(fā)Docker鏡像的企業(yè)級(jí)Registry服務(wù)器,通過(guò)添加一些企業(yè)必需的功能特性,例如安全、標(biāo)識(shí)和管理等,擴(kuò)展了開(kāi)源Docker Distribution。
作為一個(gè)企業(yè)級(jí)私有Registry服務(wù)器,Harbor提供了更好的性能和安全。提升用戶使用Registry構(gòu)建和運(yùn)行環(huán)境傳輸鏡像的效率。
0x01 原理概述
該漏洞是一個(gè)垂直越權(quán)漏洞,因注冊(cè)模塊對(duì)參數(shù)校驗(yàn)不嚴(yán)格,可導(dǎo)致任意管理員注冊(cè)。攻擊者注冊(cè)管理員賬號(hào)后可以接管Harbor鏡像倉(cāng)庫(kù),從而寫入惡意鏡像,最終可以感染使用此倉(cāng)庫(kù)的客戶端等。
0x02 影響范圍
Harbor1.7.6之前版本和Harbor1.8.3之前版本
0x03 環(huán)境搭建
從這里下載:
https://github.com/goharbor/harbor/releases
我下載的是1.7.0版本的offline離線安裝包
下載后,對(duì)安裝包進(jìn)行解壓:
修改里面的配置文件harbor.cfg(1.7.0版本的,別的版本不一定是這個(gè)配置文件,還有可能是別的:如1.8.2版本的配置文件為harbor.yml,具體情況具體分析):
vim harbor.cfg
這里面我只修改了hostname這個(gè)參數(shù),我改成了我的ip(如果想修改別的參數(shù),參考:https://github.com/goharbor/harbor/blob/master/docs/installation_guide.md)
修改完之后,保存退出,進(jìn)行安裝:
./install.sh
正常安裝情況下的效果,如圖:
這里我遇到的問(wèn)題有:
A、 版本影響
即docker版本和harbor版本的要求。高版本的harbor相應(yīng)的只能匹配高版本的docker,我之前用的是1.8.2版本的harbor,但安裝錯(cuò)誤,因?yàn)槲业膁ocker版本低。故我重新下載了一個(gè)1.7.0版本的harbor,版本匹配,安裝成功。
B、 沒(méi)有開(kāi)啟docker
安裝之前必須開(kāi)啟docker,我是在kali中搭建的,故service docker start
啟動(dòng)harbor:
0x04 漏洞利用
首先我們?cè)L問(wèn):192.168.1.134(我配置的hostname)
進(jìn)入注冊(cè)用戶界面,輸入注冊(cè)信息,點(diǎn)擊注冊(cè)抓包:
發(fā)送到重放模塊
添加我們的poc:
"has_admin_role":true
點(diǎn)擊go
發(fā)現(xiàn)提示成功創(chuàng)建
為了驗(yàn)證,我們利用這個(gè)賬號(hào)再次注冊(cè),發(fā)現(xiàn):
用創(chuàng)建的這個(gè)賬戶進(jìn)行登錄,看一下我們通過(guò)POC創(chuàng)建的用戶的權(quán)限:
成功,是管理員權(quán)限
0x05 修復(fù)方式
升級(jí)Harbor版本到 1.7.6 和 1.8.3
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。