GitHub 发现 ruby-saml 严重漏洞,账户安全岌岌可危

开源的 ruby - saml 库中,近日披露了两个极为严重的安全漏洞。这两个漏洞等级颇高,可能会让恶意攻击者有机可乘,绕过安全断言标记语言(SAML)的身份验证保护机制。

SAML 是一种基于 XML 的标记语言,同时也是一项开放标准,主要用于在不同各方之间交换身份验证以及授权数据。它支持单点登录(SSO)等实用功能,这使得用户能够凭借一组凭据,便捷地访问多个站点、服务以及应用程序。

这两个漏洞被分别标记为 CVE - 2025 - 25291 和 CVE - 2025 - 25292,在通用漏洞评分系统(CVSS)中,得分高达 8.8 分(满分 10 分)。受影响的库版本如下:

< 1.12.4

>= 1.13.0、< 1.18.0

这两个漏洞产生的根源,是 REXML 和 Nokogiri 这两种工具在解析 XML 时,方式存在差异。这种差异会导致两个解析器针对相同的 XML 输入,生成截然不同的文档结构。

而这种解析器的差异,给攻击者创造了可乘之机,他们能够借此执行签名包装攻击,最终导致身份验证被绕过。目前,ruby - saml 版本 1.12.4 和 1.18.0 已经对这些漏洞进行了修复。

微软旗下的 GitHub 在 2024 年 11 月发现并报告了这些漏洞。GitHub 方面表示,恶意攻击者极有可能利用这些漏洞,实施账户接管攻击。

GitHub 安全实验室研究员 Peter Stöckli 在一篇博文中指出:"攻击者只要拥有一个有效的签名,就能够利用目标组织用于验证 SAML 响应或断言的密钥,构建出 SAML 断言,进而得以以任意用户身份登录。"

他们还特别强调,该问题的关键在于哈希验证和签名验证之间出现了 "脱节",正是这种脱节,为攻击者利用解析器差异实施攻击,打开了方便之门。

此外,在版本 1.12.4 和 1.18.0 中,在处理压缩的 SAML 响应时,还意外引入了一个远程拒绝服务(DoS)缺陷(CVE - 2025 - 25293,CVSS 评分:7.7)。所以,建议用户尽快更新到最新版本,以此防范潜在的安全威胁。

值得一提的是,此次发现距 GitLab 和 ruby - saml 着手解决另一个同样可能导致身份验证绕过的关键漏洞(CVE - 2024 - 45409,CVSS 评分:10.0),仅仅过去了将近六个月的时间。

GitLab 发布更新

极狐 GitLab 已经发布了更新,用于修复社区版(CE)和企业版(EE)中的 CVE -2025-25291 和 CVE-2025-25292 漏洞,对应的版本为 17.9.2、17.8.5 和 17.7.7 。

GitLab 方面表示:"在使用 SAML 身份验证的 GitLab CE/EE 实例中,在某些特定情况下,若攻击者能够获取来自身份提供商(IdP)的有效签名 SAML 文档,就有可能以环境中 SAML IdP 的其他有效用户身份进行验证。"

不过,GitLab 也指出,这种攻击要想成功,前提是攻击者已经攻破了一个有效的用户账户,以此来绕过身份验证。

相关推荐
mingzhi6120 分钟前
绿盟面试题
安全·web安全·网络安全·绿盟科技
cllsse1 小时前
网络安全设备配置与管理-实验4-防火墙AAA服务配置
网络·网络安全
蒜白3 小时前
10-- 网络攻击防御原理全景解析 | 从单包攻防到DDoS军团作战(包你看一遍全记住)
网络安全·网络工程师·ddos
uhakadotcom6 小时前
使用PySpark与阿里云MaxCompute的简单指南
后端·面试·github
拾柒SHY6 小时前
iwebsec-updatexml报错注入
sql·网络安全
dblens 数据库管理和开发工具8 小时前
GitHub Actions上关于“Cannot Find Matching Keyid”或“Corepack/PNPM Not Found”的错误
github
uhakadotcom10 小时前
使用 Flowise 构建和管理大型语言模型的流程
后端·面试·github
uhakadotcom11 小时前
teable:你的数据管理和协作利器
前端·面试·github
MC何失眠11 小时前
vulhub靶机----基于docker的初探索,环境搭建
运维·web安全·网络安全·docker·容器