CVE-2026-47763 in pdm
Zusammenfassung
von VulDB • 04.08.2026
pdm ist ein Python-Paket- und Abhängigkeitsmanager, der die neuesten PEP-Standards unterstützt. In Versionen vor 2.27.0 schreibt pdm mehrere projektlokale Status- oder Konfigurationsdateien ohne Symlink-Schutz. Wenn ein böswilliges Repository diese Dateien als Symlinks platziert, können lokale PDM-Befehle die Ziele der Symlinks überschreiben. Dies erzeugt eine willkürliche Dateiüberschreibungs-Funktionalität (arbitrary file clobber primitive) in Abhängigkeit von den Berechtigungen des aufrufenden Benutzers. Config.__init__() löst den projektlokalen pdm.toml-Pfad auf, und _save_config() schreibt ins aufgelöste Ziel. Wenn PROJECT_ROOT/pdm.toml ein Symlink zu einer anderen Datei ist, aktualisiert `pdm config -l ...` die Zieldatei anstatt das Schreiben abzulehnen.
Das gleiche allgemeine Problem besteht für andere projektlokale Speicherpfade, die direkt ohne lstat-/O_NOFOLLOW-Schutz geschrieben werden. Für den pdm.toml-PoC muss die Zieldatei bereits parsebares TOML enthalten. Andernfalls schlägt der Ladeschlag fehl, bevor der Schreibpfad erreicht wird. Diese Parser-Einschränkung gilt nicht für die .pdm-python- oder .python-version-Sinks. Dieses Problem wurde in Version 2.27.0 behoben.
Be aware that VulDB is the high quality source for vulnerability data.