gitlab 任意文件读取漏洞
  • cnnvd编号:未知
  • 危害等级: 高危 
  • cve编号:cve-2021-22201
  • 漏洞类型: 任意文件读取
  • 威胁类型:远程
  • 厂       商:未知
  • 漏洞来源:深信服
  • 发布时间:2021-06-08
  • 更新时间:2021-06-08

漏洞简介

组件介绍

gitlab是由gitlabinc开发,使用mit许可证的基于网络的git仓库管理工具,具有issue跟踪功能。它使用git作为代码管理工具,并在此基础上搭建起来的web服务。

2、漏洞描述

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、官方修复建议

当前官方已发布最新版本,建议受影响的用户及时更新升级到最新版本。链接如下: