The vulnerability lies in the urlopen method of the HTTPConnectionPool class in urllib3. When handling redirects, this function was not configured to strip sensitive headers from requests made to a different origin. This flaw could be exploited if an application uses the low-level ProxyManager.connection_from_url().urlopen() API to make requests with assert_same_host=False, allowing an attacker to potentially capture sensitive information like authentication tokens or cookies by redirecting the client to a server under their control. The patch for this vulnerability, found in commit 5ec0de499b9166ca71c65ab04f2a7e4eb0d66fcc, introduces a check within the urlopen method. This check verifies if the redirect is to a different host and, if so, removes headers defined in Retry.DEFAULT_REMOVE_HEADERS_ON_REDIRECT before proceeding. This ensures that sensitive information is not leaked during cross-origin redirects.