ثانياً : التحليل الفنى للفيروس
مقدمة :
- حجم ( الكود البرمجى – الوظائف التى يقوم بها ) عظيمة جداً ، بحيث أن الأمر سيستغرق شهور لإجراء تحليل كامل له ... ونحن نخطط إلى أن نستنمر فى كشف التفاصيل ( الأكثر أهمية – الأكثر غثارة للاهتمام ) فى وظائفه
- وحتى هذه اللحظة ، تتلقى شركة (Kaspersky ) العديد من الأسلة عن كيفية ( التحقق من وجود – إزالة ) هذا الفيروس من شبكات الحاسب الآلى ، وكانت الإجابة أنه أمامك خياران :
o استخدام مكافح الفيروسات كاسبرسكاى (Kaspersky Lab Antivirus or Internet Security ) التى نجحت فى ( اكتشاف – حذف ) جميع التعديلات الممكنة ، وعناصر إضافية من الفيروس
o هناك طريقة يدوية سنذكرها فى نهاية هذا المقال
MSSECMGR.OCX :
- الوحدة الرئيسية (main module ) من فيروس (Flame ) هى ملفات (DLL file ) تسمى (mssecmgr.ocx ) ... وقد تم اكتشاف تعديلان فى هذه الوحدة :
o معظم الأجهزة المصابة تحتوى على النسخة الكبيرة من الفيروس ، وهى حجمه (6 Mb ) ، وهى تقوم بـ ( تنفيذ carrying - نشر deploying ) مجموعة من الوحدات الإضافية (additional modules )
o النسخة الصغيرة ، حجمها (900 Kb ) ، وهى لا تحتوى على أية وحدات إضافية ... وبعد إصابة جهاز الضحية ، تقوم هذه الوحدة الصغيرة بالاتصال بـ (C&C servers ) وتقوم بـ ( تحميل download – تثبيت install ) باقى المكونات هناك
- ملف الـ (Mssecmgr ) قد يوجد تحت أسماء عديدة فى الأجهزة المصابة .. وهذا يتوقف على ( طريقة العدوى method of infection – الوضع الحالى الداخلى لكود الفيروس current internal state of the malware ) هل هو فى حالة ( تحميل installation – نسخ replication – ترقية upgrade ) .. فعلى سبيل المثال قد تجد الأسماء كما يلى (wavesup3.drv - ~zff042.ocx - msdclr64.ocx – etc )
- لم تنتهى شركة (Kaspersky ) من أعمال التحليل الكامل لـ (mssecmgr module ) ولكنها ستقوم بنشر التفاصيل تباعاً
- التفعيل الأولى لهذا الملف يكون مبدئياً بواسطة واحدة من السمات الخارجية التالية :
o إما (Windows WMI tools ) باستخدام (MOF file ) ، وهذا فى حالة (the MS10-061 exploit is used )
o عن طريق استخدام (BAT file ) كالتالى :
s1 = new ActiveXObject("Wscript.Shell");
s1.Run("%SYSTEMROOT%\\system32\\rundll32.exe msdclr64.ocx,DDEnumCallback");
(source code of MOF file, svchostevt.mof)
When activated, mssecmgr registers itself as a custom authentication package in the Windows registry:
HKLM_SYSTEM\CurrentControlSet\Control\Lsa
Authentication Packages = mssecmgr.ocx [added to existing entries]
- وعلى الـ (next system boot ) يتم تحميل الـ (module ) تلقائياً عن طريق نظام التشغيل (operating system )
- وبعد تعديل الـ (Windows registry ) ، فإن ملف الـ (mssecmgr ) يقوم باستخراج جميع الوحدات (modules ) الإضافية والتى تكون ( مشفرة encrypted – مضغوطة compressed ) فى الكود الأصلى (resource “146” ) ثم يقوم بتحميلها (installs them )
- موارد هذا الفيروس تعتبر قاموس كامل ، وهى تحتوى على :
o مجموعة من الـ (configuration options ) لإجراء تعديلات على ( ملف mssecmgr – الوحدات الأخرى other modules - ملفات الـ DLL )
o مجموعة من الـ (parameters ) التى يحتاجها الفيروس ليمرر المعلومات إلى الوحدات (modules ) كى يتم تحميلها بشكل سليم .. أى مفاتيح فك التشفير (decryption keys )
- يتم الآن إجراء تحليل للوحدات الإضافية ، وسوف نقوم بإرسالها لكم ( إن شاء الله ) فى رسالة قادمة فى حالة طلبكم .
- عند اكتمال تحميل الفيروس على الجهاز المصاب .. فإن ملف (mssecmgr ) يقوم بـ :
o تحميل الوحدات الموجودة loads available modules
o يبدأ فى تنفيذ العديد من التهديدات ، والتى تقوم بإنشاء قنوات اتصال مع الأقراص الصلبة للسيرفرات ومحطات العمل starts several execution threads that implement a channel to the C&C servers and Lua interpreter host
o العديد من العمليات الأخرى ، والتى تعتمد على الـ (configuration )
- وظائف الوحدات (module ) تكون مفصلة إلى وحدات مختلفة (separated into different “units ) والتى :
o يكون لديها (different namespaces ) فى الـ (configuration resource )
o يكون لديها أسماء مختلفة فى الـ (log messages ) والتى يتم استخدامها على نطاق واسع فى الكود البرمجى
- انظر إلى الشكل التالى :
وحدات التشغيل فى الفيروس – وظائفها :
- فى الجدول التالى ، سنقدم وصف مختصر للوحدات المتاحة (available units ) فى الفيروس ، وقد تم استخراج الأسماء من (the binary and the 146 resource )
وحدات إضافية :
هناك وحدات برمجية إضافية (Additional modules ) يتم تركيبها فى الدليل (%windir%\system32\ directory) ، وهى :
· mssecmgr.ocx
· advnetcfg.ocx
· msglu32.ocx
· nteps32.ocx
· soapr32.ocx
· ccalc32.sys
· boot32drv.sys
وحدات السجلات (Logs Modules ) :
- هناك وحدات إضافية برمجية (Additional modules ) يتم تحميلها من (C&C servers ) ، ويتم تركيبها على نفس الدليل (are installed in the same directory ) ...
- و تقوم الوحدات البرمجية للفيروس (The modules of the Flame malware ) بإنتاج الكثير من ملفات البيانات (data files ) التى تحتوى على :
o سجلات تشغيلية واسعة النطاق (extensive execution logs )
o المعلومات التى تم تجميعها (collected information ) مثل ( تصوير شاشات الكمبيوتر المصاب screenshots – قائمة بالعمليات lists of processes – قوائم بالأجهزة الصلبة hardware listings ---- )
- ويتم ( حفظ – تخزين ) الملفات فى الدليل (%windir%\temp directory) باستخدام الأسماء التالية :
· ~DEB93D.tmp
· ~8C5FF6C.tmp
· ~DF05AC8.tmp
· ~DFD85D3.tmp
· ~DFL*.tmp
· ~dra*.tmp
· ~fghz.tmp
· ~HLV*.tmp
· ~KWI988.tmp
· ~KWI989.tmp
· ~rei524.tmp
· ~rei525.tmp
· ~rf288.tmp
· ~rft374.tmp
· ~TFL848.tmp
· ~TFL849.tmp
· ~mso2a0.tmp
· ~mso2a1.tmp
· ~mso2a2.tmp
· sstab*.dat
ملفات الفيروس :
- هناك أيضاً ملفات اختيارية (optional files ) يمكن الحصول عليها فى الدليل (%windir%\system32 directory) مثل :
· Advpck.dat
· ntaps.dat
· Rpcnc.dat
· Also, in %windir%\:
· Ef_trace.log
- ويقوم الفيروس بتخزين البيانات الخاصة به فى ملفات باستخدام صيغ مختلفة (Flame stores its persistent data in files using different formats ) ... وجميع البيانات يتم تشفيرها باستخدام ( مفاتيح تشفير – خوارزمات تشفير ) مختلفة (All data is encrypted using several algorithms and keys ) .. وبعض الملفات تكون قواعد بيانات ، يتم إنشاؤها باستخدام (built-in SQLite3 library ) ... قواعد البيانات هذه تحتوى على البيانات الناتجة من كلا من ( البيانات التى تم سرقتها من الجهاز المصاب data stealing – النسخ المتكرر بشكل روتينى للبيانات replication routines ) ... وسوف نقدم مزيد من المعلومات بخصوص هذه الملفات فى نشرات لاحقة
- ويتم تسمية الدليل باستخدام مكونات إضافية للفيروس (The directory names used by the additional components of Flame ) قد تختلف أسمائها تبعاً لـ ( نوع التركيب the type of installation – خيارات التشكيل من المصدر 146 the configuration options from resource 146 ) وبعض الأسماء قد تشمل :
· C:\Program Files\Common Files\Microsoft Shared\MSSecurityMgr
· C:\Program Files\Common Files\Microsoft Shared\MSAudio
· C:\Program Files\Common Files\Microsoft Shared\MSAuthCtrl
· C:\Program Files\Common Files\Microsoft Shared\MSAPackages
· C:\Program Files\Common Files\Microsoft Shared\MSSndMix
- هذه المجلدات والأدلة (These directories ) قد تحتوى على الملفات التالية :
· dstrlog.dat
· lmcache.dat
· mscrypt.dat (or wpgfilter.dat)
· ntcache.dat
· rccache.dat (or audfilter.dat)
· ssitable (or audache)
· secindex.dat
· wavesup3.drv (a copy of the main module, mssecmgr.ocx, in the MSAudio directory)
· كما أنة هذا الفيروس ، يمكنه ( إنتاج – تحميل ) ملفات بالأسماء التالية :
· svchost1ex.mof
· Svchostevt.mof
· frog.bat
· netcfgi.ocx
· authpack.ocx
· ~a29.tmp
· rdcvlt32.exe
· to961.tmp
· authcfg.dat
· Wpab32.bat
· ctrllist.dat
· winrt32.ocx
· winrt32.dll
· scsec32.exe
· grb9m2.bat
· winconf32.ocx
· watchxb.sys
· sdclt32.exe
· scaud32.exe
· pcldrvx.ocx
· mssvc32.ocx
· mssui.drv
· modevga.com
· indsvc32.ocx
· comspol32.ocx
· comspol32.dll
· browse32.ocx
البحث اليدوى عن الفيروس :
ونتيجة لما سبق ، يمكنا توفير طريقة ( سريعة – سهلة – يدوية ) لفحص الأنظمة لاكتشاف إصابتها بفيروس (Flame ) :
1 - إجراء بحث عن ملف باسم (~DEB93D.tmp) .. فوجود هذا الملف معناه أن النظام قد تم غصابته بفيروس (Flame )
2 - قم بفحص الـ (registry key ) التالى :
(HKLM_SYSTEM\CurrentControlSet\Control\Lsa\ Authentication Packages)
فإذا وجدت (mssecmgr.ocx ) أو (authpack.ocx ) هناك ، فمعنى هذا أن هناك إصابة بفيروس (Flame )
3 - قم بالتحقق من وجود الأدلة والمجلدات التالية ، فإذا كانت موجودة ، فمعنى هذا أن هناك إصابة بفيروس (Flame )
· C:\Program Files\Common Files\Microsoft Shared\MSSecurityMgr
· C:\Program Files\Common Files\Microsoft Shared\MSAudio
· C:\Program Files\Common Files\Microsoft Shared\MSAuthCtrl
· C:\Program Files\Common Files\Microsoft Shared\MSAPackages
· C:\Program Files\Common Files\Microsoft Shared\MSSndMix
4 - إجراء بحث عن بقية أسماء الملفات الذى ذكرناها بأعلى ... فجميعها ملفات فريدة من نوعها تماماً ، ووجود أى منها يعنى أن هناك احتمال قوى بوجود إصابة بفيروس (Flame )
مترجم من مقالة علمية - للفائدة - تنشر للمنفعة العامة المجانية
المفضلات