الدودة الرملية في الشيفرة: دودة الشاي-هولود تحفر عبر npm وGitHub
انتشر برمجية خبيثة ذاتية التكاثر بصمت داخل سلسلة توريد البرمجيات، مما أدى إلى اختراق مئات حزم npm وآلاف مستودعات المطورين حول العالم.
حقائق سريعة
- أكثر من 800 حزمة npm تم اختراقها، بإجمالي 132 مليون تحميل شهري
- المهاجمون سرّبوا أسراراً من ما لا يقل عن 26,300 مستودع GitHub
- الدودة، التي أطلق عليها اسم شاي-هولود، تتكاثر ذاتياً وتمسح الملفات إذا تم حظرها
- شملت المنظمات المتضررة الرئيسية AsyncAPI وZapier وPostman وENS
- استغل المهاجمون فترة انتقالية في سياسات الأمان ضمن نظام npm
دودة رملية مطلقة العنان: تشريح الهجوم
تخيل دودة رملية رقمية تزحف دون أن تُرى تحت سطح الشيفرة مفتوحة المصدر. هذه هي الحقيقة المرعبة التي واجهها مجتمع جافاسكريبت بعد ظهور دودة شاي-هولود - برمجية خبيثة ذاتية التكاثر اجتاحت مؤخراً نظام حزم npm بدهاء يشبه نظيرتها في رواية الكثيب.
على عكس الفيروسات التقليدية، تستغل شاي-هولود سلسلة توريد البرمجيات نفسها كطريق سريع. بمجرد أن يقوم مطور بتثبيت حزمة npm مصابة دون علمه، تبدأ الدودة بالعمل - تمسح جهاز الضحية بحثاً عن أسرار حساسة مثل كلمات المرور ومفاتيح API ورموز السحابة. ثم تقوم بتسريب هذه الكنوز إلى مستودعات GitHub عامة، معلمة بجرأة كغنائم يراها الجميع.
ما يميز هذا الهجوم هو توقيته ونطاقه. فقد ضربت الدودة قبل ترقية أمان مخطط لها على npm، مستغلة فترة لم يكن فيها العديد من المطورين قد اعتمدوا بعد أساليب نشر أكثر أماناً. سمح ذلك لشاي-هولود باختراق أكثر من 800 حزمة، العديد منها تديرها منظمات مرموقة مثل AsyncAPI وZapier وPostman وخدمة أسماء إيثيريوم.
هجمات سلسلة التوريد: تهديد قديم بحيل جديدة
هجمات سلسلة التوريد ليست جديدة. فقد أظهرت حوادث مثل اختراق event-stream الشهير عام 2018 واختراق SolarWinds كيف يمكن للمهاجمين تسميم البرمجيات الموثوقة "في المنبع"، مما يصيب عدداً لا يحصى من المستخدمين في المصب. ابتكار شاي-هولود يكمن في طبيعتها ذاتية التكاثر: فهي لا تسرق الأسرار فحسب، بل تحاول أيضاً نشر نفسها في المزيد من الحزم، مما يسرّع انتشارها.
وفقاً لشركة الأمن السيبراني Aikido Security، فإن أحدث إصدار من شاي-هولود يثبت بيئة تشغيل جافاسكريبت جديدة تسمى bun لتجنب الكشف، ويستهدف الآن حتى 100 حزمة في كل إصابة - أي خمسة أضعاف العدد السابق. وإذا فشلت في السيطرة على حساب المطور، تنتقم بحذف الملفات، وهي خطوة "الأرض المحروقة" نادراً ما تُرى في مثل هذه الهجمات.
حدد الباحثون بسرعة أكثر من 26,000 مستودع GitHub أنشأها المهاجمون، كل منها يحتمل أن يحتوي على بيانات اعتماد مسربة. حتى أن بعض الحزم المخترقة أظهرت علامات إصابة غير مكتملة، مما يشير إلى أن المهاجمين كانوا يتسابقون لتعظيم الضرر قبل أن ينتبه المدافعون.
الخطر الصامت للاعتماديات
قوة نظام npm - ترابطه الواسع - كانت أيضاً نقطة ضعفه. يعتمد معظم المطورين على عشرات أو مئات الحزم، ونادراً ما يدققون في كل حلقة في السلسلة. هذا الثقة العميقة، مع ضعف إدارة الأسرار، منح شاي-هولود حرية التوغل في آلاف المؤسسات دون علمها.
هذا الهجوم تذكير صارخ: تثبيت الشيفرة من الإنترنت ليس فعلاً تافهاً أبداً. كل اعتماد هو باب خلفي محتمل، واليقظة هي العلاج الوحيد. ومع انقشاع الغبار، يجب على المجتمع إعادة التفكير في كيفية إدارة الثقة والاعتمادات والأمان في عالم البرمجيات المتزايد تعقيداً.
ويكيكروك
- npm: npm هي مكتبة إلكترونية مركزية يشارك فيها المطورون حزم شيفرة جافاسكريبت لتطوير البرمجيات بكفاءة وأمان.
- هجوم سلسلة التوريد: هجوم سلسلة التوريد هو هجوم إلكتروني يستهدف مزودي البرمجيات أو الأجهزة الموثوقين، وينشر البرمجيات الخبيثة أو الثغرات إلى العديد من المؤسسات دفعة واحدة.
- مفتاح API: مفتاح API هو رمز فريد يسمح للبرامج بالوصول إلى البيانات أو الخدمات. إذا لم يُؤمن بشكل صحيح، فقد يشكل خطراً أمنياً.
- التحيز الذاتي: التحيز الذاتي هو عندما تفضل الشركة منتجاتها أو خدماتها بشكل غير عادل على حساب المنافسين، مما يؤثر غالباً على المنافسة وخيارات المستهلكين.
- سلسلة الاعتماديات: سلسلة الاعتماديات هي مجموعة من حزم البرمجيات التي تعتمد على بعضها البعض، مما يخلق مخاطر أمنية محتملة إذا تم اختراق أي حلقة في السلسلة.