- CNNVD编号:未知
- 危害等级: 高危
- CVE编号:CVE-2021-22201
- 漏洞类型: 任意文件读取
- 威胁类型:远程
- 厂 商:未知
- 漏洞来源:深信服
- 发布时间:2021-06-08
- 更新时间:2021-06-08
漏洞简介
1 组件介绍
GitLab是由GitLabInc开发,使用MIT许可证的基于网络的Git仓库管理工具,具有issue跟踪功能。它使用Git作为代码管理工具,并在此基础上搭建起来的web服务。
2021年6月4日,深信服安全团队监测到一则GitLab组件存在任意文件读取漏洞的信息,漏洞编号:CVE-2021-22201,漏洞威胁等级:中危。
该漏洞是由于json-schema 在抛出另一个异常事件之前尝试再次打开文件,这使得攻击者能够读取服务器上的任意文件,若GitLab托管在云服务上,则可以更进一步造成远程代码执行,获得服务器最高权限。
3、漏洞复现
搭建GitLab组件13.9.3-CE版本环境,复现该漏洞,效果如下:
漏洞公示
补丁分析
补丁只去掉了initialize_data函数中的部分异常处理代码。捕获 JsonParseError 异常后,json-schema 在抛出另一个异常事件之前尝试再次打开文件。这种处理冗余的方式使攻击者能够读取服务器上的任意文件。
参考网站
受影响实体
GitLab 可以运行在几乎所有计算机平台上,由于其跨平台和安全性被广泛使用,成为最流行的仓库管理系统项目之一。全球有数十万 GitLab 云托管服务器,可能受漏洞影响的资产广泛分布于世界各地,中国大陆省份中,浙江、广东、山东、北京、上海等省市位于前列。
目前受影响的GitLab版本:
13.9.0 ≤ GitLab < 13.9.5
补丁
1、如何检测组件系统版本
右上角找到help,点击选择栏中的“帮助”,即可看到版本信息。
2、官方修复建议
当前官方已发布最新版本,建议受影响的用户及时更新升级到最新版本。链接如下:
https://about.gitlab.com/releases/2021/03/31/security-release-gitlab-13-10-1-released/