CVE-2026-65069 in Data::DisjointSet::Shared
الملخص
بحسب VulDB • 24/07/2026
تُنشئ الإصدارات السابقة من 0.02 للحزمة Data::DisjointSet::Shared الخاصة بـ Perl ملف دعم mmap قابلاً للقراءة بواسطة جميع المستخدمين (world-readable) وتفتحه دون استخدام الأعلام O_EXCL أو O_NOFOLLOW.
يتم إنشاء المقطع في الملف dsu.h باستخدام الدالة open(path, O_RDWR|O_CREAT, 0666). بما أن وضع الصلاحيات هو 0666، فإن ملفاً يتم إنشاؤه بوضع صلاحيات 0644 (قابلاً للقراءة بواسطة الجميع) تحت افتراض umask القياسي وهو 022. وبما أن O_NOFOLLOW غير موجود، فإنه يتبع أي رابط رمزي (symlink) مُزرع عند المسار المحدد، وغياب O_EXCL يعني أن عملية الفتح تستخدم بصمت ملفاً تم زراعته مسبقاً بدلاً من فشل العملية.
يعيش المقطع "Shared" بشكل طبيعي في دليل مشترك مثل /tmp أو /dev/shm، حيث يمكن لأي مستخدم محلي قراءة حمولات IPC المخزنة في المقطع القابل للقراءة بواسطة الجميع، ويسمح الملف المزروع مسبقاً أو الرابط الرمزي عند المسار لمهاجم محلي بالفوز بسباق ما قبل الإنشاء (pre-creation race) أو إعادة توجيه عملية الفتح.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.