تعرّضت مكتبة Axios الشهيرة لهجوم سلسلة توريد خطير بعد نشر نسختين ملغومتين على مستودع npm، ما يهدد ملايين المطورين حول العالم ببرمجية خبيثة تمنح المهاجمين وصولاً عن بُعد لأنظمة التشغيل الثلاثة الرئيسية.
كيف تم اختراق حزمة Axios على npm؟
كشف فريق StepSecurity أن النسختين 1.14.1 و0.30.4 من Axios تضمنتا تبعية وهمية باسم "plain-crypto-js" الإصدار 4.2.1. نُشرت هاتان النسختان باستخدام بيانات اعتماد حساب المُصيّر الرئيسي "jasonsaayman" المُخترق.
وتمكن المهاجمون من تجاوز خط أنابيب CI/CD الخاص بالمشروع على GitHub Actions، ما سمح بنشر النسخ الملغومة مباشرة إلى سجل npm.
تفاصيل البرمجية الخبيثة
بحسب باحث الأمن Ashish Kurmi، فإن الهدف الوحيد من هذه التبعية هو تنفيذ سكربت تثبيت لاحق يعمل كأداة وصول عن بُعد (RAT) متعددة المنصات تستهدف macOS وWindows وLinux معاً.
- الاتصال بخادم تحكم (C2) نشط
- تسليم حمولات مخصصة لكل نظام تشغيل
- حذف البرمجية لنفسها بعد التنفيذ
- استبدال ملف package.json بنسخة نظيفة لإخفاء الآثار
ما هو الجدول الزمني للهجوم؟
أوضح الباحث كورمي أن الهجوم لم يكن عشوائياً بل دقيقاً ومنظماً بشكل احترافي، وفقاً لما رصده فريق تيكبامين:
- تم تجهيز التبعية الخبيثة قبل 18 ساعة من الهجوم
- ثلاث حمولات منفصلة جُهزت مسبقاً لثلاثة أنظمة تشغيل
- إصابة فرعي الإصدارين خلال 39 دقيقة فقط
- جميع الآثار صُممت للتدمير الذاتي
ويُعتقد أن المهاجم حصل على رمز وصول npm طويل الأمد للحساب المخترق، وغيّر بريده الإلكتروني المسجّل إلى عنوان Proton Mail تحت سيطرته.
ما هي الإجراءات المطلوبة فوراً؟
مع أكثر من 83 مليون تحميل أسبوعي، تُعد Axios من أكثر مكتبات HTTP استخداماً في منظومة JavaScript بالكامل، ما يجعل هذا الهجوم واسع النطاق.
خطوات التحرك العاجل
- التراجع فوراً إلى Axios 1.14.0 أو 0.30.3
- تدوير جميع الأسرار وبيانات الاعتماد المتعلقة بالمشروع
- فحص أنظمتك بحثاً عن نشاط مشبوه
- مراجعة سجلات التبعيات لديك
أزالت إدارة npm النسختين الملغومتين وحزمة "plain-crypto-js" من المستودع، لكن المخاطر لا تزال قائمة على الأنظمة التي سبق لها تثبيت تلك الإصدارات.
يُبرز هذا الهجوم، كما يؤكد تيكبامين، خطورة استهداف سلاسل التوريد البرمجية والضرورة القصوى لتأمين بيانات حسابات المطورين على منصات الحزم البرمجية.