TL؛ DR
شاي-هولود 3.0 هو أحدث تطور لبرمجية شاي-هولود الخبيثة التي تعمل بنظام npm، وهي دودة سلسلة التوريد ذاتية التكاثر استغلال حزم npm لسرقة بيانات الاعتماد، ونشرها تلقائيًا، واختراقها CI/CD البيئات. على عكس الموجات السابقة، تعمل Shai-Hulud 3.0 على تحسين منطق الانتشار الخاص بها، وتستهدف مكتبات الواجهة الأمامية الشائعة، وتسرع العدوى من خلال إساءة استخدام رمز الصيانة.
ونتيجة لذلك، يثبت برنامج shai-hulud الخبيث مرة أخرى أن هجمات سلسلة التوريد الحديثة لـ npm لم تعد تعتمد على الثغرات الأمنية غير المعروفة، بل على الأتمتة وإساءة استخدام الثقة وسير عمل المطورين.
ما هو شاي-هولود 3.0؟
Shai-Hulud 3.0 هي الموجة الثالثة المؤكدة لحملة برامج Shai-Hulud npm الخبيثة، وذلك بعد دودة Shai-Hulud الأصلية وانتشار Shai-Hulud 2.0 واسع النطاق.
مع ذلك، لا يُقدّم هذا الإصدار ثغرة جديدة جذرياً، بل يُحسّن الكفاءة والتخفي والاستهداف. بعبارة أخرى، يُحسّن برنامج Shai-Hulud 3.0 نموذج الهجوم على سلسلة التوريد بدلاً من إعادة ابتكاره.
والأهم من ذلك، أن البرامج الضارة تستمر في العمل كدودة، وليس كحزمة خبيثة لمرة واحدة.
لماذا يُعدّ Shai-Hulud 3.0 مهمًا لأمن npm
للوهلة الأولى، قد يبدو Shai-Hulud 3.0 وكأنه "مجرد حزمة npm خبيثة أخرى". ومع ذلك، فإن هذا الافتراض هو بالضبط سبب نجاح هذه الحملة.
لأن أنظمة npm تعتمد بشكل كبير على:
- الثقة الضمنية
- عمليات التثبيت الآلية
- بيانات اعتماد المسؤول عن الصيانة
- CI/CD pipelines
يمكن لرمز مميز واحد مخترق أن يتصاعد بسرعة إلى تفشي كامل للبرمجيات الخبيثة في سلسلة توريد npm.
ونتيجة لذلك، لا يحتاج برنامج شاي هولود الخبيث إلى ثغرات أمنية، بل يستغل سير العمل العادي كسلاح.
طريقة هجوم شاي هولود 3.0: كيف ينتشر برنامج npm الخبيث
العدوى الأولية عبر حزمة npm خبيثة
يدخل برنامج shai-hulud npm الخبيث إلى النظام البيئي من خلال حزم طروادة يتم نشرها تحت حسابات صيانة شرعية أو مخترقة.
في موجة Shai-Hulud 3.0، لاحظ الباحثون انتشار العدوى من خلال التبعيات الشائعة، بما في ذلك الحزم الموجهة للواجهة الأمامية مثل:
@vietmoney/react-big-calendar
نظراً لأن هذه الحزم تقع في أعلى مخططات التبعية، فإن عملية تثبيت واحدة تنتشر بسرعة عبر المشاريع.
جمع بيانات الاعتماد وتكاثر الديدان
بمجرد تثبيته، يقوم برنامج Shai-Hulud 3.0 بتنفيذ برامج نصية ضارة أثناء دورة حياته. install or postinstall.
في هذه المرحلة، يقوم البرنامج الخبيث بما يلي:
- يقوم بفحص الملفات المحلية ومتغيرات البيئة
- يستخرج رموز npm وبيانات اعتماد GitHub
- يحدد المستودعات والحزم التي يمكن الوصول إليها
لذلك، تنتقل العدوى فوراً من حل وسط محلي إلى انتشار على مستوى النظام البيئي.
إعادة النشر التلقائي عبر محافظ الصيانة
بعد جمع بيانات الاعتماد، برمجيات خبيثة من نوع شاي هولود npm يقوم البرنامج بحصر جميع الحزم المملوكة للمشرف المخترق.
ثم، هو:
- يقوم بحقن التعليمات البرمجية الخبيثة في الإصدارات الجديدة
- يعيد نشر تلك الإصدارات تلقائيًا
- يحوّل كل ضحية إلى نقطة توزيع جديدة
ونتيجة لذلك، يمكن لرمز مميز واحد مسروق أن يصيب عشرات أو مئات من حزم npm في غضون ساعات.
شاي-هولود 3.0 مقابل الموجات السابقة
ما الذي تغير في شاي-هولود 3.0؟
على الرغم من أن الآليات الأساسية لا تزال مألوفة، شاي-هولود 3.0 يُدخل العديد من التحسينات المهمة.
وأبرزها:
- منطق انتشار أسرع
- هيكل حمولة أنظف
- اندماج أفضل مع تحديثات الحزمة الأصلية
- انخفاض مستوى الضوضاء مقارنة بشاي هولود 2.0
وبالتالي، يصبح الكشف القائم فقط على السمعة أو الثغرات الأمنية غير فعال.
| البعد | شاي-هولود 2.0 | شاي-هولود 3.0 |
|---|---|---|
| ناقل العدوى الأولي | حزم npm خبيثة تحتوي على نصوص برمجية لدورة حياة ما قبل التثبيت | حزم npm خبيثة تستغل المكتبات الموثوقة ذات الرؤية العالية ومسارات التحديث |
| الهدف الأساسي | نظام npm البيئي و CI/CD pipelines | نظام npm البيئي مع التركيز على أجهزة المطورين والمستهلكين النهائيين |
| آلية الانتشار | سرقة بيانات الاعتماد متبوعة بإعادة نشر الحزم آليًا | إعادة استخدام بيانات الاعتماد بالإضافة إلى إساءة استخدام الثقة في التبعية لتوسيع نطاق الوصول بشكل أسرع |
| إساءة استخدام وقت التشغيل | تثبيت وقت تشغيل Bun أثناء التشغيل | إعادة استخدام بيئة تشغيل Node.js الحالية ومسارات التنفيذ الموثوقة |
| CI/CD سوء المعاملة | سير عمل GitHub Actions المخفي والمشغلات ذاتية الاستضافة | عقار مخفض CI/CD الضوضاء، مزيد من التركيز على التنفيذ الخفي على مستوى الحزمة |
| سلوك الحمولة | حمولات جافا سكريبت كبيرة ومشفرة وفحص البيئة | حمولات أصغر حجماً وأكثر استهدافاً تركز على الاستمرارية والانتشار |
| استهداف بيانات الاعتماد | رموز GitHub، ورموز npm، وبيانات اعتماد السحابة، وأسرار التكامل المستمر | نفس أهداف بيانات الاعتماد، مع إعادة استخدام أسرع وتسريب أقل وضوحًا |
| الضوضاء التشغيلية | صاخب للغاية: إنشاء مستودعات جماعية، وإدخال سير العمل، والتحميلات المجمعة | انخفاض مستوى الضوضاء: عدد أقل من التشوهات المرئية، يصعب اكتشافها من خلال المراجعة اليدوية |
| تأثير الشعاع | كبيرة الحجم ولكن يمكن اكتشافها بسبب الحجم والتشوهات | قد تكون أكبر حجماً بسبب التخفي وإساءة استخدام الطرود الموثوقة |
| التحدي الدفاعي | وقف CI/CD إساءة الاستخدام وتسريب بيانات الاعتماد | الكشف عن السلوك الضار داخل الحزم المشروعة ظاهريًا |
لماذا لا تزال هذه هي نفس الدودة؟
على الرغم من تلك التغييرات، لا يزال Shai-Hulud 3.0 من نفس فئة دودة سلسلة توريد npm.
فهو يعتمد على:
- إعادة استخدام بيانات الاعتماد
- إعادة النشر الآلية
- التبعية الثقة
- CI/CD
لذلك، فإن أي بيئة تقوم بتثبيت حزم npm بدون ضوابط سلوكية تظل عرضة للخطر.
مؤشرات التسوية
ينبغي على فرق الأمن التي تحقق في برمجيات شاي هولود الخبيثة البحث عن الإشارات التالية:
- طرأت تغييرات غير متوقعة على إصدار الحزمة
- تمت إضافة نصوص دورة الحياة بدون مبرر
- كتل جافا سكريبت مشوشة
- طلبات الشبكة الصادرة أثناء التثبيت
- npm أو GitHub جيثب: الرموز التي يتم الوصول إليها وقت التثبيت
- CI/CD سلوك غير متوقع للوظائف بعد تحديثات التبعيات
والأهم من ذلك، أن أياً من هذه الأمور لا يتطلب وجود CVE.
لماذا تفتقد أدوات أمان npm التقليدية إلى Miss Shai-Hulud 3.0؟
فشل الكشف القائم على CVE
لأن برنامج Shai-Hulud 3.0 يستغل سير العمل المشروع، فإن الماسحات الضوئية التي تركز فقط على الثغرات الأمنية المعروفة لا ترى أي خطأ.
هنالك:
- لا توجد وظيفة معرضة للخطر
- لا توجد واجهة برمجة تطبيقات غير آمنة
- لا يوجد تلف في الذاكرة
بدلاً من ذلك، هناك نية خبيثة مضمنة في جافا سكريبت العادية.
SBOM لا يكفي مجرد الظهور.
وبالمثل، SBOMs يمكن ان يخبرك ماذا أنت تعتمد عليه، ولكن ليس ما يفعله وقت التثبيت.
ونتيجة لذلك، فإن الشفافية بدون تطبيق القانون لا توقف دودة سلسلة التوريد.
كيف يمنع برنامج Xygeni هجمات Shai-Hulud 3.0 على سلسلة توريد npm؟
وهنا تحديداً تكمن أهمية تصميم Xygeni المعماري.
الإنذار المبكر بالبرمجيات الخبيثة (MEW): إيقاف برمجيات npm الخبيثة عند النشر
نظام Xygeni للتحذير المبكر من البرامج الضارة (MEW) يقوم بفحص حزم npm المنشورة حديثًا بشكل مستمر في الوقت الفعلي.
يكشف برنامج MEW ما يلي:
- الحمولات المشوشة
- نصوص دورة الحياة المشبوهة
- سلوك جمع بيانات الاعتماد
- عمليات كتابة غير طبيعية في نظام الملفات
- نشاط شبكي غير متوقع
والأهم من ذلك، أن MEW يستطيع حظر عمليات البناء تلقائيًا، مما يمنع برامج shai-hulud الخبيثة من الدخول نهائيًا. CI/CD.
Guardrailsفرض سلوك الاعتماد الآمن
زيجيني Guardrails تطبيق سياسات صارمة في الداخل pipelines.
هم:
- قم بحظر حزم npm الضارة أو المشبوهة
- منع تنفيذ البرامج النصية المخفية للتثبيت
- إيقاف تنزيلات وقت التشغيل أثناء عمليات البناء
- فرض سلامة ملف القفل
ونتيجة لذلك، pipeline يتوقف قبل أن ينفذ الفيروس مهمته.
CI/CD الأمن: الحماية Pipelines من الإساءة
لأن شاي-هولود 3.0 غالباً ما يتحول إلى CI/CDشاشات Xygeni pipelineل:
- تغييرات سير العمل غير المصرح بها
- أنماط تنفيذ غير طبيعية
- إساءة استخدام الأذونات
- حقن سير العمل المُفعّل بالتبعية
في حال ظهور سلوك محفوف بالمخاطر، يقوم جهاز Xygeni بحظره. pipeline على الفور، مما يؤدي إلى قطع الحركة الجانبية.
حماية الأسرار: تقليل نصف قطر الانفجار
بما أن برمجية شاي هولود الخبيثة تسرق بيانات الاعتماد بشكل عدواني، يركز زيجيني أيضاً على الأسرار.
زيجيني:
- يكشف الأسرار المكشوفة في جميع أنحاء SDLC
- يقوم بتدوير بيانات الاعتماد عالية المخاطر تلقائيًا
- يفرض ممارسات أكثر أمانًا للرموز المميزة
لذلك، حتى في حالة تشغيل البرامج الضارة، تفقد الأسرار المسروقة قيمتها بسرعة.
لماذا يؤكد شاي هولود 3.0 اتجاهاً طويل الأمد
في نهاية المطاف، يؤكد شاي هولود 3.0 حقيقة أوسع.
هجمات سلسلة التوريد الحديثة لـ npm:
- ينتشر تلقائيًا
- تتحرك بشكل أسرع من المراجعة البشرية
- استغل الثقة، لا الثغرات الأمنية
- الهدف pipelines، وليس مجرد رمز
وبالتالي، فإن الدفاع ضد برامج shai-hulud npm الخبيثة يتطلب الكشف السلوكي والتنفيذ، وليس مجرد المسح.
ملاحظات ختامية: لماذا لا يزال شاي هولود 3.0 مهمًا؟
على الرغم من أن Shai-Hulud 3.0 لا يقدم ثغرة جديدة مبهرة، إلا أنه يمثل نموذج هجوم ناضج وقابل للتكرار والتوسع.
بمعنى آخر، لن تكون هذه الموجة الأخيرة.
ستستمر الفرق التي تعتمد على الأمن التفاعلي في ملاحقة الإصابات. أما الفرق التي تحظر السلوك الخبيث مبكراً فستوقف الدودة تماماً.
هذا هو الفرق.







