CVE-2026-21441
Decompression Bomb Vulnerability in urllib3 Streaming API
Publication date: 2026-01-07
Last updated on: 2026-01-07
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| urllib3 | urllib3 | From 2.6.3|end_excluding=2.6.3 (inc) |
| urllib3 | urllib3 | to 2.6.3 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-409 | The product does not handle or incorrectly handles a compressed input with a very high compression ratio that produces a large output. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability exists in urllib3's streaming API for handling HTTP responses. When processing HTTP redirect responses with streaming enabled (preload_content=False) and redirects not disabled, urllib3 versions from 1.22 up to before 2.6.3 would decompress the entire response body unnecessarily before any read methods were called. This decompression was not limited by configured read limits, allowing a malicious server to send a decompression bomb that triggers excessive resource consumption on the client.
How can this vulnerability impact me? :
The vulnerability can lead to excessive resource consumption on the client side, such as high memory and CPU usage, caused by decompressing large or maliciously crafted HTTP redirect response bodies. This can degrade application performance, cause crashes, or denial of service when streaming content from untrusted sources without disabling redirects.
What immediate steps should I take to mitigate this vulnerability?
To mitigate this vulnerability, upgrade urllib3 to at least version 2.6.3. If upgrading immediately is not possible, disable redirects by setting redirect=False for requests to untrusted sources when using the streaming API with preload_content=False.