تحليل فني شامل لبرنامج BlackCat ransomware، الذي تسبب في دمار المؤسسات في جميع أنحاء العالم. ALPHV، المعروفة أيضًا باسم BlackCat، هي عائلة برامج الفدية التي شوهدت لأول مرة في أواخر عام 2021 وتستهدف العديد من الشركات عبر الصناعات.
Get the latest industry news, threats and resources.
في السنوات الأخيرة، أصبحت هجمات برامج الفدية شائعة بشكل متزايد، مع اكتشاف سلالات جديدة طوال الوقت. إحدى هذه السلالات هي BlackCat ransomware، التي تسبب فسادًا للمنظمات في جميع أنحاء العالم. ALPHV، المعروفة أيضًا باسم BlackCat، هي عائلة برامج الفدية التي شوهدت لأول مرة في أواخر عام 2021 وتستهدف العديد من الشركات عبر الصناعات. يُنظر إلى مشغلي برامج الفدية وهم يستخدمون تقنيات الابتزاز المزدوج، والتي لا تتضمن تشفير النظام فحسب، بل أيضًا سرقة الملفات الحساسة من ضحاياهم. وبحسب ما ورد، يتم استخدام أداة أخرى مع برنامج الفدية لسرقة البيانات.
تتم كتابة BlackCat ransomware بلغة Rust وتأتي في شكل أداة سطر أوامر يمكن تشغيلها بحجج مختلفة. إنه قادر على قتل العديد من العمليات والخدمات. تتمثل إحدى ميزاته الرئيسية في قدرته على تصعيد الامتيازات وتجاوز التحكم في حساب المستخدم (UAC). تستخدم هذه البرامج الضارة المتطورة إما تشفير AES أو ChaCha20 (اعتمادًا على تكوينها) لتشفير جميع الملفات الموجودة على نظام الضحية. بالإضافة إلى ذلك، تتمتع بقدرات التهرب من وضع الحماية، مما يجعل من الصعب تحليل العينة. تتطلب برامج الفدية تشغيل الحجج، مما يجعل من المستحيل تحليلها بواسطة وضع الحماية. في هذه المدونة، سنلقي نظرة فاحصة على خصائص وتقنيات برنامج الفدية هذا الذي كتبه Rust.
نظرة عامة على الحملة التاريخية
لقد لوحظ أن المهاجمين الذين يستخدمون برنامج الفدية BlackCat يستخدمون أيضًا أداة سرقة .NET تسمى ExMatter، والتي طورتها نفس مجموعة APT، من أجل تنزيل الملفات من جهاز الضحية. وهذا ما يجعل هذا الهجوم أكثر قوة لأن هذا يمنح المهاجمين النفوذ لاستخدام تقنية تعرف باسم الابتزاز المزدوج، والتي تنطوي على ضغط إضافي يتمثل في تسريب ملفات مسروقة ربما تحتوي على بيانات حساسة. (راجع الملحقلقاعدة YARA التي تساعد في صيد BlackCat.)
التحليل الفني
يأتي ثنائي BlackCat في شكل أداة سطر أوامر يمكن تشغيلها باستخدام وسيطات مختلفة. على سبيل المثال:
باستخدام — مطول، سيتم عرض السجلات التي تم إنشاؤها بواسطة BlackCat على وحدة التحكم.
ال —واجهة المستخدميعرض الخيار عرضًا يشبه واجهة المستخدم الرسومية في النافذة الطرفية، يُظهر التقدم والمعلومات المتعلقة بالملفات التي يتم تشفيرها على النظام.
لقطة شاشة تشبه واجهة المستخدم الرسومية المعروضة عند استخدام خيار واجهة المستخدم
من بين هذه الحجج، هناك واحدة منها فقط ضرورية لتنفيذ الثنائية، وهي رمز الوصول حجة.
قائمة الحجج التي يمكن استخدامها أثناء تشغيل الملف الثنائي
عمليات ما قبل التشفير
كما ذكرنا سابقًا، لن يتم تشغيل الملف الثنائي إلا إذا تم تزويده برمز وصول طويل مكون من 32 حرفًا. وهي تستخدم احصل على سطر الأوامر الجديد API للتحقق مما إذا كان رمز الوصول متوفرًا بشكل صحيح.
استخدام GetCommandLineW للتحقق مما إذا كان رمز الوصول متوفرًا بشكل صحيح
اعتمادًا على إصدار Ransomware، يمكن أن يكون هذا الرمز إما عشوائيًا (كما هو الحال في هذه العينة)، أو كما هو موضح في أحدث الإصدارات، فإن رمز الوصول هذا عبارة عن مفتاح مكون من 32 حرفًا يُستخدم لتشفير تكوين Ransomware المضمن في البرنامج الثنائي. تقوم أحدث الإصدارات بذلك من أجل منع الباحثين الأمنيين من استخراج التكوين.يعمل هذا أيضًا كإجراء لمكافحة وضع الحماية، نظرًا لأن أدوات التحليل الآلي لن تكون قادرة على تنفيذ العينة ما لم يتم تكوينها لتوفير رمز الوصول.
مذكرة الفدية
بمجرد توفير رمز الوصول إلى البرنامج الثنائي، يستمر برنامج الفدية عن طريق فك تشفير مذكرة الفدية المضمنة في البرنامج الثنائي وتخزينها لاستخدامها لاحقًا. يقوم أيضًا بتعيين مذكرة الفدية كخلفية لسطح المكتب.
مذكرة فدية تم فك تشفيرها مخزنة لاستخدامها لاحقًا
بعد ذلك، تعد Ransomware نفسها لتصعيد الامتيازات عن طريق إنشاء سلسلة رسائل جديدة باستخدام إنشاء موضوع API.
تصعيد الامتيازات وتجاوز UAC
يقوم برنامج الفدية BlackCat بإجراء تجاوز UAC عن طريق إساءة استخدام Microsoft COM (نموذج كائن المكون). يتضمن هذا الهجوم استخدام كائنات COM لثنائي يُعرف باسم Microsoft CMSTP (مثبت ملف تعريف مدير الاتصال)، وخاصة CMSTPLUA واجهة {3E5FC7F9-9A51-4367-9063-A120244 FBEC7}.
يستخدم برنامج الفدية كائن كوجيت لتسجيل نفسها في CLSID {3E5FC7F9-9A51-4367-9063-A120244 FBEC7}، والتي يتم استخدامها بشكل شرعي لتنفيذ التطبيقات ذات الامتيازات المرتفعة. تسمح هذه التقنية بتجاوز موجه UAC وتنفيذ إجراءاتها الضارة دون أن يتم اكتشافها أو حظرها من خلال الإجراءات الأمنية للنظام.
استخدام CogetObject لتسجيل نفسه مع {3E5FC7F9-9A51-4367-9063-A120244FBEC7} من أجل الحصول على امتيازات عالية
بمجرد أن يرفع برنامج الفدية الامتيازات، فإنه يتم تنفيذه داخل الموضوع الذي تم إنشاؤه حديثًا وينقل حججه إلى الأمام من مثيله السابق.
تقوم BlackCat بتنفيذ نفسها داخل الخيط الجديد بامتيازات مرتفعة باستخدام نفس الحجج كما كان من قبل.
بعد ذلك، تستخدم BlackCat ابحث عن قيمة الامتياز API من أجل البحث عن معرفات محلية لقائمة الامتيازات. تعمل كل من هذه الامتيازات على تمكين العملية الجارية من تشغيل العمليات على مستوى النظام. (راجع الملحق للحصول على قائمة كاملة ووصف لكل امتياز). ثم يستخدم الثنائي ضبط حواف الرمز المميز لكي تمنح نفسها تلك الامتيازات.
قائمة الامتيازات التي تسعى إليها BlackCat
استخدام LookupPrivilegeValueView وضبط الامتيازات الرمزية من أجل منح نفسها امتيازات
أخيرًا، تنهي BlackCat تحضيرها للتشفير من خلال القيام بما يلي:
حذف جميع النسخ الاحتياطية لوحدة التخزين باستخدام vssadmin و wMIC الأوامر، مما يجعل استعادة البيانات أكثر صعوبة.
تعطيل الإصلاح التلقائي باستخدام bcdedit، من أجل منع استعادة الملفات المتعلقة بالنظام.
مسح سجلات الأحداث.
إنهاء جميع الخدمات والعمليات النشطة.
ملاحظة: يحتوي BlackCat على تكوينه المضمن داخل نفسه ويقوم بفك تشفيره في وقت التشغيل. يحتوي التكوين على معلومات حول المفتاح العام الذي سيتم استخدامه لتشفير المفتاح، وأي خدمات محددة لإنهائها، وقائمة الاستثناءات، وما إلى ذلك.
لقطة شاشة تعرض تكوين BlackCat
تشفير البيانات
تستخدم عينة BlackCat المستخدمة في هذا التحليل AES للتشفير. الخطوات المتبعة في التشفير هي كما يلي:
يجتاز BlackCat النظام أولاً باستخدام حلقة من ابحث عن الملف الأول و ابحث عن الملف التالي من أجل العثور على جميع الملفات الموجودة على النظام.
تتم كتابة مذكرة الفدية إلى كل دليل باستخدام اكتب ملف.
لقطة شاشة لـ مذكرة الفدية التي تركتها BlackCat
استخدام BcryptgenRandom، يقوم برنامج الفدية بحساب مفتاح AES عشوائي.
يتم إنشاء كتلة JSON لكل ملف، والتي تحتوي على مفتاح AES المستخدم لتشفير الملف، ومعلومات حول الملف.
كتلة JSON تحتوي على معلومات حول المفتاح والملف
يتم تشفير مفتاح AES أيضًا باستخدام المفتاح العام RSA المخزن في تكوين BlackCat.
يتم تشفير الملف باستخدام AES، وتتم كتابة المحتويات إلى الملف باستخدام اقرأ الملف و اكتب ملف. تم ذكر الامتداد الجديد للملف في تكوين BlackCat.
استخدام AES لتشفير الملف
عمليات ما بعد التشفير
بمجرد أن ينتهي BlackCat من تشفير جميع الملفات الموجودة على النظام، يتم تغيير خلفية سطح المكتب، مما يوجه المستخدم إلى الرجوع إلى مذكرة الفدية.
خلفية سطح المكتب المتغيرة
ال عنوان URL الخاص بـ.onion المحدد في مذكرة الفدية فريد لكل ضحية، حيث تستخدم كل عينة رمز وصول مختلفًا، يتم توفيره لعنوان URL كمعامل. يحتوي عنوان URL الخاص بالبصل على معلومات حول الملفات المشفرة/المسروقة وإرشادات حول كيفية دفع الفدية.
قائمة بامتيازات ومسؤوليات الأمان التي تستهدفها BlackCat
Security Privilege
Responsibility
SeIncreaseQuotaPrivilege
Allows a process to increase the memory quota assigned to it.
SeSecurityPrivilege
Allows a process to read or modify the security settings of objects in the system.
SeTakeOwnershipPrivilege
Allows a process to take ownership of any object in the system.
SeLoadDriverPrivilege
Allows a process to load device drivers.
SeSystemProfilePrivilege
Allows a process to gather profiling information for the entire system.
SeSystemtimePrivilege
Allows a process to change the system time.
SeProfileSingleProcessPrivilege
Allows a process to profile a single process.
SeIncreaseBasePriorityPrivilege
Allows a process to increase the base priority of a thread.
SeCreatePagefilePrivilege
Allows a process to create a pagefile.
SeBackupPrivilege
Allows a process to perform backup and restore operations.
SeRestorePrivilege
Allows a process to restore backed-up objects.
SeShutdownPrivilege
Allows a process to shut down the system.
SeDebugPrivilege
Allows a process to debug other processes.
SeSystemEnvironmentPrivilege
Allows a process to modify system environment variables.
SeChangeNotifyPrivilege
Allows a process to receive notifications when an object is modified.
SeRemoteShutdownPrivilege
Allows a process to shut down remote systems.
SeUndockPrivilege
Allows a process to undock a laptop computer.
SeManageVolumePrivilege
Allows a process to manage volume and disk configurations.
SeImpersonatePrivilege
Allows a process to impersonate other users or groups.
YARA Rule for BlackCat Threat Hunting
rule win_blackcat_auto {
meta:
author = "Felix Bilstein - yara-signator at cocacoding dot com"
date = "2023-03-28"
version = "1"
description = "Detects win.blackcat."
info = "autogenerated rule brought to you by yara-signator"
tool = "yara-signator v0.6.0"
signator_config = "callsandjumps;datarefs;binvalue"
malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.blackcat"
malpedia_rule_date = "20230328"
malpedia_hash = "9d2d75cef573c1c2d861f5197df8f563b05a305d"
malpedia_version = "20230407"
malpedia_license = "CC BY-SA 4.0"
malpedia_sharing = "TLP:WHITE"
/* DISCLAIMER
* The strings used in this rule have been automatically selected from the
* disassembly of memory dumps and unpacked files, using YARA-Signator.
* The code and documentation is published here:
* https://github.com/fxb-cocacoding/yara-signator
* As Malpedia is used as data source, please note that for a given
* number of families, only single samples are documented.
* This likely impacts the degree of generalization these rules will offer.
* Take the described generation method also into consideration when you
* apply the rules in your use cases and assign them confidence levels.
*/
strings:
$sequence_0 = { c3 81f90a010000 7e6a 81f9e2030000 0f8fcc000000 81f90b010000 }
// n = 6, score = 600
// c3 | ret
// 81f90a010000 | cmp ecx, 0x10a
// 7e6a | jle 0x6c
// 81f9e2030000 | cmp ecx, 0x3e2
// 0f8fcc000000 | jg 0xd2
// 81f90b010000 | cmp ecx, 0x10b
$sequence_1 = { 85f6 0f8482000000 bb03000000 8d0437 }
// n = 4, score = 600
// 85f6 | test esi, esi
// 0f8482000000 | je 0x88
// bb03000000 | mov ebx, 3
// 8d0437 | lea eax, [edi + esi]
$sequence_2 = { 885405cc 48 eb19 89ca 83fa63 7fbe }
// n = 6, score = 600
// 885405cc | mov byte ptr [ebp + eax - 0x34], dl
// 48 | dec eax
// eb19 | jmp 0x1b
// 89ca | mov edx, ecx
// 83fa63 | cmp edx, 0x63
// 7fbe | jg 0xffffffc0
$sequence_3 = { f20f104808 8d45d4 894dec c645f004 8d4dec }
// n = 5, score = 600
// f20f104808 | movsd xmm1, qword ptr [eax + 8]
// 8d45d4 | lea eax, [ebp - 0x2c]
// 894dec | mov dword ptr [ebp - 0x14], ecx
// c645f004 | mov byte ptr [ebp - 0x10], 4
// 8d4dec | lea ecx, [ebp - 0x14]
$sequence_4 = { 3d32210000 747b 3d33210000 0f8571050000 8b07 }
// n = 5, score = 600
// 3d32210000 | cmp eax, 0x2132
// 747b | je 0x7d
// 3d33210000 | cmp eax, 0x2133
// 0f8571050000 | jne 0x577
// 8b07 | mov eax, dword ptr [edi]
$sequence_5 = { b005 5e 5d c3 81f90a010000 7e6a 81f9e2030000 }
// n = 7, score = 600
// b005 | mov al, 5
// 5e | pop esi
// 5d | pop ebp
// c3 | ret
// 81f90a010000 | cmp ecx, 0x10a
// 7e6a | jle 0x6c
// 81f9e2030000 | cmp ecx, 0x3e2
$sequence_6 = { 747b 3d33210000 0f8571050000 8b07 83f00a }
// n = 5, score = 600
// 747b | je 0x7d
// 3d33210000 | cmp eax, 0x2133
// 0f8571050000 | jne 0x577
// 8b07 | mov eax, dword ptr [edi]
// 83f00a | xor eax, 0xa
$sequence_7 = { b806000000 c7460400000000 894608 c70601000000 83c430 }
// n = 5, score = 600
// b806000000 | mov eax, 6
// c7460400000000 | mov dword ptr [esi + 4], 0
// 894608 | mov dword ptr [esi + 8], eax
// c70601000000 | mov dword ptr [esi], 1
// 83c430 | add esp, 0x30
$sequence_8 = { 89d0 ba3e000000 897e0c f7e2 }
// n = 4, score = 600
// 89d0 | mov eax, edx
// ba3e000000 | mov edx, 0x3e
// 897e0c | mov dword ptr [esi + 0xc], edi
// f7e2 | mul edx
$sequence_9 = { c6410b00 66c741090000 8b45ec 894110 c7411400000000 b801000000 8901 }
// n = 7, score = 600
// c6410b00 | mov byte ptr [ecx + 0xb], 0
// 66c741090000 | mov word ptr [ecx + 9], 0
// 8b45ec | mov eax, dword ptr [ebp - 0x14]
// 894110 | mov dword ptr [ecx + 0x10], eax
// c7411400000000 | mov dword ptr [ecx + 0x14], 0
// b801000000 | mov eax, 1
// 8901 | mov dword ptr [ecx], eax
condition:
7 of them and filesize < 29981696
}
ميهارديب سينغ ساوهني
شغوف للغاية بالأمن السيبراني وتطبيقه الحقيقي في حماية أصول المعلومات. أحب التعرف على طرق جديدة لاستغلال الأجهزة
هانسيكا ساكسينا
انضمت هانسيكا إلى فريق التحرير في CloudSek ككاتبة تقنية وهي طالبة بكالوريوس (مع مرتبة الشرف) في جامعة دلهي. كانت مرتبطة سابقًا بمؤسسة شباب الهند لمدة عام.
Subscribe to CloudSEK Resources
Get the latest industry news, threats and resources.