製品・ソフトウェアに関する情報
Debian等の複数ベンダの製品における領域間での誤ったリソース移動に関する脆弱性
Title Debian等の複数ベンダの製品における領域間での誤ったリソース移動に関する脆弱性
Summary

urllib3はPython向けの使いやすいHTTPクライアントライブラリです。urllib3のプロキシサポートである「ProxyManager」を使用した場合、「Proxy-Authorization」ヘッダーは適切に設定したプロキシにのみ送信されます。一方、urllib3のプロキシサポートを利用せずにHTTPリクエストを送信したとき、フォワーディングプロキシやトンネリングプロキシを使用していなくても、誤って「Proxy-Authorization」ヘッダーを設定してしまう可能性があります。この場合、urllib3は「Proxy-Authorization」ヘッダーを認証情報を含むものとして扱わず、クロスオリジンリダイレクト時にこのヘッダーを削除しません。この脆弱性が実際に発現するケースは非常に稀ですが、ほとんどのユーザーにとって深刻度は低いと考えられます。そのため、より安全性を高める目的で、urllib3はクロスオリジンリダイレクト時に「Proxy-Authorization」ヘッダーを自動的に削除するようになりました。「Proxy-Authorization」ヘッダーを安全に処理したい場合は、urllib3のプロキシサポートを使用するか、自動リダイレクトを無効にすることを推奨します。ただし、正しくない方法でヘッダーを使うユーザーをさらに保護するため、デフォルトでこのヘッダーを削除するという判断になりました。本アドバイザリによる影響を受ける利用例は少数にとどまると考えられます。この脆弱性を悪用するには、次のすべての条件が必要です。1. urllib3の組み込みプロキシサポートを使わずに「Proxy-Authorization」ヘッダーを設定する。2. HTTPリダイレクトを無効化しない。3. HTTPSオリジンサーバを利用しない、またはプロキシやターゲットオリジンが悪意あるオリジンへリダイレクトする。対策として、ユーザーはバージョン1.26.19または2.2.2へアップデートしてください。アップグレードできない場合は、urllib3の「ProxyManager」で「Proxy-Authorization」ヘッダーを利用するか、HTTPリダイレクトをリクエスト送信時に「redirects=False」として無効にする、または「Proxy-Authorization」ヘッダー自体を使用しないことでこの問題を緩和できます。

Possible impacts 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う情報について、書き換えは発生しません。 さらに、当該ソフトウェアは停止しません。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
Solution

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

Publication Date June 17, 2024, midnight
Registration Date Jan. 8, 2026, 12:41 p.m.
Last Update Jan. 8, 2026, 12:41 p.m.
CVSS3.0 : 警告
Score 6.5
Vector CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Affected System
Python Software Foundation
urllib3 1.26.19 未満
urllib3 2.0.0 以上 2.2.2 未満
Debian
Debian GNU/Linux 11.0
NetApp
Active IQ Unified Manager 
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
Change Log
No Changed Details Date of change
1 [2026年01月08日]
  掲載
Jan. 8, 2026, 12:41 p.m.

NVD Vulnerability Information
CVE-2024-37891
Summary

urllib3 is a user-friendly HTTP client library for Python. When using urllib3's proxy support with `ProxyManager`, the `Proxy-Authorization` header is only sent to the configured proxy, as expected. However, when sending HTTP requests *without* using urllib3's proxy support, it's possible to accidentally configure the `Proxy-Authorization` header even though it won't have any effect as the request is not using a forwarding proxy or a tunneling proxy. In those cases, urllib3 doesn't treat the `Proxy-Authorization` HTTP header as one carrying authentication material and thus doesn't strip the header on cross-origin redirects. Because this is a highly unlikely scenario, we believe the severity of this vulnerability is low for almost all users. Out of an abundance of caution urllib3 will automatically strip the `Proxy-Authorization` header during cross-origin redirects to avoid the small chance that users are doing this on accident. Users should use urllib3's proxy support or disable automatic redirects to achieve safe processing of the `Proxy-Authorization` header, but we still decided to strip the header by default in order to further protect users who aren't using the correct approach. We believe the number of usages affected by this advisory is low. It requires all of the following to be true to be exploited: 1. Setting the `Proxy-Authorization` header without using urllib3's built-in proxy support. 2. Not disabling HTTP redirects. 3. Either not using an HTTPS origin server or for the proxy or target origin to redirect to a malicious origin. Users are advised to update to either version 1.26.19 or version 2.2.2. Users unable to upgrade may use the `Proxy-Authorization` header with urllib3's `ProxyManager`, disable HTTP redirects using `redirects=False` when sending requests, or not user the `Proxy-Authorization` header as mitigations.

Publication Date June 18, 2024, 5:15 a.m.
Registration Date June 18, 2024, 10 a.m.
Last Update Nov. 21, 2024, 6:24 p.m.
Related information, measures and tools
Common Vulnerabilities List