Mend.io Vulnerability Database
The largest open source vulnerability database
What is a Vulnerability ID?
New vulnerability? Tell us about it!
CVE-2026-47781
Published:August 04, 2026
Updated:August 05, 2026
PDM is a Python package and dependency manager. In versions up to and including 2.26.9, PDM automatically loads project-local plugins from a .pdm-plugins directory during initialization, allowing an attacker-controlled file in an untrusted repository checkout to execute arbitrary Python code before any command is parsed. This happens because load_plugins() runs during Core.init() and adds .pdm-plugins via site.addsitedir(), which processes .pth files and immediately executes any line beginning with import, so the code runs with the privileges of the user invoking pdm and even a benign command such as pdm --version triggers it (making the impact strongest in CI, automation, and privileged contexts). The issue is fixed in version 2.27.0.
Affected Packages
pdm (CONDA):
Affected version(s) >=1.8.5 <2.27.0
Fix Suggestion:
Update to version 2.27.0
pdm (CONDA):
Affected version(s) >=2.6.0 <2.27.0
Fix Suggestion:
Update to version 2.27.0
https://github.com/pdm-project/pdm.git (GITHUB):
Affected version(s) >=2.6.0 <2.27.0
Fix Suggestion:
Update to version 2.27.0
pdm (PYTHON):
Affected version(s) >=2.6.0 <2.27.0
Fix Suggestion:
Update to version 2.27.0
pdm (PYTHON):
Affected version(s) >=0.0.0 <2.27.0
Fix Suggestion:
Update to version 2.27.0
Do you need more information?
Contact Us
CVSS v4
Base Score:
8.4
Attack Vector
LOCAL
Attack Complexity
LOW
Attack Requirements
NONE
Privileges Required
NONE
User Interaction
ACTIVE
Vulnerable System Confidentiality
HIGH
Vulnerable System Integrity
HIGH
Vulnerable System Availability
HIGH
Subsequent System Confidentiality
NONE
Subsequent System Integrity
NONE
Subsequent System Availability
NONE
CVSS v3
Base Score:
7.8
Attack Vector
LOCAL
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
REQUIRED
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
HIGH
Weakness Type (CWE)
Improper Control of Generation of Code ('Code Injection')
Inclusion of Functionality from Untrusted Control Sphere
EPSS
Base Score:
0.03