GitLab 目前被曝光的一个严重安全漏洞使得攻击者可以在不与用户互动的情况下接管账户,原因是密码重置功能存在缺陷。GitLab Community Edition (CE) 和 Enterprise Edition (EE) 的用户被警告立即进行补丁更新,因该漏洞的CVSS评分高达10。
根据一份发布于1月11日的GitLab安全公告,该严重的GitLab账户接管漏洞在5月1日的1610版本中引入,当时该DevOps平台添加了通过备用电子邮件地址重置密码的选项。
蘑菇加速器下载安装“在未经验证的旧版中,可以通过构造一个特定格式的HTTP请求,实现将密码重置邮件发送到未验证的电子邮件地址,从而实现账户接管,”GitLab的一位发言人向SC Media表示。
该漏洞被标记为CVE20237028,在1656、1664和1672版本中已被修复,这些版本已于周四发布,并且补丁也已回退至1616、1629、1637和1645版本。
同时,GitLab提议用户在所有账户上启用双重身份验证2FA。开通2FA的用户并不容易受到CVE20237028的攻击,但仍然面临密码可能被未经授权方重置的风险。
公司表示尚未在GitLabcom或GitLab Dedicated实例中发现该关键漏洞的利用,但自托管的GitLab实例的用户仍需检查自己的日志以监控滥用情况。
“所有受影响的客户都已被告知将在1月11日之前发布安全补丁,以确保他们的团队能够及时做好准备以迅速应对,”GitLab的一位发言人说。
GitLab将发现并报告该漏洞的用户asterion04归功于GitLab的HackerOne漏洞悬赏计划。
根据公司说明,使用自托管实例的GitLab CE或EE的客户可以通过以下两种方式检查日志是否存在潜在的利用:
检查 gitlabrails/productionjsonlog,查找针对 /users/password 路径的HTTP请求,其 paramsvalueemail 包含多个电子邮件地址的JSON数组检查 gitlabrails/auditjsonlog,查找 metacallerid 为 PasswordsController#create 的条目,以及其 targetdetails 包含多个电子邮件地址的JSON数组该平台表示,它已经修订了密码重置的逻辑以防止未来的漏洞,包括不再支持一次提交多个电子邮件地址以获取重置链接。
在周四的安全公告中,GitLab还提醒用户注意另外四个漏洞,其中包括一个涉及GitLab CE和EE中Slack和Mattermost集成的严重漏洞。
漏洞名称CVSS评分描述CVE2023535696允许Slack/Mattermost GitLab集成被滥用,以其他用户身份执行斜杠命令。CVE2023481276允许通过更改以前获得批准的合并请求来绕过CODEOWNERS审批。CVE2023695566允许在一个