CVE-2026-33495ORY Oathkeeper 是一个身份与访问代理及访问控制决策 API。在 26.2.0 版本之前,该软件存在安全逻辑缺陷。尽管配置选项 `serve.proxy.trust_forwarded_headers`(默认为 false)旨在控制是否信任 `X-Forwarded-*` 请求头,但 Oathkeeper 并未正确遵守此配置。系统在评估规则时总是会考虑 `X-Forwarded-Proto` 头。如果部署环境中针对 HTTP 和 HTTPS 配置了不同的访问规则,攻击者可以通过注入该头部欺骗代理,触发错误的规则匹配,从而绕过安全限制。
该漏洞的核心在于 Ory Oathkeeper 在处理反向代理转发的头部信息时,忽略了自身的安全配置。Oathkeeper 通常部署在 CDN 或反向代理之后,依赖 `X-Forwarded-Proto` 来判断原始请求协议(HTTP 或 HTTPS)。在受影响版本中,即使 `serve.proxy.trust_forwarded_headers` 设置为 false,系统依然会读取并基于 `X-Forwarded-Proto` 头的值来匹配访问控制规则。利用该漏洞需要满足特定前提:目标系统必须为 HTTP 和 HTTPS 请求配置了差异化的规则,且攻击者能够触发其中一种规则。在此情况下,攻击者只需在请求中添加伪造的 `X-Forwarded-Proto` 头(例如将 HTTP 请求伪装为 HTTPS),即可使 Oathkeeper 应用针对 HTTPS 的宽松规则,从而绕过原本针对 HTTP 请求的严格限制。