发布时间:2024-10-31 浏览次数: 次
CVE-2021-38647是一种远程代码执行漏洞,影响了OpenClinic GA 5.17.1版本及之前的所有版本。OpenClinic GA是一款开源医院管理系统,用于管理医院的日常运营。
一、基本内容
对于依赖 Keycloak 进行安全身份和访问管理的组织来说,在一个令人担忧的发展中,在其 SAML 签名验证过程中发现了一个高严重性漏洞。此漏洞被跟踪为 CVE-2024-8698,可能允许恶意行为者绕过身份验证机制,从而导致潜在的权限提升和用户模拟攻击。
该漏洞存在于 Keycloak 的 XMLSignatureUtil 类中,该类负责验证 SAML 签名。该类仅根据签名在 XML 结构中的位置错误地确定签名是应用于整个 SAML 文档还是特定断言。这种疏忽忽略了关键的 “Reference” 元素,该元素明确标识了文档的签名部分。
利用此缺陷,攻击者可以构建恶意 SAML 响应,其中包括有效的签名断言和未签名的断言。通过战略性地放置未签名的断言,他们可以欺骗 Keycloak 的错误验证逻辑接受整个响应,即使关键部分仍未验证。
此漏洞的影响非常严重。在身份提供商 (IdP) 的上下文中,成功利用此漏洞可让攻击者获得对高权限帐户的未授权访问,从而有效地破坏整个系统。同样,在服务提供商 (SP) 中,攻击者可以冒充合法用户,获得对他们无权使用的资源的访问权限。
25.0.5 及以下的 Keycloak 版本容易受到此漏洞的影响。此问题已在版本 25.0.6 中得到解决。强烈建议立即将所有 Keycloak 部署更新到此版本或更高版本。
二、分析研判
这篇文章提供了有关Keycloak SAML签名验证过程中的高危漏洞CVE-2024-8698的信息。该漏洞可能允许攻击者绕过身份验证机制,从而导致潜在的权限提升和用户模拟攻击。漏洞存在于Keycloak的XMLSignatureUtil类中,负责验证SAML签名。
攻击者可以通过构建恶意SAML响应来利用此漏洞,其中包含有效的签名断言和未签名的断言。通过战略性地放置未签名的断言,攻击者可以欺骗Keycloak的错误验证逻辑接受整个响应,即使关键部分仍未验证。这种攻击方式可以导致攻击者获得对高权限帐户的未授权访问,并有效地破坏整个系统。同样,在服务提供商(SP)中,攻击者可以冒充合法用户,获得对他们无权使用的资源的访问权限。
Keycloak版本25.0.5及以下易受到此漏洞的影响。该问题已在版本25.0.6中得到解决。因此,建议所有使用Keycloak进行安全身份和访问管理的组织立即将其更新到此版本或更高版本,以消除这个漏洞的风险。
三、应对策略
立即更新Keycloak版本:由于该漏洞存在于Keycloak 25.0.5及以下版本中,因此强烈建议组织立即将所有Keycloak部署更新到版本25.0.6或更高版本。
监控和检测:组织应加强监控和检测措施,以便及时发现可能存在的攻击,并采取相应的响应措施。
强化身份验证:为了防止攻击者利用此漏洞进行身份模拟攻击,组织可以采取额外的身份验证措施,例如多因素身份验证。
安全意识培训:通过加强员工安全意识培训,教育员工如何避免使用弱密码、点击不明链接等安全风险行为,从而减少受到攻击的风险。