Harbor任意管理员注册实现CVE-2019-16097漏洞的示例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
0x00 Harbor简介
Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全、标识和管理等,扩展了开源Docker Distribution。
作为一个企业级私有Registry服务器,Harbor提供了更好的性能和安全。提升用户使用Registry构建和运行环境传输镜像的效率。
0x01 原理概述
该漏洞是一个垂直越权漏洞,因注册模块对参数校验不严格,可导致任意管理员注册。攻击者注册管理员账号后可以接管Harbor镜像仓库,从而写入恶意镜像,最终可以感染使用此仓库的客户端等。
0x02 影响范围
Harbor1.7.6之前版本和Harbor1.8.3之前版本
0x03 环境搭建
从这里下载:
https://github.com/goharbor/harbor/releases
我下载的是1.7.0版本的offline离线安装包
下载后,对安装包进行解压:
修改里面的配置文件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
正常安装情况下的效果,如图:
这里我遇到的问题有:
A、 版本影响
即docker版本和harbor版本的要求。高版本的harbor相应的只能匹配高版本的docker,我之前用的是1.8.2版本的harbor,但安装错误,因为我的docker版本低。故我重新下载了一个1.7.0版本的harbor,版本匹配,安装成功。
B、 没有开启docker
安装之前必须开启docker,我是在kali中搭建的,故service docker start
启动harbor:
0x04 漏洞利用
首先我们访问:192.168.1.134(我配置的hostname)
进入注册用户界面,输入注册信息,点击注册抓包:
发送到重放模块
添加我们的poc:
"has_admin_role":true
点击go
发现提示成功创建
为了验证,我们利用这个账号再次注册,发现:
用创建的这个账户进行登录,看一下我们通过POC创建的用户的权限:
成功,是管理员权限
0x05 修复方式
升级Harbor版本到 1.7.6 和 1.8.3
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。