{"id":"GHSA-m3wx-qqmx-qxvf","kind":"vulnerability","aliases":["GHSA-m3wx-qqmx-qxvf"],"related":[],"title":"Duplicate Advisory: uv vulnerable to arbitrary file deletion through RECORD entries","description":"## Duplicate Advisory\n\nThis advisory has been withdrawn because it is a duplicate of GHSA-pjjw-68hj-v9mw. This link is maintained to preserve external references.\n\n## Original Description\nAstral 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.","summary":"This advisory is withdrawn as a duplicate of GHSA-pjjw-68hj-v9mw, which covers the same uv flaw. The original text says uv before 0.11.6 follows relative traversal paths in a wheel's RECORD file, so a malicious wheel can make uv delete files outside the install location when the package is uninstalled.","severity":"high","cvss":5.3,"epss":null,"exploited":false,"exploited_at":null,"products":[{"name":"uv","fixed":[],"affected":"< 0.11.6","ecosystem":"pypi"}],"ecosystems":["pypi"],"tags":["ci","cwe-23","package","python","uv"],"not_affected_if":["uv-0.11.6-or-later"],"how_to_check":"Run uv --version and check whether it reports a version below 0.11.6.","fix":"Upgrade uv to 0.11.6 or later.\nUse GHSA-pjjw-68hj-v9mw as the active record for this issue.","status":"withdrawn","published_at":"2026-10-21T03:32:27+00:00","first_seen_at":"2026-10-23T20:59:05+00:00","triaged_at":"2026-10-23T21:00:22+00:00","updated_at":"2026-10-23T21:00:22+00:00","category":"package","confidence":0.7,"triage":{"at":"2026-10-23T21:00:22Z","model":"claude-haiku-5-5","output":{"fix":"Upgrade uv to 0.11.6 or later.\nUse GHSA-pjjw-68hj-v9mw as the active record for this issue.","reach":"local","impact":"medium","summary":"This advisory is withdrawn as a duplicate of GHSA-pjjw-68hj-v9mw, which covers the same uv flaw. The original text says uv before 0.11.6 follows relative traversal paths in a wheel's RECORD file, so a malicious wheel can make uv delete files outside the install location when the package is uninstalled.","category":"package","who_cares":["python","uv","ci"],"confidence":0.7,"needs_auth":"no","worst_case":"Attacker-chosen files outside the install prefix get deleted on uninstall.","analyst_note":"","how_to_check":"Run uv --version and check whether it reports a version below 0.11.6.\nunknown","needs_analyst":false,"not_affected_if":["uv-0.11.6-or-later"],"user_interaction":"yes","needs_special_setup":"no","severity_if_unknown":"high"},"cost_usd":0.000477,"input_tokens":2921,"output_tokens":370,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-23':25B '0.11.6':54B,114C '68hj':40B,99C 'advisori':2A,30B,84C,86C 'allow':121C 'arbitrari':6A,125C 'astral':111C 'attack':122C,137C 'caus':151C 'ci':23B 'contain':115C 'cover':43B 'craft':139C 'cwe':24B 'delet':8A,72B,124C,154C 'descript':110C 'duplic':1A,35B,83C,94C 'entri':11A,136C 'extern':107C 'file':7A,64B,73B,126C,146C,156C 'flaw':47B 'follow':55B 'ghsa':13A,18A,38B,97C 'ghsa-m3wx-qqmx-qxvf':12A,17A 'ghsa-pjjw-68hj-v9mw':37B,96C 'instal':76B,149C 'link':102C 'locat':77B 'm3wx':14A,19A 'maintain':104C 'make':70B 'malici':67B,141C 'origin':49B,109C 'outsid':74B,147C 'packag':26B,80B,162C 'path':58B,117C,133C 'pjjw':39B,98C 'prefix':150C 'preserv':106C 'python':27B 'qqmx':15A,20A 'qxvf':16A,21A 'record':10A,63B,135C,144C 'refer':108C,145C 'relat':56B,131C 'say':51B 'suppli':128C 'text':50B 'travers':57B,118C,132C 'uninstal':82B,160C 'user':159C 'uv':3A,22A,28B,46B,52B,71B,112C,152C 'v9mw':41B,100C 'vulner':4A,119C 'wheel':61B,68B,129C,142C 'whose':143C 'withdrawn':32B,89C","nicknames":[],"mitigations":[],"who_affected":null,"tier":"B","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-21T03:32:27+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N","cvss_by":"GitHub","poc_count":0,"sources":[{"source":"ghsa","external_id":"GHSA-m3wx-qqmx-qxvf","url":"https://github.com/advisories/GHSA-m3wx-qqmx-qxvf","severity":"high","published_at":"2026-10-21T03:32:27+00:00","modified_at":"2026-10-23T20:57:27+00:00","first_seen_at":"2026-10-23T20:59:05+00:00","fetched_at":"2026-10-23T20:59:05+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}