muff1nmigi/keycloak-security-research
GitHub: muff1nmigi/keycloak-security-research
针对 Keycloak 身份认证服务器的安全研究仓库,提供多个已修复 CVE 的可复现 PoC 与技术分析报告。
Stars: 0 | Forks: 0
# keycloak-security-research
针对 [Keycloak](https://www.keycloak.org/) 的安全研究,Keycloak 是 CNCF 的开源身份与访问管理服务器。本仓库记录了我报告并被分配在上游修复的 CVE,每个都包含可复现的修复前后对比 PoC 脚本和技术分析。
每个 CVE 文件夹都提供了一个独立的 PoC(`poc/CVE-2026-XXXX.sh `),它会启动本地的 Docker Keycloak,运行漏洞利用,并在受影响版本输出 `VULNERABLE`(存在漏洞)判定,在修复版本输出 `FIXED`(已修复)判定,同时附上捕获的证据日志和终端截图。
由 Evan Hendra ([@muff1nmugi](https://github.com/muff1nmigi)) 报告。CVSS、CWE 和日期遵循 Red Hat 的安全数据(这些 CVE 的 CNA)。
## CVE
| CVE | 标题 | CVSS | CWE | 修复版本 | 记录 |
|-----|-------|------|-----|----------|--------|
| [CVE-2026-4636](CVE-2026-4636/) | UMA 跨所有者资源绑定 | High 8.1 | CWE-551 | 26.5.7 | [Red Hat](https://access.redhat.com/security/cve/cve-2026-4636) |
| [CVE-2026-4634](CVE-2026-4634/) | 通过 scope 的算法复杂度 DoS | High 7.5 | CWE-1050 | 26.5.7 | [Red Hat](https://access.redhat.com/security/cve/cve-2026-4634) |
| [CVE-2026-7571](CVE-2026-7571/) | OIDC 隐式流程强制绕过 | High 7.1 | CWE-472 | 26.6.2 | [Red Hat](https://access.redhat.com/security/cve/cve-2026-7571) |
| [CVE-2026-9792](CVE-2026-9792/) | ROPC 授权策略条件绕过 | Medium 6.5 | CWE-280 | 26.6.3 | [Red Hat](https://access.redhat.com/security/cve/cve-2026-9792) |
| [CVE-2026-7500](CVE-2026-7500/) | Account API 功能禁用绕过 | Medium 5.4 | CWE-425 | 26.6.3 | [Red Hat](https://access.redhat.com/security/cve/cve-2026-7500) |
| [CVE-2026-4628](CVE-2026-4628/) | UMA resource_set RRM PUT 绕过 | Medium 4.3 | CWE-284 | 26.6.2 | [Red Hat](https://access.redhat.com/security/cve/cve-2026-4628) |
| [CVE-2026-9791](CVE-2026-9791/) | Organizations 域禁用绕过 | Medium 4.3 | CWE-863 | 26.6.3 | [Red Hat](https://access.redhat.com/security/cve/cve-2026-9791) |
| [CVE-2026-3190](CVE-2026-3190/) | UMA 权限票据列出 | Medium 4.3 | CWE-280 | 26.5.6 | [Red Hat](https://access.redhat.com/security/cve/cve-2026-3190) |
| [CVE-2026-4874](CVE-2026-4874/) | 通过 client_session_host 的 SSRF | Low 3.1 | CWE-918 | 26.6.3 | [Red Hat](https://access.redhat.com/security/cve/cve-2026-4874) |
上述所有问题均已在上游 Keycloak 中修复,每一行都链接了严重程度和 Red Hat 的记录。
## 复现 PoC
每个脚本都需要 Docker 并会拉取相应的 Keycloak 镜像。例如:
```
cd CVE-2026-3190/poc
./CVE-2026-3190.sh 26.5.2 28080 # affected -> VULNERABLE
./CVE-2026-3190.sh 26.5.6 28081 # fixed -> FIXED
```
该脚本会启动 Keycloak,执行检查,打印出 `=== VERDICT ===` 块,并在退出时移除其自身的容器。
## 目录结构
每个 `CVE-2026-XXXX/` 文件夹包含:
- `README.md` - 分析报告(摘要、根本原因、影响、PoC、修复方案、参考链接)
- `poc/CVE-2026-XXXX.sh` - 修复前后的复现脚本
- `poc/evidence/` - 两次运行捕获的 `output-.log`
- `poc/screenshots/` - 两次判定结果的终端截图
## 许可证
PoC 脚本:MIT。分析报告:CC-BY-4.0。请参阅 [LICENSE](LICENSE)。
标签:CISA项目, Cutter, Keycloak, 拒绝服务, 授权绕过, 漏洞 PoC, 请求拦截, 身份与访问管理, 配置错误