تحليل الملفات المستخدمة في هجوم برنامج الفدية الخاص بـ ESXiARG ضد خوادم VMware ESXi
في أحدث هجوم يمثل تهديدًا ضد خوادم VMware ESXi، يتم استخدام برنامج نصي مخصص لبرنامج الفدية ESXiARGS لاستغلال ثغرة RCE القديمة (CVE-2021-21974). فيما يلي تحليل فني للملفات المستخدمة في هجوم برامج الفدية.
تهاجم الجهات الفاعلة في مجال التهديد خوادم VMware ESXi باستخدام برنامج نصي مخصص لبرامج الفدية.
يستغل برنامج الفدية ثغرة RCE قديمة (CVE-2021-21974) في إصدارات ESXi:7.0 قبل ESXI70U1C-173255516.7 قبل ESXi670-202102401-SG6.5 قبل ESXI650-202102101-SG
التأثير
يقوم برنامج الفدية بتشفير الملفات المخزنة على الخوادم باستخدام تشفير البث RSA و Sosemanuk.
يمكن أن يؤدي ذلك إلى فقدان البيانات واستمرارية الأعمال والإيرادات.
التخفيف
قم بتحديث الخوادم إلى أحدث الإصدارات وتثبيت التصحيحات الضرورية.
قم بعمل نسخة احتياطية منتظمة لجميع البيانات المخزنة على الخوادم.
التحليل والإسناد
في 3 فبراير 2023، كانت هناك زيادة في الهجمات التي تستهدف خوادم VMware ESXi. كانت الجهات الفاعلة في مجال التهديد تستفيد من ثغرة قديمة (CVE-2021-21974) من أجل الحصول على RCE (تنفيذ التعليمات البرمجية عن بُعد) وإطلاق هجمات برامج الفدية.
يُعد إصدار OpenSLP المستخدم في إصدارات ESXi 7.0 قبل ESXi70U1C-17325551، و6.7 قبل ESXi670-202102401-SG، و6.5 قبل ESXI650-202102101-SG عرضة لهجوم تجاوز السعة، مما سمح للمهاجمين بتنفيذ التعليمات البرمجية عن بُعد.
في 03 فبراير 2023، عضو في منتدى بليبينغ للكمبيوتر خيط، مع إمكانية الوصول إلى خادم مستهدف، قاموا بمشاركة برنامج نصي وملف تنفيذي، تم العثور عليه على خوادم ESXi الخاصة بهم. وبحسب ما ورد تم استخدام هذه الملفات لتشفير محتويات خوادم ESXi الخاصة بهم.
الملفات المتعلقة بالهجوم التي شاركها أحد الأعضاء
نظرة عامة على الملفات
encrypt.sh (البرنامج النصي)
يتم استخدام البرنامج النصي لإعداد الهدف للتشفير، وتحميل حمولة برامج الفدية المستخدمة لتشفير الخادم.
يبحث البرنامج النصي عن امتدادات ملفات محددة (.vmdk و.vmx و.vmxf و.vmsd و.vmsn و.vswp و.vmss و.nvram و.vmem) على الخادم، ويحسب أحجامها، ويبدأ التشفير.
كما أنها مسؤولة عن تحرير تكوين الخادم وإعادة تسمية الملفات المهمة. يتم ذلك من أجل جعل من الصعب استعادة النظام.
بمجرد الانتهاء من جميع العمليات، يقوم البرنامج النصي بإجراء تنظيف ويترك مذكرة فدية على خادم الضحية.
تشفير ثنائي (حمولة رانسوم وير)
ثنائي يستخدمه البرنامج النصي لتشفير الملفات المستهدفة على الخادم.
يستخدم مفتاح RSA العام وتشفير تدفق SOSEMANUK لتشفير الملفات.
التحليل الفني (encrypt.sh)
يتم كتابة البرنامج النصي في Bash. وهي مسؤولة عن إعداد النظام، واستدعاء حمولة Ransomware من أجل تشفير الملفات. بمجرد الانتهاء من ذلك، يقوم بإجراء تنظيف على النظام.
عمليات ما قبل التشفير
يبدأ البرنامج النصي بتعيين دليل العمل الخاص به كـ /tmp/. يتم تخزين الملفات التي تستخدمها للهجوم هنا. بعد ذلك، يستخدم الأمر قائمة عمليات esxcli vm | grep «ملف التكوين» | awk '{print $3}' للعثور على ملفات التكوين المرتبطة بالأجهزة الافتراضية على الخادم.
ثم يستبدل أسماء ملفات صورة القرص وملف المبادلة في جميع ملفات التكوين بـ 1. vmdk و 1.vswp. يتم ذلك لجعل من الصعب على الضحايا استعادة الأجهزة الافتراضية وإعادة تكوينها، نظرًا لأن تحديد صور القرص وملفات المبادلة سيكون مستحيلًا تقريبًا.
إعداد دليل العمل وإعادة تسمية صورة القرص وملفات المبادلة المرتبطة بالأجهزة الافتراضية على الخادم
بعد ذلك، يقوم البرنامج النصي بقتل عمليات VM قيد التشغيل باستخدام قتل أمر. البرنامج النصي جاهز الآن لبدء تشفير جميع الملفات على الخادم.
قتل عمليات VM قيد التشغيل
التشفير
يبدأ البرنامج النصي عمليات التشفير الخاصة به عن طريق إنشاء تشفير ثنائي قابل للتنفيذ لجميع المستخدمين والمجموعات، باستخدام الأمر chmod +x. ثم يقوم بالتكرار على محتويات نظام الملفات، بحثًا عن جميع الملفات ذات الامتدادات .vmdk و.vmx و.vmxf و.vmsd و.vmsn و.vswp و.vmss و.nvram و.vmem. يتم استخدام جميع ملحقات الملفات هذه بواسطة الأجهزة الافتراضية، على سبيل المثال، صور القرص وملفات التكوين وملفات المبادلة وما إلى ذلك.
البحث عن الملفات ذات امتدادات الملفات المستهدفة
يقوم البرنامج النصي بعد ذلك بحساب أحجام الملفات التي تحتوي على الامتدادات المستهدفة، ويعطي امتدادات أسماء الملفات المستهدفة وأحجامها كوسيطات لـ تشفير ثنائي، جنبا إلى جنب مع . قصيدة ملف رئيسي.
عند التحقيق في استخدام البرنامج الثنائي، وجد أن . قصيدة الملف هو مفتاح RSA العام الذي يتم استخدامه في عملية التشفير.
الحجج التي اتخذها الثنائي
يؤدي هذا إلى بدء عملية التشفير. لاحظ أن هناك .args ملف تم إنشاؤه لكل ملف مشفر يحتوي على بيانات وصفية حول الملف. قد يكون هذا ضروريًا لعملية فك التشفير.
تشفير الملفات
عمليات ما بعد التشفير والتنظيف
بمجرد تشفير الملفات، يحل البرنامج النصي أولاً محل رسالة اليوم (.motd) ملف مع مذكرة الفدية. ثم تقوم بحذف جميع ملفات السجل لتغطية مساراتها. يتأكد من انتهاء عملية التشفير قبل المضي قدمًا في القيام بذلك.
تغيير رسالة اليوم إلى مذكرة الفدية وحذف جميع السجلات
ثم يقوم بحذف الملف /sbin/مسبار المضيف، وهو ملف يستخدمه استضافت برنامج خفي لإدارة الأجهزة الافتراضية. في حالة وجود نسخة احتياطية من هذا الملف، يتم تعديل الطابع الزمني للملف لإخفاء أي تغييرات تم إجراؤها على الملف.
اعتمادًا على بنية VMware، يقوم البرنامج النصي بتنفيذ عمليات مختلفة. إذا لم يكن إصدار VMware build 7.0، فإنه ينفذ الخطوات التالية لإخفاء أي مهام cron يديرها المستخدم الجذر:
يقوم البرنامج النصي بتعديل محتويات /فار/سبول/كرون/كرونتابس/روت ملف. يقوم بحذف الأسطر الثمانية الأولى من الملف.
قم بإعادة تسمية الملف الجديد باسم الملف الأصلي.
يحذف الملف الأصلي.
يغير الطابع الزمني للملف الجديد.
حذف وإعادة إنشاء ملف crontabs الجذري
بالنسبة للإصدار 7.0 من إصدار VMware:
يقوم بإزالة السطر الأول من /sbin/مسبار المضيف الملف والكتابة فوق الملف الأصلي.
حذف وإعادة إنشاء ملف crontabs الجذري
أخيرًا، يقوم البرنامج النصي بإجراء عمليات التنظيف الخاصة به. عمليات التنظيف هي كما يلي:
حذف الملف /store/packages/vmtools.py. لاحظ أن اسم الملف هذا مرتبط بباب خلفي تم إنشاؤه لخوادم ESXi في الماضي.
حذف السطر الأخير من الملف /etc/vmware/rhtpproxy/endpoints.conf، وتعديل الطابع الزمني.
قم بتعديل الطابع الزمني لـ /bin/hostd-probe.sh ملف.
احذف جميع الملفات المستخدمة في الهجوم، والتي يتم تخزينها في دليل العمل.
عمليات التنظيف
بعد عمليات التنظيف، يبدأ البرنامج النصي خدمة SSH، ربما في حالة رغبة ممثل التهديد في العودة إلى الخادم.
التحليل الفني (تشفير ثنائي)
إن حمولة برامج الفدية التي يستخدمها البرنامج النصي هي نسخة ELF ثنائية 64 بت تم تجميعها في دول مجلس التعاون الخليجي، والتي تحمل الاسم تشفير. يتم عرض الحجج التي يتخذها الثنائي أدناه:
الحجج التي اتخذها الثنائي
عمليات ما قبل التشفير
يقوم أولاً بتهيئة ليبسل مكتبة باستخدام init_libssl وظيفة. تحتوي هذه المكتبة على وظائف تُستخدم في التشفير.
ثم تنتقل إلى الحصول على معلومات حول المفتاح العام لـ RSA الذي تم توفيره مسبقًا، وتقوم بإنشاء كائن RSA، من أجل تشفير RSA للملفات. يتم ذلك باستخدام احصل على بيانات pk_ و create_rsa_obj وظيفة.
بعد ذلك، تستدعي تشفير الملف وظيفة
عمليات ما قبل التشفير
التشفير
تم تطبيق طبقتين من التشفير:
باستخدام مفتاح RSA العام في وقت سابق، يتم تشفير الملفات أولاً بواسطة RSA. يتم ذلك باستخدام تشفير rsa_ وظيفة.
ثم يتم تشفير الملفات بشكل إضافي باستخدام مكتبة Sosemanuk. Sosemanuk عبارة عن تشفير تيار يهدف إلى تحقيق كفاءة كبيرة على الأجهزة منخفضة التكلفة. يتم ذلك باستخدام لذا قم بالتشفير الوظيفة، والتي يتم استدعاؤها بواسطة تشفير بسيط وظيفة.
يتم استدعاء الوظيفتين على اليسار، ووظيفة sosemanuk_incrypt داخل وظيفة encrypt_simple على اليمين
تحليل OSINT
كشف تحليل OSINT عن إصابة أكثر من 3200 منظمة، على الرغم من صعوبة التأكد من عدد الخوادم الضعيفة. ومع ذلك، يمكن استخدام Shodan و Censys للتحقق من المنظمات المصابة.
يمكن تشغيل استعلام مماثل على Censys للحصول على المنظمات المصابة أيضًا:
عناوين بيتكوين الفدية
تطلب المجموعة مبلغ الفدية عبر عناوين BTC التالية:
1 باك دي دي 9 اف كيو ار دبليو جي 4 جي سي جي 27 فولت عرض 8 اكس بي زد ام اف 1
1 جي كويك إكس إف 8 تيير إف بي واي 79 تي أر في 7 إكس آر تي إم جي سي 92
ومع ذلك، لا توجد معاملات على العناوين حتى الآن.
مذكرة الفدية
تحتوي مذكرة الفدية المعروضة للضحايا على مبلغ الفدية بعملة البيتكوين ومعرف TOX الذي يُطلب من الضحايا الوصول إليه لفك تشفير ملفاتهم. وبحسب ما ورد، تختلف كمية بيتكوين ومعرف TOX من ضحية إلى أخرى.
مثال على مذكرة الفدية المعروضة للضحايا
الكشف في البرية
الباحثون في كلاود سيكقام فريق Threat Intelligence بكتابة قواعد اكتشاف YARA لكل من الملفات المستخدمة في هذا الهجوم. ارجع إلى الملحق.