التحليل الفني للملفات المستخدمة في حملة البرامج الضارة لتطبيق 3CX لسطح المكتب
في 29 مارس 2023، ظهرت تقارير عن أنشطة ضارة نشأت من تطبيق 3CX لسطح المكتب موقّع. تقوم الإصدارات Trojanized من تطبيق 3CX لسطح المكتب بتحميل ملف DLL بمحتوى ضار. تطلق DLL هجومًا متعدد المراحل على الجهاز الضحية، والمرحلة الأخيرة هي نشر سارق معلومات غير معروف.
تقوم الإصدارات Trojanized من تطبيق 3CX لسطح المكتب بتحميل ملف DLL بمحتوى ضار.
تطلق DLL هجومًا متعدد المراحل على الجهاز الضحية، والمرحلة الأخيرة هي نشر سارق معلومات غير معروف.
إنه متعدد المنصات مع إصدار macOS.
تأثير
يمكن اختراق البيانات الهامة مثل كلمات المرور المحفوظة من خلال المتصفحات المثبتة على نظام الضحية.
التحليل والإسناد
في 29 مارس 2023، ظهرت تقارير عن أنشطة ضارة نشأت من تطبيق 3CX لسطح المكتب موقّع. ادعى Falcon Overwatch من CrowdStrike أنه لاحظ أنشطة ضارة من كل من إصدارات Windows و macOS من التطبيق.
المنتج عبارة عن تطبيق هاتف ذكي يسمح لك بإجراء واستقبال المكالمات على سطح المكتب الفعلي. التطبيق متاح حاليًا لجميع أنظمة التشغيل الرئيسية بما في ذلك Windows و Linux و macOS. تدعي 3CX أن لديها أكثر من 600,000 عميل على مستوى العالم، وبالتالي، يمكن أن يكون لهذه الحملة آثار مدمرة.
نظرة عامة على الهجوم
عند تثبيت الإصدارات المتأثرة من تطبيق 3CX لسطح المكتب، يتم إسقاط ثلاثة ملفات بواسطة المثبت:
3CXDesktopApp.exe: يستخدم لتحميل أول ملف DLL ثلاثي.
ffmpeg.dll: ملف تعريف الارتباط الثلاثي. وهو يحتوي على بيانات تُستخدم لقراءة كود shellcode وفك تشفيره وتنفيذه من ملف DLL الضار الثاني الذي أسقطه المثبت.
d3dcompiler_47.dll: يحتوي على كود shell الضار الذي يجلب .ico الملفات من مستودع GitHub (تمت إزالته الآن) وفك تشفير عناوين URL لـ C&C من تلك الملفات.
التحليل الفني
يبدأ الملف الثنائي المتأثر بتحميل ملف DLL المجسم ffmpeg.dll. يبحث ملف DLL هذا عن ملف DLL الضار التالي في الدليل المصدر (d3dcompiler_47.dll) ويقوم بتحميله.
استخدام CreateFileW () لتحميل d3dcompiler_47.dll
d3dcompiler_47.dll تم إلحاقه ليحتوي على رمز shellcode الضار المشفر، ويتم تحديده بواسطة علامة فريدة (0XCEFAEDFE). تم تشفير رمز الغلاف هذا باستخدام تشفير تيار RC4.
استخدام readFile () لقراءة كود الغلاف من DLL بعد العلامة 0XCEFAEDFE
ثم يتم فك تشفير رمز shellcode باستخدام مفتاح (3 ميغابايت (2BsG# @c7)، ويتم تخزينها في الذاكرة للاستخدام.
بداية حلقة فك التشفير والمفتاح المستخدم لفك التشفير
ثم، الحماية الافتراضية () يتم استخدامه لتغيير أذونات منطقة الذاكرة حيث يتم تخزين كود shellcode تنفيذ الصفحة/القراءة/الكتابة (0x40). يحتوي كود shellcode أيضًا على ملف DLL مضمن بداخله.
استخدام VirtualProtect () لجعل منطقة الذاكرة قابلة للتنفيذ، ورؤية DLL المضمنة داخل shellcode
رمز shellcode هذا عبارة عن أداة تنزيل، وهو مسؤول عن تنزيل ملفات.ico الضارة من مستودع GitHub الذي تم إزالته الآن. يقوم بإجراء هذا الطلب باستخدام سلسلة User-Agent فريدة.
سلسلة وكيل المستخدم المستخدمة لتقديم الطلب
تم تنزيل ما مجموعه 16 ملف.ico https://raw.githubusercontent[.]com/IconStorages/images/main/ ويتم إلحاق كل ملف.ico بسلسلة مشفرة في النهاية. يتم تشفير هذه السلسلة باستخدام AES و GCM ويتم ترميزها في base64.
مثال على سلسلة URL المشفرة في ملفات.ico
عند فك تشفيرها، يتم فك تشفير كل منها .ico يحتوي الملف على عنوان URL لـ C&C، والذي يُستخدم لتنزيل حمولة المرحلة النهائية. فيما يلي C & Cs التي تم فك تشفيرها لكل .ico، ويرجع الفضل في ذلك إلى ذلك نص. تم استخدام عنوان URL الأول على الأرجح كعنوان URL اختباري من قبل جهة التهديد نظرًا لأن هذا العنوان لم يستضيف أبدًا برامج ضارة.
icon0.ico
https://www.3cx[.]com/blog/event-trainings/
icon1.ico
https://msstorageazure[.]com/window
icon2.ico
https://officestoragebox[.]com/api/session
icon3.ico
https://visualstudiofactory[.]com/workload
icon4.ico
https://azuredeploystore[.]com/cloud/services
icon5.ico
https://msstorageboxes[.]com/office
icon6.ico
https://officeaddons[.]com/technologies
icon7.ico
https://sourceslabs[.]com/downloads
icon8.ico
https://zacharryblogs[.]com/feed
icon9.ico
https://pbxcloudeservices[.]com/phonesystem
icon10.ico
https://akamaitechcloudservices[.]com/v2/storage
icon11.ico
https://akamaitechcloudservices[.]com/v2/storage
icon12.ico
https://azureonlinestorage[.]com/azure/storage
icon13.ico
https://msedgepackageinfo[.]com/microsoft-edge
icon14.ico
https://glcloudservice[.]com/v1/console
icon15.ico
https://pbxsources[.]com/exchange
يُقال إن حمولة المرحلة النهائية هي سارق معلومات جديد، يسرق البيانات من المتصفحات المعروفة مثل Chrome و Edge و Brave و Firefox.
حمولة إنفوستيلر
المرحلة الأخيرة هي سرقة معلومات لم يسبق لها مثيل. باحثو الأمن في فولكسيتي لقد سميت هذا السارق مبدع. لا يمكن تشغيل أداة السرقة هذه مباشرة باستخدام rundll.exe، لأنها تتبع عملية تحميل أخرى. هذا هو السبب في أننا بذلنا قصارى جهدنا لاستخلاص استنتاجاتنا من التحليل الثابت.
يبدأ السارق بالتحقق من إصدار نظام التشغيل الذي يعمل حاليًا على نظام الضحية. بعد ذلك، يتحقق من الملف C:\Program ملفات\ 3cx تطبيق سطح المكتب\ config.json. بدون هذا الملف، لن يستمر السارق في عملياته.
يحصل على إصدار نظام التشغيل الحالي ويبحث عن الملف
بعد ذلك، يحصل السارق على معلومات اسم المضيف واسم المجال ويقوم بتنسيقها بطريقة يتم تخزينها مع إصدار نظام التشغيل. سيتم إرسال هذا على الأرجح إلى C&C كمعرف للضحية.
يتم تخزين اسم المضيف واسم المجال وإصدار نظام التشغيل الحالي معًا
بعد ذلك يبدأ السارق عمليات سرقة الملفات. يستخدم حلقة من ابحث عن الملف الأول () وابحث عن الملف التالي () للعثور على البيانات المتعلقة بالمتصفحات الشائعة.
حلقة لقراءة الملفات المتعلقة بالمتصفح
يحتوي السارق على مسارات متصفحات الويب الشائعة المشفرة. فيما يلي قائمة بالمتصفحات المستهدفة والملفات ذات الصلة التي يسرقها السارق.
ال التاريخ تمت سرقة ملف لمتصفح Chrome وEdge وBrave، كما تمت سرقة ملف عدد الأماكن. sqlite تمت سرقة ملف Firefox. هذه الملفات مسؤولة عن تخزين محفوظات تصفح الويب ويتم تخزينها في شكل قاعدة بيانات SQLite. وهي تحتوي على عنوان URL وعنوان الصفحة وآخر وقت تمت زيارته ومعلومات أخرى متعلقة بالتصفح.
في بعض الأحيان، قد يحتوي عنوان URL الخاص بالصفحة على معلومات حساسة، مثل بيانات الاعتماد المشفرة، أو معلومات أخرى من هذا القبيل، والتي يمكن أن يستخدمها المهاجم. ومع ذلك، تجدر الإشارة إلى أن هذا نادرًا ما يحدث مع البوابات والمواقع الإلكترونية الرئيسية التي تأخذ مثل هذه البيانات.
يستخدم السارق أيضًا كراك الإنترنت LW API لتخزين المكونات التفصيلية لعنوان URL، مثل البروتوكول واسم المضيف والمنفذ والمعلمات الأخرى.
يتم استخدام كراك الإنترنت (URL)
يقوم السارق بتنفيذ استعلامات SQL من أجل قصر النتائج على 500 إدخال فقط، وذلك للتأكد من أنه يسرق أحدث المعلومات.
استعلامات SQL المستخدمة لأحدث المعلومات
أخيرًا، يتم تمرير البيانات المسروقة مرة أخرى إلى الوحدة الرئيسية، بحيث يمكن إرسالها إلى خادم C&C.
متغير ماك أو إس
أصيب مثبت macOS لـ 3CX أيضًا، ويعمل بشكل مختلف قليلاً:
مسار المكون الضار هو تطبيق 3CX لسطح المكتب. التطبيق/المحتويات/الإطار/إطار الإلكترون. الإطار/الإصدارات/a/المكتبات/libffmpeg.dylib.
عناوين URL مشفرة بـ XOR ومشفرة بشكل ثابت في الملف الثنائي (لم يتم استردادها من مستودع GitHub المذكور أعلاه). يتم سرد عناوين URL المستخدمة أدناه. يستخدم هذا المتغير أيضًا تنسيق طلب ويب مختلفًا قليلاً للتواصل مع عناوين URL.
msstorageazure[.]com/analysis
officestoragebox[.]com/api/biosync
visualstudiofactory[.]com/groupcore
azuredeploystore[.]com/cloud/images
msstorageboxes[.]com/xbox
officeaddons[.]com/quality
sourceslabs[.]com/status
zacharryblogs[.]com/xmlquery
pbxcloudeservices[.]com/network
pbxphonenetwork[.]com/phone
akamaitechcloudservices[.]com/v2/fileapi
azureonlinestorage[.]com/google/storage
msedgepackageinfo[.]com/ms-webview
glcloudservice[.]com/v1/status
pbxsources[.]com/queue
www.3cx[.]com/blog/event-trainings/
كشف
يمكن العثور على قاعدة YARA في المراجع قسم من هذا التقرير، من أجل الكشف عن جميع مراحل هذه الحملة.