قبل عامين، قام حساب باسم "shanhai666" بتحميل تسع حزم NuGet خبيثة. وقد أدى ذلك إلى هجوم معقد على سلسلة توريد البرمجيات.
بحسب شركة "سوكت" المتخصصة في أمن سلاسل التوريد، فقد تم تحميل هذه الحزم مجتمعةً 9488 مرة. إضافةً إلى ذلك، تم تحديد مواعيد محددة لتفعيلها في أغسطس 2027 ونوفمبر 2028.
اكتشف كوش بانديا، أحد أعضاء فريق سوكيت، الجهة الفاعلة التي تقف وراء الحملة التي نشرت ما مجموعه 12 حزمة. تحتوي تسع من هذه الحزم على إجراءات ضارة، بينما ثلاث منها عبارة عن تطبيقات كاملة الوظائف تخفي الباقي على أنه "موثوق"
يعتقد بانديا أن المخترق استخدم مكتبات شرعية إلى جانب المكتبات الخبيثة لخداع المطورين لتثبيت الحزم دون اكتشاف أي خلل أثناء الاختبارات الروتينية.
وكتب في تقرير بتاريخ 6 نوفمبر: "إن الوظائف المشروعة تخفي الحمولة الخبيثة المكونة من حوالي 20 سطراً والموجودة في آلاف الأسطر من التعليمات البرمجية المشروعة، وتؤخر اكتشافها لأنه حتى بعد التفعيل، تظهر الأعطال على أنها أخطاء عشوائية بدلاً من كونها هجماتmatic ".
9 تهديدات خفية في NuGet ضمن التعليمات البرمجية المشروعة
التسع التي تمdentتحديدها جميع مزودي قواعد البيانات الرئيسيين الثلاثة المستخدمين في تطبيقات .NET: Microsoft SQL Server وPostgreSQL وSQLite. وتستهدف إحدى هذه الحزم، Sharp7Extend، على وجه التحديد وحدات التحكم المنطقية القابلة للبرمجة (PLCs) الصناعية المستخدمة في التصنيع وأتمتة العمليات.
أشارت أبحاث شركة سوكيت إلى أن قاعدة البيانات قد تكون عرضة لهجوم مزدوج الغرض على سلسلة التوريد، مما يهدد تطوير البرمجيات وعمليات البنية التحتية الحيوية.
أطلق بانديا على حزمة Sharp7Extend اسمًا يعتبرها الأكثر خطورة بين الحزم الخبيثة، كونها خطأً إملائيًا في اسم مكتبة Sharp7 الشرعية .NET المستخدمة للتواصل مع وحدات التحكم المنطقية القابلة للبرمجة Siemens S7.

قد يُسهّل إضافة كلمة "Extend" إلى اسم الملف الموثوق تثبيتَ حزمة البرامج الخبيثة عن طريقdent، وذلك من خلال مهندسي الأتمتة الذين يبحثون عن تحسينات في Sharp7. تحتوي الحزمة على مكتبة Sharp7 الكاملة غير المعدلة مع حمولتها الخبيثة. قد يبدو اتصال PLC القياسي سليمًا أثناء الاختبار، لكن البرامج الخبيثة المُضمّنة تكون مخفية.
وقال الباحث الأمني: "يستهدف برنامج Sharp7Extend وحدات التحكم المنطقية القابلة للبرمجة الصناعية بآليتين للتخريب: إنهاء العملية العشوائي الفوري وفشل الكتابة الصامت الذي يبدأ بعد 30-90 دقيقة من التثبيت".
تستخدم الحزم الخبيثة أساليب الإضافة في لغة C# لإضافة تعليمات برمجية خطيرة إلى عمليات قواعد البيانات ووحدات التحكم المنطقية القابلة للبرمجة (PLC) دون تغيير التعليمات البرمجية الأصلية. بالنسبة لحزم قواعد البيانات، تُضاف دالة .Exec() إلى أنواع الأوامر، بينما تُضيف حزمة Sharp7Extend دالة .BeginTran() إلى كائنات S7Client.
يتم تشغيل هذه الإضافاتmaticفي كل مرة يقوم فيها تطبيق بإجراء PLC أو استعلام. بعد تاريخ التفعيل، يقوم البرنامج الخبيث بإنشاء رقم عشوائي بين 1 و100.
إذا تجاوز العدد 80، وهو احتمال بنسبة 20%، فإن الحزمة تُنهي العملية الجارية فورًا باستخدام Process.GetCurrentProcess().Kill(). ويحدث إنهاء مفاجئ دون أي تحذيرات أو سجلات قد تبدو كأنها عدم استقرار في الشبكة، أو أعطال في الأجهزة، أو أخطاء نظام أخرى "غير مُنذرة".
يُطبّق Sharp7Extend أيضًا آلية تأخير تلف الكتابة من خلال مؤقت يُحدد فترة سماح تتراوح بين 30 و90 دقيقة. بعد انقضاء فترة السماح، تبدأ دالة تصفية تُسمى ResFliter.fliter() بفشل عمليات الكتابة بصمت في 80% من الحالات.
تشمل الطرق المتأثرة WriteDBSingleByte و WriteDBSingleInt و WriteDBSingleDInt. تبدو العمليات ناجحة ظاهريًا بينما لا تُكتب البيانات فعليًا إلى وحدة التحكم المنطقية القابلة للبرمجة (PLC).
تم ضبط المؤقت من أغسطس 2027 إلى نوفمبر 2028
ذكر تقرير أمن المقابس أن بعض الحزم التي تركز على قواعد البيانات في مفترق طرق الحملة، بما في ذلك MCDbRepository، من المقرر أن تنفذ حمولتها في 8 أغسطس 2027. ومن المحتمل أن يتم تفعيل SqlUnicornCore وSqlUnicornCoreTest في 29 نوفمبر 2028.
وأوضح بانديا قائلاً: "يمنح هذا النهج التدريجي الجهة المهاجمة نافذة أطول لجمع الضحايا قبل أن يتم تشغيل البرامج الضارة ذات التنشيط المتأخر، مع تعطيل أنظمة التحكم الصناعية على الفور".
توصل تحقيق شركة سوكيت إلى أن اسم "shanhai666" وأجزاء من شفرة المصدر ذات أصل صيني.
في سبتمبر، كشف محللو الأمن السيبراني عن وجود شفرة على خوادم خدمات معلومات الإنترنت (IIS) من مايكروسوفت كانت تستغل الثغرات الأمنية منذ عام 2003. وتتضمن العملية وحدات IIS خبيثة تستخدم لتنفيذ الأوامر عن بعد والاحتيال في تحسين محركات البحث (SEO).

