شهدت ساحة الأمن السيبراني ظهور موجة جديدة من برنامج الفدية الخبيث ذاتي التكاثر، والمعروف باسم “Mini Shai-Hulud”، والذي يستهدف هذه المرة مئات من حزم npm. وتشير التحقيقات إلى أن الجهة المسؤولة، والتي تعرف باسم TeamPCP، سبق لها شن حملات مشابهة، إلا أن الإصدار الحالي يمتلك قدرات متقدمة مقارنة بالسابق.
تمكن الباحثون الأمنيون من تحليل حمولة البرنامج الخبيث، ووجدوا أنه يتضمن دودة تنتشر بشكل مستقل، وتعمل على تثبيت أبواب خلفية دائمة على مستوى نظام التشغيل. وجرى تصميم هذا البرنامج الخبيث خصيصاً للتغلب على إجراءات الاستجابة الأولية الأكثر شيوعاً، وهي إزالة الحزمة المصابة.
حملة Mini Shai-Hulud المتطورة تستهدف مئات حزم npm
تنفذ البرمجية الخبيثة عند لحظة تثبيت أي حزمة برمجية متأثرة، سواء في بيئة المطور المحلية أو ضمن مسار البناء والتكامل المستمر (CI/CD). حيث يتم تشغيل خطاف (hook) قبل أي خطوة أخرى، مما يمنح الحمولة وصولاً فورياً إلى الجهاز.
تقوم البرمجية الخبيثة بجمع رموز GitHub و npm، بالإضافة إلى مفاتيح SSH وبيانات اعتماد مقدمي الخدمات السحابية وسلاسل الاتصال بقواعد البيانات. وفي بيئات البناء المؤتمتة، تستغل هوية البوابة الموثوقة للحصول على صلاحيات النشر، مما يسمح لها بإرسال إصدارات ملوثة من الحزم إلى المستودع تحت اسم أحد المشرفين الشرعيين. وتُرسل البيانات المسروقة إلى مستودعات GitHub التي يتحكم بها المهاجمون.
بعد سرقة رمز النشر، تفحص البرمجية الخبيثة كل حزمة يمكن الوصول إليها بهذا الرمز، تضيف شفرتها الخبيثة إليها، ثم تنشر إصدارات جديدة وملوثة باستخدام حساب المشرف. وبالتالي، يمكن لآلة بناء CI واحدة مصابة أن تعمل على تلويث كافة الحزم التي يُسمح لها بنشرها. كما أنها تبحث في جهاز المطور عن مشاريع Node.js أخرى وتنسخ نفسها إليها، مما يعني أن تثبيتاً واحداً مصاباً يمكن أن يصيب محطة عمل بأكملها.
ونقل الباحثون الأمنيون عن فريق Aikido Security قولهم: “إذا كانت أي من الحزم المتأثرة قد تم تشغيلها في بيئتكم، فيجب اعتبار الجهاز أو البوابة معرضة للخطر حتى يتم تغيير الأسرار، وإزالة آثار الاستمرارية، ومراجعة نشاط النشر الأخير.”
إزالة الحزمة ليست كافية
وجد الباحثون أن التراجع القياسي عن الاعتماديات لا يزيل الوصول الذي حصل عليه المهاجم. حيث تقوم البرمجية الخبيثة بتضمين أبواب خلفية في إعدادات أدوات المطور، وخاصة ملفات مثل .vscode/tasks.json و .claude/settings.json. وتبقى هذه الملفات على القرص الصلب حتى بعد إزالة حزمة npm المصابة. ولذلك، يجب فحص هذه الملفات وتنظيفها للقضاء على أي وجود للمهاجم.
تقوم الحمولة أيضاً بتثبيت خدمات تشغيل في الخلفية على مستوى نظام التشغيل، مثل خدمة مستخدم systemd على أنظمة Linux، و LaunchAgent على أنظمة macOS. وكلاهما يقوم بتشغيل باب خلفي يسمى kitty-monitor، والذي يقوم بالبحث في سجلات Git كل ساعة عن أوامر عن بعد موقعة. وهناك عملية ثانية، gh-token-monitor، تقوم بفحص رموز GitHub المسروقة كل 60 ثانية، لإبلاغ المهاجم لحظة إلغاء أي منها. وبذلك، يمكن للمهاجم الحفاظ على وصوله ومراقبة استجابة الضحية في الوقت الفعلي تقريباً، حتى بعد اكتشاف الإصابة الأصلية.
أشارت عدة شركات أمنية إلى الحزم الشائعة التي يتم استهدافها. في هذه الموجة، شملت الإصابة برمجيات شائعة لتصوير البيانات، بما في ذلك AntV مفتوح المصدر من Alibaba و TallyUI. كما طالت الحملة أدوات مساعدة واسعة الاستخدام مثل echarts-for-react (غلاف React لـ ECharts) و timeago.js (مكتبة JavaScript صغيرة تسمح للمطورين بتنسيق الطوابع الزمنية).
وكتب باحثون من شركة Socket للأمن التطبيقي: “حتى لو حصل تحديث خبيث لعدد قليل فقط من هذه الحزم، فإن شعبية النظام البيئي للحزم تخلق تعرضاً تبعياً كبيراً للمنظمات التي تسحب تلقائياً إصدارات التبعية الجديدة.”
لا تزال الحملة نشطة. ولأن الدودة تنتشر باستخدام الرموز المسروقة من البيئات المصابة، فمن المتوقع أن يزداد عدد الحزم المتأثرة. وحذر الباحثون من ضرورة اعتبار أي جهاز أو بوابة قامت بتثبيت إصدار متأثر على أنه مخترق بالكامل.
وفقاً للمعلومات، استهدفت TeamPCP الأسبوع الماضي مكتبات برمجية بارزة أخرى بنفس البرمجية الخبيثة، بما في ذلك TanStack و UiPath و MistralAI.

