Skip to main content
Public proof of conceptFix available

CVE-2025-47273

setuptools has a path traversal vulnerability in PackageIndex.download that leads to Arbitrary File Write

A public proof of concept exists; no exploitation attested.

  • Published2025-05-17
  • WeaknessCWE-22

Am I affected?

With a domain, we read the version its public headers and pages expose. A distribution build can carry the fix under an older number.

Description

setuptools is a package that allows users to download, build, install, upgrade, and uninstall Python packages. A path traversal vulnerability in `PackageIndex` is present in setuptools prior to version 78.1.1. An attacker would be allowed to write files to arbitrary locations on the filesystem with the permissions of the process running the Python code, which could escalate to remote code execution depending on the context. Version 78.1.1 fixes the issue.

Timeline

dates in UTC
  1. 2025-05-1716:15CVE publishedNVD

Versions per branch

NVD · OSV
Debian debian linux
BranchAffectedFixed in
11.0= 11.0no fix published
Python setuptools
BranchAffectedFixed in
78.1< 78.1.178.1.1

as publishedRanges as NVD and OSV publish them; a distribution’s build can be fixed under an older number.

Products declared by the CNA1 product

As GitHub_M, the CNA that assigned this CVE, declared them in the CVE record; versions as written.

  • pypa setuptools
    Affected
    • = < 78.1.1no fix stated

Source: the CNA record (CVE Program), © The MITRE Corporation,CVE Terms of UseCVE recordupdated 2025-05-17

Distribution builds and vendor advisories

Packages from OSV.dev and products from the vendors' CSAF advisories.

version not verifiedVersions not verified: read as OSV.dev and the vendors publish them, not checked against each vendor's release list.

Packages

  • apache-supersetCleanStartall versions · fixed in 6.1.0-r6
  • aws-cli-2Wolfiall versions · fixed in 2.27.60-r1and 1 other package
  • aws-cli-2MinimOSall versions · fixed in 2.27.45-r0
  • aws-cli-2Chainguardall versions · fixed in 2.27.60-r1and 1 other package
  • bazel-rules-pythonopenSUSE:Tumbleweedall versions · fixed in 2.3.3-1.1
  • checkovWolfiall versions · fixed in 3.2.432-r0
  • checkovChainguardall versions · fixed in 3.2.432-r0
  • CythonRocky Linux:8all versions · fixed in 0:0.29.21-5.module+el8.10.0+1582+bc278001

286 more package ranges on OSV.dev

Vendor advisories

  • CVE-2025-47273 Red Hat Product Security1,660 products fixed · 72 known affected

    setuptools: Path Traversal Vulnerability in setuptools PackageIndex

    cert-manager/cert-manager-istio-csr-rhel9 as a component of cert-manager Operator for Red Hat OpenShift · cert-manager/cert-manager-operator-rhel9 as a component of cert-manager Operator for Red Hat OpenShift · cert-manager/jetstack-cert-manager-acmesolver-rhel9 as a component of cert-manager Operator for Red Hat OpenShift · +69 more

  • RHSA-2026:4215 Red Hat Product Security4 products fixed

    Red Hat Security Advisory: Red Hat Quay 3.14.6

  • RHSA-2025:19430 Red Hat Product Security1 product fixed

    Red Hat Security Advisory: Red Hat Enterprise Linux AI 1.5 (NVIDIA)

  • RHSA-2025:19429 Red Hat Product Security1 product fixed

    Red Hat Security Advisory: Red Hat Enterprise Linux AI 1.5 (NVIDIA)

  • RHSA-2025:19428 Red Hat Product Security2 products fixed

    Red Hat Security Advisory: Red Hat Enterprise Linux AI 1.5 (NVIDIA)

  • RHSA-2025:19427 Red Hat Product Security1 product fixed

    Red Hat Security Advisory: Red Hat Enterprise Linux AI 1.5 (AMD)

41 more advisories

Full record on NVD

Fix

  1. Vendor fix Red Hat Product Security RHSA-2026:4215 · 4 productsBefore applying this update, make sure all previously released errata relevant to your system have been applied. For details on how to apply this update, refer to: https://access.redhat.com/articles/11458
  2. Vendor fix Red Hat Product Security RHSA-2025:19430 · 1 productFor more information visit https://access.redhat.com/errata/RHSA-2025:19430
  3. Vendor fix Red Hat Product Security RHSA-2025:19429 · 1 productFor more information visit https://access.redhat.com/errata/RHSA-2025:19429
  4. Vendor fix Red Hat Product Security RHSA-2025:19428 · 2 productsFor more information visit https://access.redhat.com/errata/RHSA-2025:19428
  5. Vendor fix Red Hat Product Security RHSA-2025:19427 · 1 productFor more information visit https://access.redhat.com/errata/RHSA-2025:19427
  6. Vendor fix Red Hat Product Security RHSA-2025:19426 · 1 productFor more information visit https://access.redhat.com/errata/RHSA-2025:19426

Advisories and patches

Detection

read 2026-11-01 01:02 UTC
Nuclei template
none so far
ProjectDiscovery
Exploit-DB
no entry
Exploit-DB
Proof of concept
Metasploit modules
none listed
Metasploit Framework

Sources

Identifiers

Technical details

CVSS v3 Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS 4.0 vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Published
2025-05-17
Last Modified
2026-06-17
NVD status
Analyzed
GitHub Advisory
GHSA-5rjg-fvgr-3xxf

Frequently asked questions

What is CVE-2025-47273?

setuptools is a package that allows users to download, build, install, upgrade, and uninstall Python packages. A path traversal vulnerability in `PackageIndex` is present in setuptools prior to version 78.1.1. An attacker would be allowed to write files to arbitrary locations on the filesystem with the permissions of the process running the Python code, which could escalate to remote code execution depending on the context. Version 78.1.1 fixes the issue.

Is CVE-2025-47273 actively exploited?

A proof-of-concept exploit exists for CVE-2025-47273, but active exploitation has not been confirmed at this time.

What is the CVSS score for CVE-2025-47273?

CVE-2025-47273 has a CVSS v3 base score of 8.8 (HIGH severity), with vector string CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.

Running setuptools? Hear about its next vulnerability

Surveillance reads the versions in your stack — a domain, a lockfile or a list — checks each CVE against the ranges its sources publish, and alerts you when one you run is exploited or enters CISA KEV. A version it cannot read stays « version not verified ».

No credit card required · No monthly cap on website lookups · 250 API requests/month

Sources for this record