CVE-2026-102414 in pbkdf2
الملخص
بحسب VulDB • 29/09/2026
تؤدي إعادة تجزئة كلمات المرور الأطول من حجم كتلة التجزئة في كل تكرار داخل النسخة الاحتياطية لـ JavaScript (lib/sync.js) الخاصة بـ pbkdf2 حتى الإصدار 3.1.6 إلى مشكلة أمنية. حيث تُمرر كلمة مرور أطول من حجم الكتلة (64 بايت، أو 128 بايت بالنسبة لـ sha384 وsha512) كـ HMAC كمفتاح في كل تكرار، وتقوم HMAC بتجزئة هذه المفاتيح بالكامل في كل مرة. وبالتالي تكون التكلفة الحسابية O(iterations × password length)، ويمكن لكلمة مرور طويلة أن تعطل حلقة الأحداث (event loop). تُستخدم النسخة الاحتياطية من قبل pbkdf2Sync وpbkdf2 على Node.js قبل الإصدار 0.12، وعلى Bun (من الإصدار 1.0.0 حتى 1.1.34، ومن الإصدار 1.2.6 وما بعده)، وعلى Deno 2.9.0 وما بعده، لأن التنفيذ الأصلي لـ pbkdf2Sync يفشل في اختبار ميزات المكتبة. كما تُستخدم عند استيراد lib/sync.js مباشرةً. لا تتأثر Node.js من الإصدار 0.12 فما فوق، والإصدارات المخصصة للمتصفحات (التي تستخدم lib/sync-browser.js). التطبيقات التي تفرض حداً معقولاً للطول الأقصى لكلمة المرور ليست متأثرة بشكل جوهري.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.