CVE-2019-16097:Harbor任意管理員註冊漏洞復現

0) 原文參考

原創 Timeline Sec Richard

1) Harbor簡介

      Harbor是一個用於存儲和分發Docker鏡像的企業級Registry服務器,通過添加一些企業必需的功能特性,例如安全、標識和管理等,擴展了開源Docker Distribution。

     作爲一個企業級私有Registry服務器,Harbor提供了更好的性能和安全。提升用戶使用Registry構建和運行環境傳輸鏡像的效率。

 

2) 原理概述

      該漏洞是一個垂直越權漏洞,因註冊模塊對參數校驗不嚴格,可導致任意管理員註冊。攻擊者註冊管理員賬號後可以接管Harbor鏡像倉庫,從而寫入惡意鏡像,最終可以感染使用此倉庫的客戶端等。

 

3) 影響範圍

Harbor1.7.6之前版本和Harbor1.8.3之前版本

 

 

4) 環境搭建

從這裏下載:

https://github.com/goharbor/harbor/releases

修改裏面的配置文件harbor.cfg(1.7.0版本的,別的版本不一定是這個配置文件,還有可能是別的:如1.8.2版本的配置文件爲harbor.yml,具體情況具體分析):

vim harbor.cfg

這裏面我只修改了hostname這個參數,我改成了我的ip(如果想修改別的參數,參考:https://github.com/goharbor/harbor/blob/master/docs/installation_guide.md)

修改完之後,保存退出,進行安裝:

./install.sh

正常安裝情況下的效果,如圖:

 

 

 

 

啓動harbor:

5) 漏洞利用

首先我們訪問:192.168.1.134(我配置的hostname)

進入註冊用戶界面,輸入註冊信息,點擊註冊抓包:

 

發送到重放模塊

添加我們的poc:

"has_admin_role":true

 

 

點擊go

 

發現提示成功創建

爲了驗證,我們利用這個賬號再次註冊,發現:

 

用創建的這個賬戶進行登錄,看一下我們通過POC創建的用戶的權限:

 

成功,是管理員權限

6)  修復方式

升級Harbor版本到 1.7.6 和 1.8.3

參考鏈接:

https://www.cnblogs.com/lanyincao/p/11571059.html

https://github.com/goharbor/harbor/blob/master/docs/installation_guide.md

https://blog.51cto.com/lzlutao/2388635?source=dra

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章