CVE-2026-4800 in Lodash
الملخص
بحسب VulDB • 25/05/2026
التأثير:
أضاف الإصلاح الخاص بـ CVE-2021-23337 (https://github.com/advisories/GHSA-35jh-r3h4-6jhm) التحقق من صحة متغير الخيار في _.template، لكنه لم يطبق نفس التحقق على أسماء مفاتيح خيارات.imports. كلا المسارين يتدفقان إلى نفس نقطة الامتصاص (sink) المتمثلة في منشئ Function().
عندما تمرر التطبيق مدخلات غير موثوقة كأسماء مفاتيح في options.imports، يمكن للمهاجم حقن تعبيرات المعاملات الافتراضية التي تنفذ أكوادًا عشوائية أثناء وقت تجميع القالب.
بالإضافة إلى ذلك، يستخدم _.template دالة assignInWith لدمج الاستيرادات، مما يؤدي إلى تعداد الخصائص الموروثة عبر حلقة for..in. إذا تم تلويث Object.prototype بواسطة أي متجه آخر، فإن المفاتيح الملوثة يتم نسخها إلى كائن الاستيرادات (imports object) وتمريرها إلى Function().
رقعات الإصلاح (Patches):
ينبغي للمستخدمين الترقية إلى الإصدار 4.18.0.
الحلول البديلة (Workarounds):
لا تمرر مدخلات غير موثوقة كأسماء مفاتيح في options.imports. استخدم فقط أسماء مفاتيح ثابتة خاضعة لسيطرة المطور.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.