Read the docs
TI-2026-35261 Aliases CVE-2026-47764GHSA-78v8-vpjp-cjqh

pdm: Path traversal in wheel installation via overridden write_to_fs

Priority MEDIUM 44CWE-22Published · Updated

Key facts

Attack vector
Local
Privileges required
None
User interaction
Active
Attack complexity
Low
Attack requirements
None
Impact type
—
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub.

Summary

pdm is a Python package and dependency manager supporting the latest PEP standards. Versions prior to 2.27.0 are vulnerable to path traversal through write_to_fs. InstallDestination.write_to_fs() in src/pdm/installers/installers.py overrides the base class to add symlink/hardlink support but replaces the safe _path_with_destdir() (which validates via Path.resolve() + is_relative_to()) with a bare os.path.join() that performs no path validation. A malicious wheel with traversal entries can write arbitrary files. This issue has been fixed in version 2.27.0.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00197 9th percentileScored 2026-11-07
Fix Fixed pdm (pdm-project): 2.27.0pdm (PyPI): 2.27.0

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
Yes
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
pdm-projectpdmbefore 2.27.02.27.0Patch availableCNA
—pdm (PyPI)before 2.27.02.27.0Patch availableGHSA-78v8-vpjp-cjqh
  • pdm Vendorpdm-project Affected before 2.27.0 Fixed in 2.27.0 Patch available CNA
  • pdm (PyPI) Vendor— Affected before 2.27.0 Fixed in 2.27.0 Patch available GHSA-78v8-vpjp-cjqh

Remediation

  • Fix · CNA pdm (pdm-project) Fixed in 2.27.0
  • Fix · GHSA-78v8-vpjp-cjqh pdm (PyPI) Fixed in 2.27.0 Advisory →

Vendor assessments

Red Hat

Red Hat's page for this CVE →

Not affected: 1 product
  • Red Hat

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-47764
  2. 2026-10-03 Alias added: GHSA-78v8-vpjp-cjqh

References

  • TI-2026-35274 pdm: Project-Controlled `.pdm-plugins` Content Executes Before CLI Parsing CVSS 4.0HIGH 8.4
  • TI-2026-35260 pdm: Project-Local State and Config Writes Follow Symlinks CVSS 4.0MEDIUM 6.8

Sources