/Practical Malware Analysis

Practical Malware Analysis

أنت كـ analyst Malware غالبا ما تكون مهامك ضمن فریق الدفاع -Team Blue – عن المؤسسة أو فریق التدخل السریع
للحوادث – response Incident – وهذا یعني أنه في أغلب الأحیان تأتي مهمتك “بعد” حدوث عملیة الاختراق!
وخلال إحدى الحوادث وبعد التحلیلات الأولیة وجدت ملف خبیث یسمى snapAK.TROJ.
تقوم بحذف الملف و استرجاع النسخ المحفوظة – backup – حتى یتم تنظیف الأجهزة المخترقة من أي ملفات خبیثة ثم تقوم باستخدام
برنامج حمایة ضد الفیروسات و تظن أن الأمر إنتهى. بعد عدة أیام قسم الشبكات یكلمك عشان یبلغك إنه تم اختراقك مرة أخرى و إن فى
بیانات یتم سرقتها ویبدو أن الإختراق حصل بنفس الطریقة اللى حصل بیها المرة الأولى ومن الواضح أن وسائل الحمایة المستخدمة غیر
فعالة على الإطلاق.
و الإدارة العلیا بیطلبوا تفسیر عن اللى حصل و أنت كل اللى تعرف تقوله عن malware إنه كان snapAK.TROJ
فى هذه الحالة أنت غیر متأكد إما یتم رفدك أو أن تتحمل المسؤولیة كاملة.
لذلك حتى تتجنب أن تقع فى مثل هذا الحدث یجب أن تكون ملم بمعرفة كافیة عن analysis Malware.
لذلك في البدایة یجب تعریف المقصود بالـ malware و الـ analysis-malware و ما هى أهدافه.

ماذا یقصد بمصطلح malware؟
التعریف الحرفي للكلمة هو software malicious, أي البرمجیات الخبیثة, وهو عبارة عن برنامج ولكن له نوایا غیر سلیمة و غیر
مصرح بها, فیقوم بسرقة بیاناتك أو تشفیرها أو التجسس علیك أو ربما یقوم بتقلیل كفاءة الشبكة عندك.
یعتبر الـ malware من أهم العوامل فى أي عملیة اختراق حیث أي برنامج یسبب الأذى للمستخدم أو للشبكة یمكن اعتباره انه
.(ransomwares , trojan horses, rootkits, and spyware) مثل Malware

ماذا یقصد بمصطلح الـ analysis-malware؟
من الأجهزة
ً
هو عبارة عن دراسة و تحلیل دقیق للـ malware حتى یتم التمكن من فهم آلیات عملة و كیفیة إیقافه و إزالته تماما
المصابة.

ما هى أهداف الـ analysis malware؟
1 .معرفة ماذا یحدث بالشبكة الخاصة بك بالتفصیل.
2 .التأكد من تحدید كل الأجهزة و الملفات المصابة.
3 .التحدید التام لما یمكن أن تفعله ملفات الـ binary المشتبة بها وكیفیة الكشف عنها
داخل الشبكة و كیفیة قیاس مقدار الضرر الناتج عنها و احتواء هذا الضرر حتى لا
یصیب أي أجهزة أخرى.
4 .عندما نحقق الفهم الكامل عن طریقة عمل الـ malware , بامكاننا عمل tool removal and detection تستخدم
مستقبلا للتخلص من البرمجیات الخبیثة التي تقوم بنفس السلوك.

5 .یمكننا تحدید مصدر الهجوم والاختراق عن طریق الأدلة الجنائیة الرقمیة ومنها یمكن تحدید هویة المجرمین و التواصل مع
فریق ال CERT – فریق التدخل السریع للحوادث الالكترونیة الوطني – للقبض على المتسببین.

هناك عدة طرق أساسیة عند البدء بتحلیل البرمجیات الخبیثة – analysis malware – وكل طریقة تختلف عن الاخرى فى آلیات
عملها والأدوات المستخدمة لعمل كل طریقة ولكل طریقة معینة موقف إستخدام معین.
وأشهرهم:-

طرق تحلیل البرمجیات الخبیثة -analysis malware-
Static Analysis ●
Dynamic Analysis ●
عادة إذا كنت تعرف انواع الـ malware فإنة یمكنك تسریع عمل الـ analysis-malware عن طریق تخمین ما یمكن أن یفعله هذا
الـ malware.
فما هى أنواع الـ malwares؟
Backdoors ●
Botnets ●
Information-stealing malware ●
Rootkits ●
Spywares ●

● ransomwares

طریقة الـ analysis-static
● لا یتطلب القیام بهذا الطرقیة معرفة عمیقة عن الـ engineering-reverse والبرمجة بشكل عام.

ا من طریقة الـ analysis-dynamic حیث أنه لا یتم تشغیل البرنامج الموجود به الmalware و لا یمكن
ً
● تعتبر أكثر أمان
أن یُ َحِدث البیانات أو یحذف الملفات أو یسرق البیانات.
● الخطر الوحید فى تنفیذ هذا البروتوكول هو أن تقوم بدون قصد بتشغیل الملف المشكوك بأنه malware و یمكن تجنب هذا
بعمل ال analysis على بیئة تشغیل مختلفة عن ما صمم له الـ malware.

الخطوة الأولى fingerprinting File
من المستحسن أنه قبل أي شئ فى التحلیل أن تقوم بعمل value hash cryptographic لكل ملف مشكوك فیه.
من احسن ال functions-hash التى یمكن استخدامها عند عمل analysis malware هم ( SHA256 or, SHA1, MD5.(
بعد عمل hash-file یمكن إستخدامه لعمل متابعة دوریة علیه لمعرفة إذا حدث علیه أي تعدیل و من أفضل البرامج التى یمكنها عمل
ذلك هو ( md5deep ( و هو برنامج مجانى مفتوح المصدر.

scanning using shared databases الثانیة الخطوة
إذا كانت الملفات قید الفحص و جزء من malware معروف فهناك فرصة كبیرة أن تجد معلومات مفیدة
عن الmalware او ربما قد تم رصده وتحدید ماهیته من قبل من قبل أحد محركات ال
malwares-anti المشهورة, أحیانا یمیل مجرمي جرائم المعلومات لاستخدام تكنیكات مكررة أو تم
استخدامها من قبل.عند إستخدام برنامج virus-anti و حیث ان برامج الـ virus-anti لا یمكن تثبیت
أكثر من برنامج منها على نفس الجهاز فهناك مواقع مثل
http://www.virustotal.com

هذه المواقع تقوم بعمل فحص للملفات بإستخدام العدید و العدید من engines scan.
لكن یجب أن تضع فى الإعتبار أن هذه المواقع تشارك الملفات مع أشخاص آخرین و من الممكن أن
تحتوي هذه الملفات على بیانات خاصة بشركتك لا یجب مشاركتها.

الخطوة الثالثة strings:
الـ strings فى أى برنامج هى عبارة مجموعة من الحروف المتتابعة التي تحمل معنى معین مثل “the”
یحتوى البرنامج على strings عندما یقوم بطباعة رسالة أو الإتصال بموقع إنترنت أو عند عمل نسخة من
ملف فى مكان معین أو عندما یحدث أي خطأ فى البرنامج.
هذه الحالات( strings ( التى تحدث ینتهي بها الحال مدمجة فى file executable s’program

.Malware analysis فى
ً
وعند تحلیلها فإنها تكون مفیدة الى حد كبیر جدا
هناك العدید من الأدوات التى یمكنها أن تقوم بعمل extract لهذه الـ strings الموجودة في بنیة الملف
الخبیث التي قد تعطي تلمیحات هامة لماهیته و طریقة عمله. علي سبیل المثال, یمكن العثور علي strings

مثل address ip یستخدم في التواصل بین صاحب الهجوم و الـ malware أثناء برمجته الملف
الخبیث.
یمكن استخدام هذا العنوان فیما بعد لنعرف ال machines infected داخل المؤسسة الخاصة بنا وذلك
عن طریق التأكد ما إذا كان النظام اتصل بهذا العنوان أم لا.
هناك أیضا strings أخري مفیدة و تعطي تلمیحا مفیدا للغایة عن طریقة عمل الملف الخبیث مثل :
– رسائل التهدید الشهیرة في ال ransomware.
bitcoin wallet عنوان-
– اسم process علي الجهاز المصاب تقوم بتشغیل الmalware عند ال startup.
عایزین هنا جملة “إجمال بعد تفصیل” :”D
: Portable Executable File Format الرابعة الخطوة
هناك العدید والكثیر من المعلومات المفیدة التى یمكن أن تحصل علیها عن طریق فحص الـ metadata لـ
format ملف الPE مثل:
Date and time of compilation ●
Functions imported by the program ●
Functions exported by the program ●
Icons, Menus, Version Info, and Strings embedded in resources ●
هناك العدید من الأدوات التي تقوم بتحلیل ملفات PE و تسمح لك أن تحصل على كل تلك التفاصیل التي
تقوم بمساعدتك فى عملیة الـ analyzation malware وذلك مثل:

● PEview
● PEBrowse Pro

الخطوة الخامسة Disassembly:
هي عبارة عن تفكیك بنیة الـ binary و تحمیل ال code executable الموجود بال machine
language و تحویله ل لغة assembly یمكن لل analyst malware التعامل معها و محاولة فهم
التفاصیل الدقیقة عن ما یقوم الملف الخبیث بفعله, حیث أن أي كود مكتوب بلغة level high
language في النهایة یتم تحویلة ل language machine لكي یقوم ال CPU بتنفیذه. إذا فمهارة
قراءة والتلاعب بال assembly تعتبر مهارة لا تقدر بثمن إن كنت تنوي الحصول على أكثر التفاصیل
بدقة
من أشهر ال disassemblers التقي تقوم بالعملیة السابقة:

1- IDA Pro.
2- Ghidra

a Live version from CAT offcial Magazine - CATazine - , CATazineLive is a weekly magazine which mainly have topics about Computer and Technology