首页 > 安全公告 > 正文

关于ruby-saml身份认证绕过漏洞(CVE-2025-25291、CVE-2025-25292)的安全公告

来源:时间:2025-03-13点击数:

大工网安告[2025010]

一、 情况分析

ruby-saml是GitLab用于实现SAML单点登录功能的Ruby工具包,通过OmniAuth-SAML进行集成,帮助用户实现便捷的身份验证和访问控制。

近日,官方修复ruby-saml身份认证绕过漏洞(CVE-2025-25291、CVE-2025-25292),ruby-saml使用了两种XML解析器ReXML和Nokogiri,由于解析XML的方式不同导致签名验证错误从而产生身份验证绕过。在GitLab中存在此漏洞实例。鉴于该漏洞影响范围较大,建议大家尽快做好自查及防护。

威胁类型:身份认证绕过。

技术类型:加密签名验证不当。

利用条件:无

危害描述:ruby-saml使用了两种XML解析器ReXML和Nokogiri,由于解析XML 的方式不同导致签名验证错误从而产生身份验证绕过。


二、 影响版本

ruby-saml <= 1.12.3

1.13.0 <= ruby-saml < 1.18.0

omniauth-saml <= 2.2.2

omniauth-saml <= 1.10.5

其他受影响资产:

GitLab CE/EE < 17.7.7

GitLab CE/EE 17.8.* < 17.8.5

GitLab CE/EE 17.9.* < 17.9.2


三、 处置建议

修复解决方案(含漏洞补丁):

目前官方已发布安全更新,建议用户尽快升级至最新版本:

ruby-saml >= 1.12.4

ruby-saml >= 1.18.0

omniauth-saml >= 1.10.6

omniauth-saml >= 2.2.3

官方补丁下载地址:

https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.12.4

https://github.com/SAML-Toolkits/ruby-saml/releases/tag/v1.18.0


由于GitLab 中存在此漏洞实例,建议将GitLab CE/EE升级到安全版本:

GitLab CE/EE >= 17.7.7

GitLab CE/EE 17.8.* >= 17.8.5

GitLab CE/EE 17.9.* >= 17.9.2

官方补丁下载地址:

https://about.gitlab.com/update


缓解措施:

1.启用GitLab的双因素身份认证(2FA),并确保所有用户启用该功能;

2.禁用SAML的双因素身份认证绕过选项;

3.配置gitlab_rails['omniauth_block_auto_created_users'] = true,要求管理员审批自动创建的用户。


地址:大连市甘井子区凌工路2号,大连理工大学 邮编:116024

电话:0411-84708645 copyright2013 大连理工大学网络与信息化中心