影响范围
- Gitlab CE/EE < 13.10.3
- Gitlab CE/EE < 13.9.6
- Gitlab CE/EE < 13.8.8
漏洞类型
远程命令执行
利用条件
影响范围应用
漏洞成因
在上传图片文件时,Gitlab Workhorse将扩展名为jpg|jpeg|tiff的文件通过ExifTool删除任何非白名单标记,其中一个支持的格式是DjVu,当解析DjVu注释时,标记被赋值为convert C escape sequences,漏洞作者文章如下:
ExifTool CVE-2021-22204 - Arbitrary Code Execution | devcraft.io
#convert C escape sequences 出现以下代码
$tok = eval qq{"$tok"};
漏洞复现
简易测试 :
反弹shell:
漏洞EXP
https://github.com/Al1ex/CVE-2021-22205
此漏洞EXP只用于项目方自我检测,如果有人进行恶意攻击,作者概不负责
安全建议
建议用户将GitLab社区版(CE)和企业版(EE)版本升级至13.10.3、13.9.6和13.8.8进行防护,下载地址:https://about.gitlab.com/update
参考链接
ExifTool CVE-2021-22204 - Arbitrary Code Execution | devcraft.io