CVE-2026-47763 in pdm
الملخص
بحسب VulDB • 04/08/2026
يُعد pdm مديرًا لحزم وتبعيات Python يدعم أحدث معايير PEP. في الإصدارات السابقة لـ 2.27.0، يكتب pdm عدة ملفات حالة أو تكوين محلية للمشروع دون حماية ضد الروابط الرمزية (symlinks). إذا قام مستودع خبيث بوضع هذه الملفات كروابط رمزية، يمكن للعمليات المحلية الخاصة بـ PDM أن تكتب فوق أهداف الروابط الرمزية. وهذا يخلق آلية لكتابة عشوائية على الملفات (arbitrary file clobber primitive) بالنسبة لصلاحيات المستخدم الذي يستدعي العملية. تقوم الدالة Config.__init__() بحل مسار ملف pdm.toml المحلي للمشروع، وتقوم _save_config() بالكتابة إلى الهدف المحلول. إذا كان PROJECT_ROOT/pdm.toml رابطًا رمزيًا لملف آخر، فإن الأمر `pdm config -l ...` يحدث الملف المستهدف بدلاً من رفض الكتابة.
توجد نفس المشكلة العامة في مسارات الاستمرارية الأخرى المحلية للمشروع التي تُكتب مباشرةً دون حماية باستخدام lstat أو O_NOFOLLOW. بالنسبة لمثال pdm.toml المذكور تحديداً، يجب أن يحتوي الملف الهدف بالفعل على محتوى TOML قابل للتحليل (parseable). وإلا فإن خطوة التحميل ستفشل قبل الوصول إلى مسار الكتابة. لا تنطبق قيود المحلل هذا على نقاط النهاية .pdm-python أو .python-version. تم إصلاح هذه المشكلة في الإصدار 2.27.0.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.