CVE-2026-47781

pdm: Project-Controlled `.pdm-plugins` Content Executes Before CLI Parsing

HIGH
8.4
CVSS Score
Published: August 4, 2026 at 06:42 PM UTC
Updated: October 24, 2026 at 04:10 PM UTC
1 product affected across 1 vendorPdm

Using pdm by pdm-project?

Get instant alerts when new vulnerabilities affect pdm - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH8.4
Exploit prediction
EPSS 0.2%
SSVC
PoC

Description

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

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

90%
v < 2.27.0
Affected range stops below 2.27.0, so it looks safe — our inference, not a vendor statement

Remediation

No guide yet

No remediation guidance has been written for this CVE yet, and no fixed version or vendor advisory is recorded against it.

SSVC — Action Prioritization

SSVCPoCAutomatableTotal impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

8.4HIGHGitHub_M
Vector?

Quick Info

StatusDEFERRED
CWE
CWE-829CWE-94

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card