كشفت شركة “Socket” للأمن السيبراني عن ثغرة حرجة تُعرف بـ CVE-2025-54782 في مكتبة @nestjs/devtools-integration، وهي حزمة تابعة لإطار العمل الشهير NestJS تُحمّل أكثر من 56 ألف مرة أسبوعيًا عبر مدير الحزم npm، وتُستخدم لتسهيل عمليات تطوير التطبيقات القائمة على Node.js. وقد تم تصنيف الثغرة بدرجة خطورة 9.4 وفقًا لمقياس CVSS، ما يجعلها من الفئة الأشد خطورة كونها تتيح تنفيذ أوامر برمجية عن بُعد على أجهزة المطورين دون الحاجة إلى مصادقة.
خلل في العزل الآمن وتنفيذ أكواد المستخدم
تقوم مكتبة @nestjs/devtools-integration بإنشاء خادم محلي (localhost) يوفر نقطة نهاية (endpoint) تتيح تنفيذ أكواد جافاسكريبت داخل بيئة “محمية” أو معزولة، تعتمد على وحدة node:vm وميزة safe-eval، وهي أداة لم تعد مدعومة رسميًا. لكن تبين أن هذه البيئة المعزولة ضعيفة للغاية ويمكن تجاوزها بسهولة، ما يفتح الباب أمام تنفيذ أكواد ضارة من طرف ثالث على جهاز المطور.
ووفقًا لما أوضحه “Kamil Mysliwiec”، أحد القائمين على مشروع NestJS، فإن هذه الثغرة تمكّن أي موقع ويب خبيث يقوم المطور بزيارته أثناء استخدام بيئة التطوير من تنفيذ أكواد خبيثة مباشرة على جهازه، عبر هجوم CSRF من خلال نقطة النهاية /inspector/graph/interact.
كيف يمكن استغلال الثغرة؟
عبر سلسلة من الثغرات المرتبطة، يستطيع المهاجم استغلال غياب حماية المصدر المشترك (Cross-Origin Protection) وسوء إعداد بيئة العزل (Sandboxing)، ما يسمح لموقع ويب خبيث باستدعاء نقطة النهاية الضعيفة على خادم التطوير المحلي وتنفيذ أكواد عشوائية دون علم المستخدم. هذه الثغرة تهدد المطورين الذين يستخدمون أدوات devtools الخاصة بـ NestJS أثناء تطويرهم للتطبيقات محليًا.
تحذيرات وتوصيات أمنية
الثغرة تمثل تهديدًا مباشرًا لبيئات تطوير جافاسكريبت الحديثة، حيث قد يتمكن المهاجمون من زرع برمجيات خبيثة، سرقة مفاتيح التوثيق، تعديل ملفات المشاريع، أو حتى التسلل إلى بيئات الإنتاج عبر بوابة المطور. ينصح المطورون بإيقاف استخدام الحزمة المتأثرة فورًا، أو التحقق من إصدار تصحيحي، بالإضافة إلى تجنب زيارة مواقع غير موثوقة أثناء استخدام بيئة التطوير المحلية.