关于GitLab SAML身份验证绕过漏洞(CVE-2024-45409)的安全预警
一、 基本情况
GitLab是一个用于仓库管理系统的开源项目,其使用Git作为代码管理工具,可以通过Web界面访问公开或私人项目。SAML(Security Assertion Markup Language,安全断言标记语言)是一种基于XML的标准,用于在不同的安全域之间交换认证和授权数据,它被广泛应用于单点登录(SSO)解决方案。
二、 漏洞描述
GitLab中修复了一个SAML身份验证绕过漏洞(CVE-2024-45409),该漏洞的CVSS评分为10.0。
OmniAuth-SAML和Ruby-SAML库在GitLab中用于处理基于SAML的身份验证,由于这些库/工具无法正确验证SAML响应的签名,导致存在SAML身份验证绕过漏洞(CVE-2024-45409),威胁者可以制作恶意 SAML 响应从而绕过SAML身份验证并获得对GitLab实例的访问权限。
三、 影响范围
GitLab CE/EE 17.3.x < 17.3.3
GitLab CE/EE 17.2.x < 17.2.7
GitLab CE/EE 17.1.x < 17.1.8
GitLab CE/EE 17.0.x < 17.0.8
GitLab CE/EE 16.11.x < 16.11.10
OmniAuth-SAML和Ruby-SAML依赖项:
omniauth-saml <= 2.1.0
ruby-saml <= 1.12.2
1.13.0 <= ruby-saml <= 1.16.0
四、 修复建议
目前该漏洞已经修复,受影响用户可升级到以下版本:
GitLab CE/EE 17.3.x >= 17.3.3
GitLab CE/EE 17.2.x >= 17.2.7
GitLab CE/EE 17.1.x >= 17.1.8
GitLab CE/EE 17.0.x >= 17.0.8
GitLab CE/EE 16.11.x >= 16.11.10
或将OmniAuth-SAML和Ruby-SAML依赖项升级到以下修复版本:
omniauth-saml:升级到2.2.1、2.1.2、1.10.5或更高版本
ruby-saml:升级到1.17.0、1.12.3或更高版本
下载链接:
https://about.gitlab.com/
五、 参考链接
https://about.gitlab.com/releases/2024/09/17/patch-release-gitlab-17-3-3-released/
https://github.com/SAML-Toolkits/ruby-saml/security/advisories/GHSA-jw9c-mfg7-9rx2
https://github.com/omniauth/omniauth-saml/security/advisories/GHSA-cvp8-5r8g-fhvq