Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft wheel with traversal RECORD paths
-
DeliveryDistribute malicious wheel to victim
-
ExploitVictim installs package with uv
-
ExecutionVictim uninstalls package
-
Impactuv deletes arbitrary files outside prefix
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Relative path traversal prevention
|
| Exploitation Conditions | Exploitation requires a maliciously hand-crafted wheel whose RECORD file contains relative traversal ('../') entries pointing outside the installation prefix - standards-compliant Python packaging tooling never produces such RECORDs, so the attacker must manually manipulate the file. The victim must BOTH install AND subsequently uninstall the malformed wheel using uv <= 0.11.5, since uv only consults RECORD for deletion on uninstall. To hit meaningful targets such as system files, the attacker must correctly guess the depth of the installation prefix path. Limiting factors: only files (not directories) can be deleted, absolute paths in RECORD are neutralized (treated as rooted in the install prefix), there is no confidentiality/information-disclosure impact, and the required install-then-uninstall cycle constitutes genuine user interaction despite UI:N in the published vector. Fixed in uv 0.11.6. |
| Impact | The published CVSS 4.0 base score of 8.7 with vector AV:N/AC:L/PR:N/UI:N reads as a trivially exploitable remote, unauthenticated flaw, but the advisory text contradicts this: successful exploitation requires a victim to both install AND subsequently uninstall a hand-crafted malicious wheel, and the attacker must correctly guess the depth of the installation prefix path to reach specific system files. These are meaningful limiting factors that the AC:L/UI:N metrics do not capture. There is also an impact-labeling conflict - the official vector sets VC:H (confidentiality high) with VI:N/VA:N, yet the vulnerability only enables arbitrary file DELETION, which is an integrity/availability impact rather than a confidentiality one; verify impact mapping with the vendor/NVD. No EPSS score, no CISA KEV listing, and no public exploit code are present in the provided data, so there is no signal of active or probable exploitation. Net assessment: this is a legitimate supply-chain/local-tooling risk for developer and CI environments that install untrusted wheels, but the real-world priority is materially lower than the 8.7 implies because of the install-and-uninstall precondition, the path-depth guessing requirement, the file-only (not directory) deletion limit, and the absence of exploitation evidence. |
| Exploit ScenarioDerived | An attacker publishes or supplies a crafted wheel whose RECORD contains relative '../' traversal entries pointing outside the installation prefix. A developer or CI pipeline installs the package with uv (<= 0.11.5) and later uninstalls it, at which point uv honors the malicious RECORD and deletes the referenced files outside the environment. No public PoC is identified in the provided data, and success additionally requires the attacker to guess the installation prefix depth to target specific system files. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 21, 2026
Arbitrary file deletion in Astral uv 0.11.5 and earlier allows a maliciously hand-crafted wheel to cause uv to remove files outside the package's installation prefix when that wheel is uninstalled. The attacker must embed relative traversal sequences ('../') in the wheel's RECORD entries - something no standards-compliant Python packaging tool produces - and the victim must both install and later uninstall the package for the deletion to occur; the attacker must also correctly guess the installation prefix depth to reach specific system files. The published CVSS 4.0 score of 8.7 (AV:N/AC:L/PR:N/UI:N) overstates practical exploitability, and our reassessment (CVSS 3.1 AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:H/A:H) reflects the required user interaction and prefix-guessing precondition; no public exploit code and no confirmed active exploitation (CISA KEV) were identified at time of analysis. Fixed in uv 0.11.6.
RemediationAI
Vendor-released patch: upgrade to uv 0.11.6 or later, which validates RECORD entries on installation (PR 18943) and refuses to follow escaping paths on uninstall (PR 18942); the project states there are no breaking changes from the fix, so the upgrade can be treated as routine - install via your usual channel (e.g. 'pip install -U uv' or the standalone installer) and verify the version with 'uv --version'. Where upgrading is temporarily blocked, compensating controls target the attacker's preconditions rather than the code path: treat wheel installation as a trust boundary and only install wheels from internal indexes or artifact repositories that are hash-pinned and signed, since the attack requires an attacker-supplied wheel to be published or substituted into your supply chain; unpack suspicious wheels and inspect the RECORD file for '../' segments or absolute paths before installing (a low-cost manual gate, but it does not scale and only catches deliberate tampering); and avoid uninstalling packages that originated from untrusted sources under uv 0.11.5, deleting the virtual environment directory instead - note that this trades away the risky RECORD-driven uninstall at the cost of leaving orphaned state on shared interpreters. Installing into an isolated virtual environment or container limits the blast radius considerably, since traversal targets outside the environment are the files an attacker actually wants and deeper prefixes are harder to guess.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in pypi
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Python wheels are ZIP archives whose PEP 427 / PyPA RECORD file enumerates installed files with their hashes and sizes; installers and uninstallers use it as the manifest of record for what belongs to a package. uv 0.11.5 and earlier validated neither the RECORD on installation nor the resolved paths on uninstall, so a RECORD entry containing '../' segments would be joined to the installation prefix and could resolve outside it, making the target file eligible for removal when the package is uninstalled. This is CWE-23 (relative path traversal), specifically a write-side variant that manifests as deletion rather than file write or read - the advisory explicitly notes that uv does not use RECORD to determine wheel file paths, so invalid entries cannot create or modify files, and absolute paths (prohibited by the spec) are always treated as rooted in the installation prefix and therefore neutralized. Directory targets also fail, so the primitive is limited to deleting individual files whose path depth the attacker can predict. The fix is two-part: PR 18943 strips invalid traversal entries from RECORD during wheel installation, and PR 18942 makes the uninstaller ignore any RECORD path that would escape the installation prefix, providing defense at both the ingest and deletion stages.
Know when Uv gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Deletion-only impact gives C:N with I:H/A:H; victim must install then uninstall a hand-crafted wheel (UI:R) and guess prefix depth (AC:H); files outside uv's scope yield S:C.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
Astral uv before 0.11.6 contains a path traversal vulnerability that allows attackers to delete arbitrary files by supplying wheels with relative traversal paths in RECORD entries. Attackers can craft a malicious wheel whose RECORD references files outside the installation prefix, causing uv to delete those files when the user uninstalls the package.
Blast Radius
ecosystem impact- 3 pypi packages depend on uv (3 direct, 0 indirect)
Ecosystem-wide dependent count for version 0.11.6.
Technical POC Analysis
Evidence base: GHSA-pjjw-68hj-v9mw (astral-sh/uv).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Astral's uv package manager (versions 0.11.5 and earlier) contains a file-deletion flaw that could let a maliciously crafted Python wheel erase files outside its own installation directory when a developer later uninstalls that package. Because uv is widely used across developer laptops and CI/CD build pipelines, a successful attack could corrupt build environments and disrupt software delivery, though it requires a developer to install an untrusted wheel and then uninstall it, and no public exploit code or active exploitation has been identified. Leadership should treat this as a software supply-chain hygiene issue affecting engineering productivity rather than an imminent external threat.
Apply vendor patch (uv 0.11.6). Until upgraded, restrict uv installs to wheels from trusted internal indexes or verified publishers, run install/uninstall operations inside ephemeral containers or sandboxed runners with least-privilege filesystem access, and grep wheel RECORD files for '../' traversal sequences before installation.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
Related Vulnerabilities in Astral uv Path Traversal in Package Extraction
View all 3A flaw was found in uv. This vulnerability allows an attacker to execute malicious code during package resolution or ins
Arbitrary file writes outside uv's installation prefix on Windows can occur when a user installs a crafted wheel in uv 0
EUVD-2026-106913
GHSA-m3wx-qqmx-qxvf
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB