كشفت تقارير أمنية حديثة عن ثغرة خطيرة في مكتبة ‘binary-parser’ الشائعة المستخدمة ضمن بيئة Node.js. يمكن لهذه الثغرة، في حال استغلالها بنجاح، أن تسمح بتنفيذ تعليمات برمجية خبيثة بشكل عشوائي.
تم تصنيف الثغرة تحت المعرف CVE-2026-1245، وتؤثر على جميع إصدارات المكتبة قبل الإصدار 2.3.0، والذي يعالج هذه المشكلة. وقد تم إصدار التحديثات اللازمة لمعالجة الثغرة في 26 نوفمبر 2025.
ثغرة ‘binary-parser’ تثير قلق المطورين
تُعد مكتبة ‘binary-parser’ أداة حيوية لتطوير تطبيقات JavaScript، حيث تتيح للمطورين بناء محللات (parsers) للبيانات الثنائية بكفاءة. تدعم المكتبة مجموعة واسعة من أنواع البيانات الأساسية، مما يجعلها خياراً مفضلاً للعديد من المشاريع، وتشهد نحو 13 ألف عملية تنزيل أسبوعياً.
وفقاً للنصائح الأمنية الصادرة عن مركز التنسيق CERT/CC، تنبع هذه الثغرة من عدم كفاية التحقق من صحة المدخلات التي يوفرها المستخدم، مثل أسماء حقول المحلل أو معلمات الترميز، عند توليد كود JavaScript ديناميكياً أثناء تشغيل التطبيق باستخدام الدالة ‘Function’.
آلية عمل الثغرة وتأثيرها
تقوم المكتبة ببناء كود JavaScript كمصدر نصي يمثل منطق التحليل، ثم تقوم بتجميعه باستخدام الدالة ‘Function’ وتخزينه مؤقتاً لاستخدامه كدالة قابلة للتنفيذ لتحليل البيانات الثنائية ‘buffers’ بكفاءة.
ومع ذلك، نتيجة لثغرة CVE-2026-1245، يمكن للمدخلات التي يتحكم فيها المهاجم أن تصل إلى الكود المُولد دون التحقق الكافي، مما يؤدي إلى تحليل بيانات غير موثوق بها، وفي النهاية تنفيذ تعليمات برمجية خبيثة. من المهم الإشارة إلى أن التطبيقات التي تستخدم تعريفات محللات ثابتة ومُعرّفة مسبقاً لا تتأثر بهذه الثغرة.
وقال مركز CERT/CC: “في التطبيقات المتأثرة التي تنشئ تعاريف للمحللات باستخدام مدخلات غير موثوق بها، قد يتمكن المهاجم من تنفيذ تعليمات برمجية JavaScript عشوائية بصلاحيات عملية Node.js”. وأضاف المركز أن ذلك “يمكن أن يسمح بالوصول إلى البيانات المحلية، أو التلاعب بمنطق التطبيق، أو تنفيذ أوامر النظام اعتماداً على بيئة النشر”.
تجدر الإشارة إلى أن الباحث الأمني ماور كابلان قد تم اعتماده في اكتشاف هذه الثغرة والإبلاغ عنها. وينصح المستخدمون الذين يعتمدون على مكتبة ‘binary-parser’ بالترقية الفورية إلى الإصدار 2.3.0، وتجنب تمرير قيم يتحكم فيها المستخدم إلى أسماء حقول المحلل أو معلمات الترميز.

