<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Urllib3 — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/tags/urllib3/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Mon, 11 May 2026 14:53:59 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/tags/urllib3/feed.xml" rel="self" type="application/rss+xml"/><item><title>urllib3 Sensitive Header Leak in Low-Level Redirects (CVE-2026-44431)</title><link>https://feed.craftedsignal.io/briefs/2026-05-urllib3-header-leak/</link><pubDate>Mon, 11 May 2026 14:53:59 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-05-urllib3-header-leak/</guid><description>Sensitive headers (`Authorization`, `Cookie`, and `Proxy-Authorization`) are forwarded across origins in proxied low-level redirects when using `HTTPConnection.urlopen()` instances created via `ProxyManager.connection_from_url()` in urllib3 versions before 2.7.0, potentially exposing credentials to unintended third parties; upgrade to version 2.7.0 or later to remediate this issue.</description><content:encoded><![CDATA[<p>The urllib3 library, a popular Python HTTP client, is vulnerable to sensitive header leakage (CVE-2026-44431) when handling cross-origin redirects in its low-level API. Specifically, when applications use <code>HTTPConnection.urlopen()</code> instances created via <code>ProxyManager.connection_from_url()</code> and allow cross-origin redirects, sensitive headers like <code>Authorization</code>, <code>Cookie</code>, and <code>Proxy-Authorization</code> are inadvertently forwarded to the redirect destination. This behavior can expose sensitive credentials to unintended third-party servers. This vulnerability affects urllib3 versions before 2.7.0. Defenders should prioritize upgrading urllib3 to version 2.7.0 or later to mitigate this risk and ensure proper handling of sensitive headers during redirects. If immediate upgrade is not feasible, applications should avoid using the vulnerable low-level redirect flow for cross-origin redirects and consider switching to <code>ProxyManager.request()</code> instead.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>The attacker controls a malicious website or compromises an existing one.</li>
<li>A user&rsquo;s application (using a vulnerable urllib3 version) initiates an HTTP request to a controlled domain.</li>
<li>The attacker&rsquo;s server responds with an HTTP 302 redirect to a different, attacker-controlled origin.</li>
<li>The application, using <code>ProxyManager.connection_from_url().urlopen(..., assert_same_host=False)</code>, follows the redirect.</li>
<li>Due to the vulnerability, the application inappropriately forwards sensitive headers (Authorization, Cookie, Proxy-Authorization) along with the redirected request.</li>
<li>The attacker&rsquo;s server receives the forwarded request containing the sensitive headers, potentially including authentication tokens or session IDs.</li>
<li>The attacker captures and logs these sensitive headers.</li>
<li>The attacker uses the captured credentials to impersonate the user or gain unauthorized access to protected resources.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this vulnerability (CVE-2026-44431) can lead to the exposure of sensitive user credentials, including authentication tokens and session cookies. The impact ranges from account compromise to unauthorized access to sensitive data and resources. The number of potential victims depends on the adoption rate of vulnerable urllib3 versions and the frequency with which applications utilize the susceptible low-level redirect flow. Applications that handle authentication or authorization via HTTP headers are particularly at risk.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade to urllib3 version 2.7.0 or later to remediate the vulnerability (CVE-2026-44431), where sensitive headers are stripped from redirects followed by <code>HTTPConnection</code>.</li>
<li>If upgrading is not immediately possible, avoid using the low-level redirect flow (<code>ProxyManager.connection_from_url().urlopen(..., assert_same_host=False)</code>) for cross-origin redirects.</li>
<li>Consider switching to <code>ProxyManager.request()</code> if appropriate for your use case, as this high-level API strips sensitive headers during redirects by default.</li>
<li>Deploy the Sigma rule &ldquo;Detect urllib3 Low-Level API Cross-Origin Redirect with Sensitive Headers&rdquo; to detect potential exploitation attempts by monitoring for the vulnerable code pattern.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>urllib3</category><category>header-leak</category><category>vulnerability</category></item></channel></rss>