Skip to content
Heist/ feed
Back to feed
High

Remote Code Execution in pypa/setuptools

Type: advisorySources: OSV

A vulnerability in the package_index module of pypa/setuptools versions up to 69.1.1 allows for remote code execution via its download functions. These functions, which are used to download packages from URLs provided by users or retrieved from package index servers, are susceptible to code injection. If these functions are exposed to user-controlled inputs, such as package URLs, they can execute arbitrary commands on the system. The issue is fixed in version 70.0.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2024-6345
Confirmed fixed CVEs
Not specified
Updated in this feed
3 Nov 2026, 10:53 UTC · Revision 1

Source evidence

Remote Code Execution in pypa/setuptools

core-osv · Original source

Published 15 Jul 2024, 00:00 UTC

A vulnerability in the package_index module of pypa/setuptools versions up to 69.1.1 allows for remote code execution via its download functions. These functions, which are used to download packages from URLs provided by users or retrieved from package index servers, are susceptible to code injection. If these functions are exposed to user-controlled inputs, such as package URLs, they can execute arbitrary commands on the system. The issue is fixed in version 70.0.

osv:CVE-2024-6345
Complete source record
{
  "id": "81c9fd70808bdc16004fffc195d237ba19cb90227d6552841f4f04471570e25c",
  "url": "https://osv.dev/vulnerability/CVE-2024-6345",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Remote Code Execution in pypa/setuptools",
    "summary": "A vulnerability in the package_index module of pypa/setuptools versions up to 69.1.1 allows for remote code execution via its download functions. These functions, which are used to download packages from URLs provided by users or retrieved from package index servers, are susceptible to code injection. If these functions are exposed to user-controlled inputs, such as package URLs, they can execute arbitrary commands on the system. The issue is fixed in version 70.0.",
    "evidence": "osv:CVE-2024-6345",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2024-6345",
      "aliases": [
        "BIT-setuptools-2024-6345",
        "CVE-2024-6345",
        "GHSA-cx63-2mw6-8hw5",
        "PYSEC-2026-1918"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/pypa/setuptools",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "5cbf12a9b63fd37985a4525617b46576b8ac3a7b"
                },
                {
                  "fixed": "88807c7062788254f654ea8c03427adc859321f0"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "70.0"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "SplitRange"
                  },
                  {
                    "range": [
                      {
                        "fixed": "88807c7062788254f654ea8c03427adc859321f0"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v69.5.1",
            "v69.5.0",
            "v69.4.0",
            "v69.3.0",
            "v69.2.0",
            "v69.1.1",
            "v69.1.0",
            "v69.0.2",
            "v69.0.1",
            "v69.0.0",
            "v68.2.2",
            "v68.2.1",
            "v68.2.0b1",
            "v68.2.0",
            "v68.1.2",
            "v68.1.1",
            "v68.1.0",
            "v68.0.0",
            "v67.8.0",
            "v67.7.2",
            "v67.7.1",
            "v67.7.0",
            "v67.6.1",
            "v67.6.0",
            "v67.5.1",
            "v67.5.0",
            "v67.4.0",
            "v67.3.3",
            "v67.3.2",
            "v67.3.1",
            "v67.3.0",
            "v67.2.0",
            "v67.1.0",
            "v67.0.0",
            "v66.1.1",
            "v66.1.0",
            "v66.0.0",
            "v65.7.0",
            "v65.6.3",
            "v65.6.2",
            "v65.6.1",
            "v65.6.0",
            "v65.5.1",
            "v65.5.0",
            "v65.4.1",
            "v65.4.0",
            "v65.3.0",
            "v65.2.0",
            "v65.1.1",
            "v65.1.0",
            "v65.0.2",
            "v65.0.1",
            "v65.0.0",
            "v64.0.3",
            "v64.0.2",
            "v64.0.1",
            "v64.0.0",
            "v63.4.3",
            "v63.4.2",
            "v63.4.1",
            "v63.4.0",
            "v63.3.0",
            "v63.2.0",
            "v63.1.0",
            "v63.0.0",
            "v62.6.0",
            "v62.5.0",
            "v62.4.0",
            "v62.3.4",
            "v62.3.3",
            "v62.3.2",
            "v62.3.1",
            "v62.3.0",
            "v62.2.0",
            "v62.1.0",
            "v62.0.0",
            "v61.3.1",
            "v61.3.0",
            "v61.2.0",
            "v61.1.1",
            "v61.1.0",
            "v61.0.0",
            "v60.10.0",
            "v60.9.3",
            "v60.9.2",
            "v60.9.1",
            "v60.9.0",
            "v60.8.2",
            "v60.8.1",
            "v60.8.0",
            "v60.7.1",
            "v60.7.0",
            "v60.6.0",
            "v60.5.4",
            "v60.5.3",
            "v60.5.2",
            "v60.5.1",
            "v60.5.0",
            "v60.4.0",
            "v60.3.1",
            "v60.3.0",
            "v60.2.0",
            "v60.1.1",
            "v60.1.0",
            "v60.0.5",
            "v60.0.4",
            "v60.0.3",
            "v60.0.0",
            "v60.0.2",
            "v60.0.1",
            "v59.8.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-6345.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:28.282112152Z",
      "provider": "osv",
      "references": [
        "https://huntr.com/bounties/d6362117-ad57-4e83-951f-b8141c6e7ca5",
        "https://lists.debian.org/debian-lts-announce/2024/09/msg00018.html",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/6xxx/CVE-2024-6345.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2024-6345",
        "https://github.com/pypa/setuptools/commit/88807c7062788254f654ea8c03427adc859321f0"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-94"
        ],
        "cna_assigner": "@huntr_ai",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/6xxx/CVE-2024-6345.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2024-6345",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 494720,
  "published_at": "2024-07-15T00:00:14.545+00:00"
}