GitLab修复GitHub import函数中的RCE漏洞
编译:代码卫士
摘要
GitLab 中存在一个漏洞,可导致攻击者对GitLab服务器发动多种攻击,包括托管在云上的GitLab.com平台。该漏洞的编号是CVE-2022-2884,CVSS评分为9.9。
该漏洞由安全研究员 “yvvdwf” 报告,是因为GitLab 从GitHub 导入数据的方式不正确造成的,可被用于在主机服务器上运行命令。
GitLab 使用Octokit 库提供的接口从GitHub API 导入数据。为检索并显示结果,Octokit 使用的是HTTP客户端库 Sawyer。然而,GitLab 在未经清理的情况下直接使用Octokit返回的 Sawyer结果,从而有可能被攻击者插入恶意命令。Yvvdwf 发现该import函数中使用的其中一个参数易受针对 GitLab Redis数据库的命令注入攻击。
在独立的GitLab安装程序中,攻击者可利用命令注入漏洞从Redis提升至 Bash 并向操作系统发送命令。任何潜在攻击者均可通过主机进程权限实现对主机的远程代码执行权限。
虽然该RCE的exploit并不适用于 GitLab.com,但yvvdwf 能够使用其它 Redis 命令将数据从 GitLab.com 复刻到具有公开IP的单独服务器中。他们还能够通过同样的机制投毒GitLab 项目并导致它们不可访问。
具有单独GitLab安装程序和API访问令牌的攻击者可利用该exploit窃取信息、注入恶意命令并执行针对GitLab.com的其它恶意操作。
GitLab 已修复 GitLab.com 中的CVE-2022-2884,并为 GitLab社区版和企业版发布重要的安全发布。
建议所有用户升级GitLab班恩。对于无法立即升级的组织机构,GitLab 建议在修复系统前禁用imports函数。
虽然使用云或更新了自托管版本GitLab的用户是安全的,不过使用 Octakit 与GitHub交互的其它服务应当保持警惕并确保正确检查了所传递的数据并通过该库接收。
GitLab 修复两个严重的远程代码执行漏洞
GitLab 修复严重的RCE漏洞
GitLab 企业版修复严重的账户接管漏洞
研究员发现针对 GitLab CI 管道的供应链攻击
https://portswigger.net/daily-swig/gitlab-patches-rce-bug-in-github-import-function
题图:土星及其卫星,NASA
本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。
奇安信代码卫士 (codesafe)
国内首个专注于软件开发安全的产品线。