إلى الخلف
جدول المحتوى

في الجزء الثاني من المدونة، نواصل تتبع سلوك البرامج الضارة بعد تفريغ العملية. عملية التفريغ يتبعها:

  • تحديد هوية الضحية
  • فحص سطر الأوامر وتعداد العمليات
  • آليات الثبات
  • تشفير الملفات

 

اقرأ الجزء 1 هنا.

 

تحديد الضحية

تحاول الحمولة النهائية التي يتم نشرها بعد تفريغ العملية الوصول إلى نقطة نهاية API على الإنترنت، لتحديد التفاصيل الجغرافية للضحية.

 

لتحديد تفاصيل الموقع، تستخدم البرامج الضارة وظائف تم تصديرها بواسطة «wininet.dll»:

  • إنترنت مفتوح ()
  • عنوان URL المفتوح للإنترنت ()
  • ملف القراءة على الإنترنت ()
  • مقبض إغلاق الإنترنت ()

 

الخطوة 1: يتم استخدام وظيفة InternetOpenW () لتهيئة نشاط الإنترنت من خلال استخدام «Microsoft Internet Explorer» كوكيل المستخدم.

2 DJVU/STOP 1

 

الخطوة 2: يتم تحديد الضحية عن طريق إرسال طلب GET إلى عنوان url التالي: https://api.2ip.ua/geo.json عبر InternetOpenURLW () ويتم تخزين الاستجابة من نقطة نهاية api في الذاكرة.

2 DJVU/STOP 2

الخطوة 3: يتم استخدام وظيفة InternetReadFile () لتخزين استجابة الخادم في ذاكرة العملية كما هو موضح أدناه:

2 DJVU/STOP 3

 

  • يتم تخزين الاستجابة في الذاكرة:

2 DJVU/STOP 4

  • يتم التقاط نفس الاستجابة باستخدام متصفح الويب من خلال زيارة واجهة برمجة التطبيقات الموضحة في الصورة أدناه، والتي تحتوي على معايير مختلفة مثل IP وcountry_code والمنطقة وخطوط الطول والعرض والرمز البريدي والمنطقة الزمنية.

2 DJVU/STOP 5

 

  • يُستخدم رمز البلد لتصنيف الضحية من قائمة البلدان المخزنة في البرامج الضارة لمنع التشفير من العمل على الأنظمة في البلدان/اللغات المدرجة في القائمة البيضاء.
  • تقوم البرامج الضارة بمعالجة الاستجابة من الخادم وتحديد «country_code» للتحقق من قيمة المعلمة مقابل قائمة محددة مسبقًا من اللغات/البلدان.

2 DJVU/STOP 6

 

  • كما هو موضح في الصورة أعلاه، فإن البلدان المدرجة في القائمة البيضاء هي:
    • روسيا
    • روسيا البيضاء
    • أوكرانيا
    • أذربيجان
    • أرمينيا
    • طاجيكستان
    • كازاخستان
    • قرغيزستان
    • أوزبكستان
    • سوريا
  • إذا كانت المعلمة «country_code» تتطابق مع أي من رموز البلدان المدرجة في القائمة البيضاء، فإن البرامج الضارة تخرج من العملية وتنتهي من تلقاء نفسها.

 

فحص سطر الأوامر وتعداد العمليات

يعتمد سلوك البرامج الضارة على حجج سطر الأوامر.

The code responsible for processing the command line arguments
الكود المسؤول عن معالجة وسيطات سطر الأوامر

 

  • تقوم الدالة getCommandLineW باسترداد وسيطات سطر الأوامر وتخصص الدالة commandlineToArgvw ذاكرة متجاورة للمؤشرات إلى سلاسل الوسيطة.
  • تعمل البرامج الضارة على حل الوظائف المحددة في psapi.dll والتي تؤدي المهام المتعلقة بالعملية لتعداد العمليات التي تعمل على النظام.
  • يُلاحظ هذا السلوك في برامج الفدية التي تنشر برامج تحميل البرامج الضارة في المرحلة التالية والتعليمات البرمجية الضارة للتهرب. لذلك، يتم حل الوظائف التالية:
    • عمليات التعداد الخاصة بـ PSAPI.Enum
    • وحدات معالجة PSAPI.Enum
    • PSAPI. احصل على اسم قاعدة الوحدة الجديدة
  • يفتح برنامج الفدية كل عملية تعمل على النظام عبر OpenProcess API ويسترد المقابض لكل عملية قيد التشغيل.
  • بهذه الطريقة، يمكن للبرامج الضارة لاحقًا إجراء اتصالات بالعمليات الجارية. يتم استدعاء EnumProcess API من خلال كل عملية قيد التشغيل للحصول على تفاصيل العملية.

2 DJVU/STOP 8

 

آلية الثبات

افتراضيًا، لا يحتوي التشغيل الأولي لبرنامج الفدية على أي حجج لسطر الأوامر. ومن ثم فإن تدفق التحكم، بعد تحديد الضحية، هو اكتساب الثبات على نظام الضحية.

 

الثبات من خلال التسجيل
    • على جهاز يعمل بنظام Windows، يتم استهداف مفاتيح التسجيل التالية بشكل متكرر بواسطة البرامج الضارة للحصول على الثبات على النظام:
  • HKEY_LOCAL_MACHINE\ البرنامج\ ميكروسوفت\ ويندوز\ الإصدار الحالي\ تشغيل
  • HKEY_LOCAL_MACHINE\ البرنامج\ ميكروسوفت\ ويندوز\ الإصدار الحالي\ تشغيل مرة واحدة
  • HKEY_CURRENT_USER\ البرنامج\ ميكروسوفت\ ويندوز\ الإصدار الحالي\ تشغيل
  • HKEY_CURRENT_USER\ البرنامج\ ميكروسوفت\ ويندوز\ الإصدار الحالي\ تشغيل مرة واحدة

 

  • يمكن جعل مفاتيح التسجيل هذه تشير إلى ثنائي مخزن في نظام الملفات، بحيث أنه في كل مرة يتم فيها تشغيل النظام ويقوم المستخدم بتسجيل الدخول، سيتم تنفيذ الملف الثنائي دون أي تفاعل من المستخدم.
  • في هذه الحالة، يستخدم برنامج الفدية مفتاح البرنامج\ Microsoft\ Windows\ CurrentVersion\ Run لتثبيت البرامج الضارة، على النظام الضحية، في موقع محدد.
  • كخطوة أولية للاستمرار، تتحقق البرامج الضارة من قيمة مفتاح «syshelper» في سجل Windows في البرنامج\ Microsoft\ Windows\ CurrentVersion\ Run لمعرفة ما إذا كانت البرامج الضارة مثبتة بالفعل.

2DJVU9

 

2DJVU10

 

  • يتم تعداد السجل وتعديله عبر المجموعة التالية من واجهات برمجة تطبيقات Win32:
    • مفتاح إعادة فتح EXW
    • قيمة الاستعلام EXW
    • قيمة Regset EXW
    • مفتاح إغلاق REg
  • يقوم برنامج الفدية بإنشاء دليل جديد في C:\\ Users<user_name>\\ AppData\ Local وينسخ صورة البرامج الضارة الحالية (الثنائية) إليه. يحتوي الدليل الذي تم إنشاؤه حديثًا على اسم تم إنشاؤه من UUID.
  • أثناء تحليل العينة، تم إنشاء الدليل التالي بواسطة البرامج الضارة مع وجود عينة داخل الدليل: C:\\ Users\\ <user_name>AppData\ Local\ 66245023-274c-4e81-a77c-e98336b3a3a7\ <sample.exe>

2DJVU11

 

  • <sample.exe>تقوم البرامج الضارة بتعيين قيمة مفتاح التسجيل البرنامج\ Microsoft\ Windows\ CurrentVersion\ التشغيل إلى «SysHelper»، الذي يشير إلى C:\\ المستخدمون\\ <user_name>AppData\ Local\ 66245023-274c-4e81-a77c-e98336b3a3a7\ —التشغيل التلقائي.
  • الآن تستمر برامج الفدية في نظام الضحية. في كل مرة يتم فيها تشغيل النظام، <sample>يتم تنفيذ .exe بواسطة وسيطة سطر الأوامر —AutoStart

2DJVU12

 

2DJVU13

 

تنفيذ ICACLS
  • بعد تعديل التسجيل مباشرةً، تستخدم البرامج الضارة ملف icacls.exe الثنائي، الموجود على نظام التشغيل Windows، لتأمين الدليل C:\\ Users\\ <user_name>AppData\ Local\ 66245023-274c-4e81-a77c-e98336b3a3a7 من الحذف من قبل المستخدم.
  • icacls.exe هو تطبيق وحدة تحكم إعداد الأذونات من Microsoft، لمسؤولي النظام لإدارة الملفات. تقوم البرامج الضارة بإعداد سطر الأوامر لـ icacls كما هو موضح أدناه:

2DJVU14

 

  • يتم تنفيذ ثنائي icacls عبر واجهة برمجة التطبيقات createProcessW () مع وسيطات سطر الأوامر المذكورة أعلاه.

2DJVU15

 

  • تفصيل بناء جملة الأوامر:

icacls.exe <Target_directory><Permission><Security_identifier>: <Inheritance_settings><Operations>

  • الدليل الهدف: C:\\ المستخدمون\\ <user_name>بيانات التطبيق\ محلي\ 66245023-274c-4e81-a77c-e98336b3a3a7
  • الإذن: /رفض
  • معرف الأمان: *s-1-1-0 (العالم - مجموعة من كل مستخدم)
  • Inheritance_settings: OI هو وراثة الكائن/CI هو وراثة الحاوية
  • العمليات: يتم حذف/DC هو حذف الطفل

 

تنطبق إدخالات التحكم في الوصول (ACEs) التي تم وضع علامة عليها بـ «Object Inheritation» فقط على الملفات الموجودة في المجلد، ولكن ليس على المجلدات الفرعية داخل هذا المجلد. تنطبق ACEs التي تم وضع علامة عليها بـ «Container Inheritation» فقط على المجلدات الفرعية للمجلد ولكن ليس الملفات

icacls «C:\\ المستخدمون\\ <user_name>بيانات التطبيق\ محلي\ 6625023-274c-4e81-a77c-e98336b3a3a7» /deny *s-1-1-0 :( II) (CI) (DE, DC)

 

هذا يمنع المستخدمين من حذف المجلد الذي تم إنشاؤه ومحتوياته.

 

المثابرة من خلال المهمة المجدولة
  • يقوم برنامج الفدية بإنشاء مهمة مجدولة تقوم بتنفيذ نسخة من الحمولة النهائية باستخدام وسيطة سطر الأوامر. —مهمة.
  • يتم تحقيق ذلك باستخدام وظائف COM لمنصة Windows التي تنشئ مهمة تسمى «مهمة Time Trigger».

2DJVU16

 

سمات المهام
قيم السماتاسم المهمةمهمة تشغيل الوقتتردد التنفيذ فاصل زمني قدره 5 دقائق/« PT5M»مسار ثنائي <sample>C:\\ المستخدمون\\ <user_name>بيانات التطبيق\ المحلية\ 66245023-274c-4e81-a77c-e98336b3a3a7\ .exe —المهمة

 

  • يمكن عرض المهمة المحددة بالبرامج الضارة وخصائصها من برنامج جدولة المهام على Windows

2DJVU17

 

2DJVU18

 

  • بعد إعداد المهمة المجدولة، تنفذ البرامج الضارة نفسها بمجموعة جديدة من وسيطات سطر الأوامر كما هو موضح أدناه:

«- المشرف ليس التشغيل التلقائي ليس مهمة»

2DJVU19

 

  • تستخدم البرامج الضارة واجهة برمجة تطبيقات ShellExecuteEXW لتنفيذ صور البرامج الضارة مرة أخرى، مع وسيطات سطر الأوامر الجديدة، وتخرج من النظام.

2DJVU20

 

  • يمكن رؤية مثيل تم إنشاؤه حديثًا من البرامج الضارة في قائمة العمليات باستخدام وسيطات سطر الأوامر الجديدة «—Admin IsNotAutoStart IsNotTask»

 

السلوك القائم على المعلمات

يخضع سلوك البرامج الضارة بشكل أساسي لحجج سطر الأوامر. يحتوي برنامج الفدية STOP/DJVU على محفزين مهمين للتنفيذ:

  • الزناد الأولي
  • مشغل المهام المجدولة

 

الزناد الأولي
  • عندما يتم نشر البرامج الضارة في البداية، دون أي حجج لسطر الأوامر، فإنها تؤدي إلى إعادة نشر نفسها باستخدام وسيطات سطر الأوامر التالية «—Admin inoStart isNotTask».
  • في هذه المرحلة، تقوم برامج الفدية بتنزيل أدوات البرامج الضارة الإضافية، مثل أحصنة طروادة المصرفية، على نظام الضحية.

 

مشغل المهام المجدولة
  • عندما يتم تنفيذ برنامج الفدية من مهمة مجدولة باستخدام وسيطة سطر الأوامر «—Task»، فإنه يبدأ في تشفير الملفات الموجودة على نظام الضحية.
لم يتم العثور على أية عناصر.

مدونات ذات صلة