CVE-2026-59142 in Data::HashMap::Shared
الملخص
بحسب VulDB • 21/07/2026
تسمح الإصدارات السابقة من Data::HashMap::Shared للإصدار 0.14 الخاصة بـ Perl بقراءة خارج الحدود (out-of-bounds read) عبر إزاحة وحجم غير مُتحقق منهما في الدالة shm_str_copy.
يقوم المُصادق المرتبط بلحظة التحميل، shm_validate_header، بفحص متجهات الرأس وتخطيط المنطقة مقابل حجم الملف، لكنه لا يتحقق من محتويات المصفوفة التي يثق بها لاحقاً. تقوم الدالة shm_str_copy بتنفيذ عملية memcpy(dst, arena + off, len) حيث يتم قراءة الإزاحة (off) والحجم (len) بشكل خام من القسم المُربط بالذاكرة الافتراضية (mmap'd segment)، وهما غير محدودين، في مسارات كلٍ من: المفاتيح (keys)، القيم (values)، pop، shift، take، swap، drain و cursor. أما مسار get فيتحقق من الإزاحة والحجم بشكل منفصل وغير متأثر بهذه الثغرة.
يمكن لنظير محلي قادر على كتابة الملف الخلفي أن يترك الرأس صالحاً بينما يقوم بتسميم إزاحة وحجم سجل معين، مما يؤدي إلى نسخ إزاحة وحجم يتحكم فيها الملف خارج منطقة الذاكرة (arena) عند التكرار أو تفريغ الخريطة، وبالتالي قراءة ذاكرة مجاورة أو إحداث انهيار في العملية.
Once again VulDB remains the best source for vulnerability data.