Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Oct 27, 2025

This PR contains the following updates:

Package Change Age Confidence
pip (changelog) ==25.0.1 -> ==25.3 age confidence

GitHub Vulnerability Alerts

CVE-2025-8869

Summary

In the fallback extraction path for source distributions, pip used Python’s tarfile module without verifying that symbolic/hard link targets resolve inside the intended extraction directory. A malicious sdist can include links that escape the target directory and overwrite arbitrary files on the invoking host during pip install.

Impact

Successful exploitation enables arbitrary file overwrite outside the build/extraction directory on the machine running pip. This can be leveraged to tamper with configuration or startup files and may lead to further code execution depending on the environment, but the direct, guaranteed impact is integrity compromise on the vulnerable system.

Conditions

The issue is triggered when installing an attacker-controlled sdist (e.g., from an index or URL) and the fallback extraction code path is used. No special privileges are required beyond running pip install; active user action is necessary.

Remediation

The fix is available starting in pip 25.3. Using a Python interpreter that implements the safe-extraction behavior described by PEP 706 provides additional defense in depth for other tarfile issues but is not a substitute for upgrading pip for this specific flaw.


Release Notes

pypa/pip (pip)

v25.3

Compare Source

v25.2

Compare Source

v25.1.1

Compare Source

v25.1

Compare Source


Configuration

📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@JohT JohT force-pushed the renovate/pypi-pip-vulnerability branch from 0a7aa4a to 12a5ab0 Compare October 28, 2025 18:35
@renovate renovate bot force-pushed the renovate/pypi-pip-vulnerability branch from 12a5ab0 to 15c3eb8 Compare October 28, 2025 18:56
@JohT JohT merged commit 38f4c2e into main Oct 29, 2025
5 checks passed
@JohT JohT deleted the renovate/pypi-pip-vulnerability branch October 29, 2025 05:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants