نواصل سلسلة من المقالات حول تحليل البرامج الضارة. في الجزء
الأول ، تحدثنا عن كيفية قيام Ilya Pomerantsev ، وهو خبير تحليل الشفرات الخبيثة في CERT Group-IB ، بإجراء تحليل مفصل لملف تم استلامه عن طريق البريد من إحدى الشركات الأوروبية ووجد
برنامج التجسس AgentTesla هناك . في هذه المقالة ، يعرض Ilya نتائج تحليل تدريجي لوحدة
AgentTesla الرئيسية.
Agent Tesla هو برنامج تجسس معياري يتم توزيعه على أنه برنامج ضار كخدمة تحت ستار منتج keylogger قانوني. يمكن للعامل Tesla استخراج ونقل بيانات اعتماد المستخدم من المتصفحات وعملاء البريد الإلكتروني وعملاء FTP إلى الخادم للمهاجمين وتسجيل بيانات الحافظة والتقاط شاشة الجهاز. في وقت التحليل ، كان الموقع الرسمي للمطورين غير متاح.
ملف التكوين
يسرد الجدول أدناه الميزات التي يتم استخدامها في العينة المستخدمة:
إصلاح الوحدة الرئيسية في النظام
إذا تم تعيين العلامة المقابلة ، يتم نسخ الوحدة الرئيسية على طول المسار المحدد في التكوين كمسار للتثبيت في النظام.
اعتمادًا على القيمة من التكوين ، يُعطى الملف سمات "مخفي" و "نظام".
يتم توفير التشغيل التلقائي بواسطة فرعين التسجيل:
- HKCU \ البرامج \ Microsoft \ Windows \ CurrentVersion \ Run \٪ insregname٪
- HKCU \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer \ StartupAppro \ Run \٪ insregname٪
نظرًا
لضخ محمل الإقلاع في عملية
RegAsm ، يؤدي تعيين العلامة المستمرة للوحدة الرئيسية إلى عواقب مثيرة جدًا للاهتمام. بدلاً من نسخ نفسه ، قامت البرامج الضارة بتأمين ملف
RegAsm.exe الأصلي في النظام ، حيث تم إجراء الحقن.
التفاعل مع C&C
بغض النظر عن الطريقة المستخدمة ، يبدأ تفاعل الشبكة في الحصول على IP الخارجي للضحية باستخدام
checkip [.] Amazonaws [.] Com / resource.
فيما يلي وصف لأساليب الشبكات المقدمة في البرامج الضارة.
webpanel
التفاعل هو عبر بروتوكول HTTP. تنفذ البرامج الضارة طلبًا POST بالرؤوس التالية:
- User-Agent: Mozilla / 5.0 (Windows U Windows NT 6.1 ru rv: 1.9.2.3) Gecko / 20100401 Firefox / 4.0 (.NET CLR 3.5.30729)
- اتصال: الحفاظ على الحياة
- نوع المحتوى: application / x-www-form-urlencoded
تم تعيين عنوان الخادم على
٪ PostURL٪ . يتم تمرير الرسالة المشفرة في المعلمة
"p" . يتم وصف آلية التشفير في قسم
"خوارزميات التشفير" (الطريقة الثانية) .
الرسالة المرسلة هي كما يلي:
اكتب = {0} \ nhwid = {1} \ ntime = {2} \ npcname = {3} \ nlogdata = {4} \ nscreen = {5} \ nipadd = {5} \ nipadd = {6} \ nwebcam_link = {7} \ nclient = {8} \ nlink = {9} \ nusername = {10} \ npassword = {11} \ nscreen_link = {12}تشير المعلمة
type إلى نوع الرسالة:
hwid - تتم كتابة علامة MD5 من قيم الرقم التسلسلي للوحة الأم ومعرف المعالج. على الأرجح تستخدم كمعرف مستخدم.
الوقت - يعمل على نقل الوقت والتاريخ الحاليين.
pcname - معرّف كـ
<Username> / <Computer Name> .
logdata - بيانات السجل.
عند نقل كلمات المرور ، تبدو الرسالة كما يلي:
اكتب = {0} \ nhwid = {1} \ ntime = {2} \ npcname = {3} \ nlogdata = {4} \ nscreen = {5} \ nipadd = {5} \ nipadd = {6} \ nwebcam_link = {7} \ nscreen_link = {8} \ n [كلمات المرور]فيما يلي وصف للبيانات المسروقة بالتنسيق
\ nclient [] = {0} \ nlink [] = {1} \ nusername [] = {2} \ n كلمة المرور [] = {3} .
بروتوكول نقل البريد الإلكتروني
التفاعل عبر بروتوكول SMTP. الرسالة المرسلة بتنسيق HTML. المعلمة
BODY هي:
يحتوي عنوان الرسالة على الشكل العام:
<اسم المستخدم> / <اسم الكمبيوتر> <CONTENT TYPE> . محتويات الرسالة ، وكذلك مرفقاتها ، غير مشفرة.
التفاعل هو عبر بروتوكول نقل الملفات. يتم نقل ملف يحمل الاسم
<CONTENT TYPE> _ <اسم المستخدم> - <اسم الكمبيوتر> _ <DATE AND TIME> .html إلى الخادم المحدد. محتويات الملف غير مشفرة.
خوارزميات التشفير
يتم استخدام أساليب التشفير التالية في هذه الحالة:
طريقة 1
تستخدم هذه الطريقة لتشفير السلاسل في الوحدة الرئيسية. للتشفير ، يتم
استخدام خوارزمية
AES .
الإدخال رقم عشري مكون من ستة أرقام. يتم تنفيذ التحويل التالي على ذلك:
f (x) = (((x >> 2 - 31059) ^ 6380) - 1363) >> 3القيمة الناتجة هي فهرس صفيف البيانات المضمن.
كل عنصر من عناصر الصفيف هو تسلسل
DWORD . عند دمج
DWORD ، يتم الحصول على صفيف من وحدات البايت: أول 32 بايت هي مفتاح التشفير ، يليه 16 بايت من متجه التهيئة ، والبايتات المتبقية هي البيانات المشفرة.
الطريقة 2
يتم استخدام خوارزمية
3DES في
وضع ECB مع الحشو بالبايت بالكامل (
PKCS7 ).
يتم تحديد المفتاح بواسطة المعلمة
٪ urlkey٪ ، ولكن يتم استخدام تجزئة MD5 للتشفير.
وظيفة ضارة
تستخدم العينة قيد الدراسة البرامج التالية لتنفيذ وظيفتها الضارة:
كلوغر
في حالة وجود علامة VPO مقابلة باستخدام وظيفة WinAPI ، يعين
SetWindowsHookEx معالجه الخاص لأحداث ضغط المفاتيح في لوحة المفاتيح. تبدأ وظيفة المعالج بالحصول على عنوان الإطار النشط.
إذا تم تعيين علامة أداء تصفية التطبيقات ، فسيتم إجراء التصفية حسب النوع المحدد:
- يتم البحث عن اسم البرنامج في رؤوس النوافذ
- يتم البحث عن اسم البرنامج في اسم عملية النافذة
بعد ذلك ، يتم إضافة سجل إلى السجل مع معلومات حول الإطار النشط بالتنسيق:
ثم يتم تسجيل المعلومات حول المفتاح المضغوط:
مع تردد معين ، يتم إرسال السجل الذي تم جمعه إلى الخادم. إذا لم ينجح النقل ،
فسيتم حفظ السجل في الملف
٪ TEMP٪ \\ log.tmp بالتنسيق:
عند تشغيل المؤقت ، سيتم نقل الملف إلى الخادم.
ScreenLogger
باستخدام التردد المحدد ، تقوم البرامج الضارة بإنشاء لقطة شاشة بتنسيق
Jpeg بقيمة
جودة قدرها 50 وتحفظها في الملف
٪ APPDATA٪ \\ <التسلسل التعسفي المكون من 10 أحرف> .jpg . بعد النقل ، يتم حذف الملف.
ClipboardLogger
إذا تم تعيين العلامة المقابلة ، يتم إجراء بدائل في النص الذي تم اعتراضه وفقًا للجدول أدناه.
بعد ذلك ، يتم إدراج النص في السجل:
PasswordStealer
يمكن للبرامج الضارة تنزيل كلمات المرور من التطبيقات التالية:
مواجهة التحليل الديناميكي
- باستخدام وظيفة النوم . يسمح بتجاوز بعض صناديق الرمل عن طريق المهلة
- تدمير دفق Zone.Identifier . يسمح لك بإخفاء حقيقة تنزيل ملف من الإنترنت
- تعيّن المعلمة ٪ filter_list٪ قائمة العمليات التي سيكملها البرنامج الضريبي بفاصل زمني واحد
- تعطيل UAC
- تعطيل مدير المهام
- تعطيل CMD
- تعطيل نافذة التشغيل
- تعطيل لوحة التحكم
- تعطيل أداة RegEdit
- تعطيل نقاط استعادة النظام
- تعطيل قائمة السياق في Explorer
- تعطيل مسكونفيغ
- تجاوز UAC :
ميزات غير نشطة من الوحدة الرئيسية
أثناء تحليل الوحدة الرئيسية ، تم تحديد الوظائف المسؤولة عن الانتشار عبر الشبكة وتعقب موضع الماوس.
دودة
في دفق منفصل ، تتم مراقبة أحداث اتصال الوسائط القابلة للنقل. عند الاتصال بجذر نظام الملفات ،
يتم نسخ
البرامج الضارة باستخدام اسم
scr.exe ، وبعد ذلك يبحث عن الملفات ذات الامتداد
lnk . يتغير كل
أمر lnk إلى
cmd.exe / c start scr.exe وبدء <الأمر الأصلي> والخروج .
يتم إعطاء السمة
المخفية لكل دليل في جذر الوسيط ويتم إنشاء ملف بامتداد
lnk باسم الدليل المخفي ،
وسيبدأ الأمر
cmd.exe / c في بدء scr.exe & explorer / root ، \ "٪ CD٪ <DIRECTORY NAME> \" والخروج .
MouseTracker
تشبه طريقة الاعتراض تلك المستخدمة في لوحة المفاتيح. هذه الوظيفة لا تزال قيد التطوير.
نشاط الملف
الملف الشخصي الدخيل
بفضل بيانات المصادقة "السلكية" ، تمكنا من الوصول إلى مركز القيادة.
هذا سمح لنا بتحديد البريد النهائي للمهاجمين:
junaid [.] في *** @ gmail [.] com .
يتم تسجيل اسم مجال مركز القيادة في
sg *** @ gmail [.] Com .
استنتاج
في سياق تحليل مفصل للبرامج الضارة المستخدمة في الهجوم ، تمكنا من إنشاء وظائفه والحصول على قائمة أشمل من مؤشرات التسوية ذات الصلة بهذه الحالة. إن فهم آليات تفاعل شبكة malvari جعل من الممكن تقديم توصيات بشأن ضبط تشغيل أدوات حماية المعلومات ، وكذلك كتابة قواعد IDS مستقرة.
يتمثل الخطر الرئيسي لـ
AgentTesla كـ DataStealer في أنه من أجل القيام بمهامه ، فإنه لا يحتاج إلى إجراء تثبيت في النظام أو انتظار أمر تحكم. بمجرد تشغيل الجهاز ، يبدأ على الفور في جمع المعلومات الخاصة ونقلها إلى CnC. يشبه هذا السلوك العدواني إلى حد ما سلوك أجهزة التشفير ، مع وجود الفرق الوحيد في أن الأخير لا يحتاج حتى إلى اتصال الشبكة. في حالة حدوث تصادم مع هذه العائلة بعد تنظيف النظام المصاب من البرامج الضارة نفسها ، من الضروري تغيير جميع كلمات المرور التي يمكن تخزينها نظريًا على الأقل في أحد التطبيقات المذكورة أعلاه.
بالنظر إلى المستقبل ، دعنا نقول أن المهاجمين الذين يرسلون
AgentTesla غالبًا ما
يقومون بتغيير أداة تحميل التشغيل الأولية. هذا يسمح لك بالمرور دون أن يلاحظها أحد من قبل الماسحات الضوئية الثابتة والمحللات الإرشادية في وقت الهجوم. وميل هذه العائلة للبدء في نشاطها على الفور يجعل النظام يراقب عديمة الفائدة. أفضل طريقة للتعامل مع AgentTesla هي تحليل أولي في صندوق الحماية.
في المقالة الثالثة من هذه السلسلة ، سننظر إلى محمل الإقلاع الأخرى المستخدمة من قِبل
AgentTesla ،
ونتعرف أيضًا على عملية
تفريغها شبه التلقائي. لا تفوت!
مزيج
C & C
RegKey
مزامنة
لا توجد مؤشرات.
ملفات
عينات من المعلومات