# CVE-2026-25645: Requests has Insecure Temp File Reuse in its extract_zipped_paths() utility function

Source: https://junglewise.ai/threats/cve-2026-25645-requests-has-insecure-temp-file-reuse-in-its-extract-zipped-paths  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-03-25  
License: CC BY 4.0 with a link back

CVE-2026-25645 · Severity: low · CVSS 3.1 · Published 2026-03-25

Requests is a HTTP library. Prior to version 2.33.0, the `requests.utils.extract_zipped_paths()` utility function uses a predictable filename when extracting files from zip archives into the system temporary directory. If the target file already exists, it is reused without validation. A local attacker with write access to the temp directory could pre-create a malicious file that would be loaded in place of the legitimate one. Standard usage of the Requests library is not affected by this vulnerability. Only applications that call `extract_zipped_paths()` directly are impacted. Starting in version 2.33.0, the library extracts files to a non-deterministic location. If developers are unable to upgrade, they can set `TMPDIR` in their environment to a directory with restricted write access.

Technologies: [requests (PyPI)](https://junglewise.ai/threats/technologies/requests). Vendors: [PyPI](https://junglewise.ai/threats/vendors/pypi).

## Quick answers

**Is CVE-2026-25645 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-25645 being exploited in the wild.

**How severe is CVE-2026-25645?** Low severity, with a CVSS score of 3.1, published 25 March 2026.

**Which products and versions are affected?** requests (PyPI) ECOSYSTEM:introduced=0,fixed=2.33.0.

**Is there a fix for CVE-2026-25645?** Yes. requests (PyPI): upgrade to 2.33.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**Am I affected by CVE-2026-25645?** Check whether you run requests (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- requests (PyPI): upgrade to 2.33.0 or later

  ```sh
  pip install "requests>=2.33.0"
  ```


## Affected products

- requests (PyPI) ECOSYSTEM:introduced=0,fixed=2.33.0

## Identifiers

- CVE-2026-25645
- GHSA-gc5v-m9x4-r6x2
- PYSEC-2026-2275

## Related threats

- [PYSEC-2026-1873 - Requests `Session` object does not verify requests after making first request with verify=False](https://junglewise.ai/threats/cve-2024-35195-requests-session-object-does-not-verify-requests-after-making)
- [Requests vulnerable to .netrc credentials leak via malicious URLs](https://junglewise.ai/threats/cve-2024-47081-requests-vulnerable-to-netrc-credentials-leak-via-malicious-urls)
- [Unintended leak of Proxy-Authorization header in requests](https://junglewise.ai/threats/cve-2023-32681-unintended-leak-of-proxy-authorization-header-in-requests)
- [Insufficiently Protected Credentials in Requests](https://junglewise.ai/threats/cve-2018-18074-insufficiently-protected-credentials-in-requests)
- [Python Requests Session Fixation](https://junglewise.ai/threats/cve-2015-2296-python-requests-session-fixation)
