漏洞概述

2021 年 4 月 14 日 GitLab 官方发布安全更新,披露了 CVE-2021-22205 GitLab exiftool 远程命令执行漏洞,攻击者通过上传恶意图片可触发远程命令执行,控制服务器。

由于 GitLab 某些端点路径无需授权,攻击者可在无需认证的情况下完成图片上传,从而执行任意命令。

漏洞 CVE-2021-22205 影响范围

CVE-2021-22205 影响范围从 GitLab 11.9 开始,影响范围为如下版本:

11.9 <= GitLab(CE/EE)< 13.8.8 13.9 <= GitLab(CE/EE)< 13.9.6 13.10 <= GitLab(CE/EE)< 13.10.3

由于 GitLab 针对该漏洞已更新相关补丁,GitLab(CE/EE) 的 13.8.8、13.9.6、13.10.3 以及 13.11 以上版本或极狐 14.x.x 都修复了该问题。(参考 GitLab Critical Security Release: 13.10.3, 13.9.6, and 13.8.8)。

漏洞出处

该漏洞最初由 HackerOne 的 vakzz 反馈问题,该漏洞起始于 GitLab(CE/EE)11.9,GitLab 未验证图片文件 (jpeg/jpg/tiff) 的元数据并直接进行文件解析而造成远程命令被执行 (参考:RCE when removing metadata with ExifTool)。未经授权的用户可以通过该方法对任意用户进行提权操作 (参考:GitLab CE CVE-2021-22205 in the wild)。

漏洞问题查找

极狐GitLab技术支持团队针对漏洞 CVE-2021-22205 进行了复现并查找到了问题到根因。GitLab Inc.的技术团队也建立相关 issue(Gitlab issue: RCE when removing metadata with ExifTool) 跟踪该问题的进展情况。

该问题是在 GitLab-CE/EE 11.9 引入,GitLab 使用开源软件 ExifTool 对图片文件进行处理时未筛查图片文件中是否包含不安全的 shell 脚本而造成。

我们根据实际的用户使用场景模拟了黑客攻击系统漏洞的方式,并测试利用该系统漏洞可以进行哪些攻击手段:

  1. 利用该漏洞执行远程命令,访问操作系统并修改系统文件;
  2. 将 GitLab 的任意用户提升为管理员,并借此访问所有 GitLab 管理的资料 (用户信息、代码仓库以及 Uploads);
  3. 以管理员用户身份,修改或删除 GitLab 的用户数据;
  4. 攻击者可以伪装成任意用户执行 GitLab API 请求。

由于该漏洞的严重级别很高,建议处于漏洞 CVE-2021-22205 影响范围的客户参考下文中的漏洞问题解决及时进行系统升级。

同时,我们验证了在进行系统升级或者安装系统补丁之后,上述漏洞已被修复。

如果需要了解漏洞 CVE-2021-22205 的详细信息可以参考 GitLab issue: RCE when removing metadata with ExifTool。

漏洞问题解决

目前有 2 种方式解决 CVE-2021-22205 漏洞问题:

适用场景:

推荐升级到极狐GitLab最新版本

极狐GitLab技术支持团队推荐您将 GitLab 平台升级至极狐GitLab的最新版本 (或者最近的 3 个次版本,GitLab 版本号的命名规则是<主版本号>.<次版本号>.<修正版本号>)。极狐GitLab将在每月 28 日发布一个新的小版本 (修正版本),随着新版本的升级,漏洞得到了修复并能够享受更多新功能,为本地用户提供更好的用户体验。关于为什么推荐升级到极狐GitLab,可查看 [为什么选择极狐GitLab](https://about.gitlab.cn/is-it-any-good/)。

极狐GitLab的新版本有很多新的 Feature 帮助您实现更加安全高效的 DevOps 实践。

让我们一起看一下极狐GitLab14 在安全功能方面所做的大量优化:

从上面可以看出极狐GitLab其实已经是一个 DevSecOps 平台了,其提供的容器镜像扫描、静态应用安全测试 (SAST)、动态应用安全扫描 (DAST)、密钥检测、License 合规、依赖项扫描以及模糊测试等安全功能,能够完整的覆盖软件开发生命周期的各个阶段,助力企业实现软件供应链安全。

极狐GitLab技术支持

极狐GitLab有非常专业的技术支持团队 (零投诉、高水平),能为付费客户 (专业版/旗舰版) 提供全面的技术支持。极狐GitLab技术团队提供的服务有:

此外,极狐GitLab社区版用户也可以在极狐GitLab中文技术社区获取到第一手的资料以及帮助支持。并且在极狐GitLab的微信群中交流任何与极狐GitLab相关的话题,我们的专业人员都会在群里及时回复大家的问题。(极狐GitLab中文技术社区)。

60天免费试用极狐GitLab专业版

极狐GitLab不仅是源代码管理或CI/CD工具,它是一个覆盖完整软件开发生命周期和DevOps的开放式一体化平台。

企业版试用
售前咨询
联系电话
在线支持
预约演示