يُنصح مستخدمو حزمة “@adonisjs/bodyparser” على npm بالتحديث إلى أحدث إصدار، وذلك عقب الكشف عن ثغرة أمنية حرجة قد تسمح بتنفيذ هجمات إلكترونية وكتابة ملفات تعسفية على الخادم.
هذه الثغرة، والتي تم تصنيفها بالرمز CVE-2026-21440 وحصلت على درجة 9.2 من مقياس CVSS، تتعلق بخلل في آلية معالجة الملفات المتعددة في إطار عمل AdonisJS. وتُستخدم حزمة “@adonisjs/bodyparser” لمعالجة محتوى طلبات HTTP في تطبيقات AdonisJS، وهو إطار عمل لتطوير تطبيقات الويب وخوادم واجهات برمجة التطبيقات باستخدام TypeScript.
ثغرة أمنية حرجة في “@adonisjs/bodyparser” تفتح الباب لكتابة ملفات تعسفية
يُمكن للمهاجمين استغلال هذه الثغرة عن طريق تمرير أسماء ملفات معالجة تحتوي على تسلسلات اجتياز للمسارات، مما يسمح لهم بالكتابة إلى موقع وجهة خارج دليل التحميل المقصود، وذلك بحسب تصريح صدر عن مطوري الحزمة.
ولإتمام الهجوم بنجاح، يتطلب الأمر وجود نقطة نهاية قابلة للوصول لتحميل الملفات. تكمن المشكلة الأساسية في دالة “MultipartFile.move(location, options)”، التي تسمح بنقل الملف إلى الموقع المحدد. ويحتوي المعلم “options” على قيمتين: اسم الملف وعلامة لتحديد ما إذا كان سيتم الكتابة فوق الملف الموجود أم لا.
تحدث المشكلة عندما لا يتم تمرير اسم الملف كمدخل، مما يؤدي إلى استخدام اسم الملف الذي يقدمه العميل دون معالجة، وهذا يفسح المجال أمام تجاوز المسار. وفي حال تم تفعيل خيار الكتابة فوق الملفات، يمكن للمهاجم اختيار وجهة تعسفية والكتابة فوق ملفات حساسة.
وبحسب ما ورد منهم، فإن “إعادة الكتابة فوق ملفات التطبيق، أو نصوص بدء التشغيل، أو ملفات التكوين التي يتم تنفيذها أو تحميلها لاحقًا، يمكن أن يؤدي إلى تنفيذ تعليمات برمجية عن بعد (RCE)”. ومع ذلك، فإن هذا الارتباط ليس مضموناً ويعتمد على أذونات نظام الملفات، وتصميم التطبيق، وسلوك وقت التشغيل.
تؤثر هذه المشكلة، التي اكتشفها وقدمها الباحث هنتر ودزينسكي، على الإصدارات التالية:
الإصدارات الأقدم من 10.1.2، والتي تم إصلاحها في الإصدار 10.1.2.
الإصدارات الأقدم من 11.0.0-next.6، والتي تم إصلاحها في الإصدار 11.0.0-next.6.
ثغرة أخرى في مكتبة jsPDF
تتزامن هذه التطورات مع الكشف عن ثغرة جسيمة أخرى تتعلق بتجاوز المسار في مكتبة jsPDF، والتي يمكن استغلالها لقراءة محتويات أي ملفات على نظام الملفات المحلي الذي تعمل عليه عملية Node.js.
تم إصلاح هذه الثغرة في الإصدار 4.0.0 من jsPDF، والذي تم إصداره في 3 يناير 2026. كإجراءات وقائية، يُنصح باستخدام العلم –permission لتقييد الوصول إلى نظام الملفات. وقد تم الإشادة بالباحث كوانغوون كيم لتقديمه تقريراً عن هذا الخلل.
وتضمنت التقارير أن “محتويات الملف يتم تضمينها حرفياً في ملفات PDF التي تم إنشاؤها”. وتقتصر هذه الثغرة على الإصدارات التي تعمل بنظام Node.js من المكتبة.

