Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

redhat логотип

CVE-2026-11856

Опубликовано: 03 июл. 2026
Источник: redhat
CVSS3: 6.5
EPSS Низкий

Описание

Successfully using libcurl to do a transfer to a specific HTTP origin (hostA) with Digest authentication and then changing the origin to a different one (hostB) for a second transfer, reusing the same handle, makes libcurl wrongly pass on the Authorization: header field meant for hostA, to hostB.

A flaw was found in curl. When libcurl performs a transfer to an HTTP origin using Digest authentication and then reuses the same connection handle for a subsequent transfer to a different origin, it may incorrectly send the authentication header intended for the first origin to the second. This could lead to unintended information disclosure, potentially allowing an attacker to gain unauthorized access to sensitive data.

Отчет

This Moderate-severity flaw in libcurl can lead to information disclosure when an application reuses a libcurl handle for transfers to different HTTP origins while using Digest authentication. The vulnerability arises from libcurl incorrectly sending the authentication header intended for the initial origin to a subsequent, different origin. This could expose sensitive authentication data to an unintended recipient, potentially compromising user credentials or session information. The only observed impact from this flaw is an integrity impact.

  • libcurl only — the curl CLI is not affected
  • Requires an application to reuse an easy handle across different HTTP origins while Digest auth state is attached — a specific programming pattern
  • Credentials themselves are not leaked; only the authenticated state ("Authorization: ..." HTTP header)
  • Fixed in curl 8.21.0; affected range: 7.10.6 – 8.20.0

Меры по смягчению последствий

Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base or stability. Correct usage of the library: Create a fresh handle for a different origin, or explicitly clear authentication-related state before reuse:

// req.A curl = curl_easy_init(); ... curl_easy_cleanup(curl); // req.B curl = curl_easy_init(); ... curl_easy_cleanup(curl);

Fixed in libcurl 8.21.0; affected range: 7.10.6 – 8.20.0

Затронутые пакеты

ПлатформаПакетСостояниеРекомендацияРелиз
Red Hat Enterprise Linux 10curlAffected
Red Hat Enterprise Linux 6curlOut of support scope
Red Hat Enterprise Linux 7curlOut of support scope
Red Hat Enterprise Linux 8curlAffected
Red Hat Enterprise Linux 9curlAffected
Red Hat OpenShift Container Platform 4rhcosFix deferred
Red Hat OpenShift Dev Spacesdevspaces/code-rhel9Not affected
Red Hat Trusted Profile Analyzerrhtpa/rhtpa-trustification-service-rhel9Not affected
Red Hat Hardened Imagescurl-main-8.21.0-0.1.hum1FixedRHSA-2026:2901724.06.2026
Red Hat Hardened Imagesrust-main-1.96.1-1.hum1FixedRHSA-2026:3497502.07.2026

Показывать по

Дополнительная информация

Статус:

Moderate
Дефект:
CWE-201
https://bugzilla.redhat.com/show_bug.cgi?id=2496767curl: curl: Information disclosure via incorrect Digest authentication header reuse

EPSS

Процентиль: 46%
0.00604
Низкий

6.5 Medium

CVSS3

Связанные уязвимости

CVSS3: 9.8
ubuntu
около 1 месяца назад

Successfully using libcurl to do a transfer to a specific HTTP origin (`hostA`) with **Digest** authentication and then changing the origin to a different one (`hostB`) for a second transfer, reusing the same handle, makes libcurl wrongly pass on the `Authorization:` header field meant for `hostA`, to `hostB`.

CVSS3: 9.8
nvd
около 1 месяца назад

Successfully using libcurl to do a transfer to a specific HTTP origin (`hostA`) with **Digest** authentication and then changing the origin to a different one (`hostB`) for a second transfer, reusing the same handle, makes libcurl wrongly pass on the `Authorization:` header field meant for `hostA`, to `hostB`.

msrc
около 1 месяца назад

cross-origin Digest auth state leak

CVSS3: 9.8
debian
около 1 месяца назад

Successfully using libcurl to do a transfer to a specific HTTP origin ...

CVSS3: 9.8
github
около 1 месяца назад

Successfully using libcurl to do a transfer to a specific HTTP origin (`hostA`) with **Digest** authentication and then changing the origin to a different one (`hostB`) for a second transfer, reusing the same handle, makes libcurl wrongly pass on the `Authorization:` header field meant for `hostA`, to `hostB`.

EPSS

Процентиль: 46%
0.00604
Низкий

6.5 Medium

CVSS3