هجوم متطور على سلسلة توريد البرمجيات، يُطلق عليه اسم ForceMemo، يقوم حاليًا باختراق مئات مستودعات كود بايثون من خلال استغلال رموز وصول GitHub المسروقة. هذه الحملة تمثل تطورًا جديدًا في عملية برمجيات GlassWorm الخبيثة الأوسع نطاقًا. وفقًا لشركة StepSecurity المتخصصة في أمن سلسلة توريد البرمجيات، يستخدم المهاجمون بيانات اعتماد المطورين المخترقة للوصول إلى الحسابات، ثم يقومون بإعادة تعيين الأساس (Rebase) للإيداعات الشرعية الأخيرة على الفرع الرئيسي للمستودع بطريقة خبيثة. يلحق المهاجمون برامج ضارة معتمة على ملفات رئيسية مثل `setup.py` و `main.py` و `app.py` قبل دفع الإيداعات الملوثة قسرًا مرة أخرى إلى GitHub. والحاسم في هذه الطريقة هو أنها تحافظ على البيانات الوصفية للإيداع الأصلي—بما في ذلك الرسالة والمؤرخ وتاريخه—مما يجعل الحقن الخبيث صعب الاكتشاف للوهلة الأولى. تستهدف الحملة على وجه التحديد مجموعة واسعة من مشاريع بايثون، بما في ذلك تطبيقات Django، وكود أبحاث التعلم الآلي، ولوحات تحكم Streamlit، وحزم PyPI. أي مطور يقوم بعد ذلك بتشغيل أمر `pip install` من مستودع مخترق أو يستنسخ الكود وينفذه، سيؤدي عن غير قصد إلى تشغيل البرنامج الضار.
يتكشف التنفيذ التقني لهجوم ForceMemo في عملية محسوبة من أربع خطوات. أولاً، يخترق المهاجمون حساب المطور، على الأرجح عبر رموز الوصول الشخصية المسروقة لـ GitHub أو بيانات اعتماد OAuth. بعد تأمين صلاحية الكتابة، يقومون بعد ذلك جلب آخر إيداع من الفرع الرئيسي للمستودع. في الخطوة الثالثة والأكثر حسمًا، يعيدون تعيين أساس هذا الإيداع، بحقن كود خبيث معتم في الملفات المستهدفة قبل دفع التاريخ المعدل قسرًا إلى المستودع البعيد. هذا "الدفع القسري" يستبدل تاريخ الفرع الحالي، مما يدمج البرنامج الضار فعليًا في سلالة المشروع. تُفيد تقارير StepSecurity أن أول حالات الحقن التي تم رصدها تعود إلى 8 مارس 2026. ومع ذلك، يكشف تحليل سلسلة الكتل (Blockchain) أن بنية التحكم والسيطرة (C2) كانت نشطة في وقت أبكر بكثير؛ حيث بدأت المعاملات الموجهة إلى عنوان محفظة Solana التابعة للمهاجم في 27 نوفمبر 2025—أي قبل أكثر من ثلاثة أشهر. شهدت هذه المحفظة حوالي 50 معاملة، مع قيام المهاجم بتحديث عنوان URL للحمولة المستضافة هناك بشكل متكرر، أحيانًا عدة مرات في اليوم، للحفاظ على السيطرة وتجنب الإزالة.
لا تحدث حملة ForceMemo هذه بمعزل عن غيرها، بل هي جزء من هجوم مستمر ومتعدد الجوانب ينفذه التهديد المعروف باسم GlassWorm. في الوقت نفسه، حددت شركة الأمن Socket نسخة منفصلة من GlassWorm تستهدف بيئة التطوير من خلال إضافات Visual Studio Code. هذا البديل يستخدم نفس التكتيكات الأساسية ولكنه يعزز قدرته على البقاء والتخفي من خلال إساءة استخدام آليتي `extensionPack` و `extensionDependencies`. وهذا يخلق نموذج توزيع متعدٍ، حيث يمكن لتثبيت إضافة تبدو حميدة أن يؤدي إلى تنزيل تبعية خبيثة. وفي اكتشاف متوازٍ، ربطت شركة Aikido Security تهديد GlassWorm بحملة جماعية منفصلة اخترقت أكثر من 151 مستودعًا على GitHub عن طريق إخفاء كود خبيث باستخدام أحرف Unicode غير المرئية. ومن المثير للاهتمام، أن الحمولة المفككة التشفير من هذه الهجمات مهيأة أيضًا لاسترداد التعليمات من نفس عنوان محفظة Solana المستخدم في هجمات ForceMemo، مما يشير بقوة إلى وجود جهة تهديد واحدة منسقة وراء هذه الأساليب المتنوعة.
يشير تقارب هذه الهجمات—التي تستهدف مستودعات GitHub عبر الرموز المسروقة، وإساءة استخدام نماذج الثقة في إضافات VS Code، وإخفاء الكود بحيل Unicode—إلى وجود جهة تهديد ناضجة وقابلة للتكيف تركز بعمق على سلامة سلسلة توريد البرمجيات. الهدف الأساسي يبدو هو إنشاء موطئ قدم دائم داخل بيئات التطوير لسرقة بيانات الاعتماد أو الملكية الفكرية أو تمكين المزيد من التسللات إلى الشبكات. بالنسبة للمطورين والمنظمات، فإن الآثار خطيرة. وهذا يؤكد على الأهمية القصوى لتأمين حسابات GitHub بكلمات مرور قوية وفريدة، وتمكين المصادقة الثنائية، ومراجعة رموز الوصول الشخصية وأذونات تطبيقات OAuth بدقة. علاوة على ذلك، يجب على المنظمات تنفيذ مراقبة قوية للأنشطة غير الطبيعية في المستودعات، مثل عمليات الدفع القسري من مواقع غير مألوفة، والنظر في استخدام أدوات يمكنها اكتشاف الكود المعتم والتبعيات المشبوهة في دورة حياة تطوير البرمجيات الخاصة بها.



