CVE-2026-2575CVE-2026-2575是影响Keycloak身份认证服务器的一个高危拒绝服务漏洞。该漏洞允许未经认证的远程攻击者通过发送特制的高度压缩SAMLRequest,利用SAML Redirect Binding机制触发服务器资源耗尽。攻击者利用DEFLATE压缩算法的特性,在解压过程中产生远超原始数据大小的输出,导致服务器内存耗尽(OutOfMemoryError),最终造成进程终止和服务不可用。由于攻击无需认证且利用难度较低,任何可访问Keycloak SAML端点的攻击者均可发起此攻击,对使用Keycloak进行身份认证的企业应用造成严重影响。该漏洞属于应用程序级别的DoS攻击,与传统的网络层DoS不同,更难被常规防护设备检测和拦截。
该漏洞源于Keycloak在处理SAML Redirect Binding时对SAMLRequest参数缺乏有效的输入验证和资源限制。当用户通过SAML Redirect Binding发起认证时,SAMLRequest参数使用DEFLATE算法压缩并Base64编码后附加在URL中。服务器接收到请求后会进行解压缩处理,但未对解压后的数据大小设置上限。攻击者可构造一个高度压缩的SAMLRequest,使原始数十MB的数据压缩至几KB,但在解压时膨胀数百倍。当多个并发请求到达时,服务器堆内存迅速被消耗殆尽,触发JVM的OutOfMemoryError。值得注意的是,DEFLATE算法允许使用滑动窗口和重复引用机制,理论上可实现超过10000:1的压缩比,这使得攻击者可以用极小的请求耗尽大量服务器内存。攻击者可通过持续发送此类请求,实现对服务的完全拒绝服务攻击。