عن الدورة التدريبية
تعد الهندسة العكسية للكود مهارة أساسية لأي شخص يعمل بتحليل البرمجيات الخبيثة. حيث تعتبر واحدة من أقوى المهارات وأكثرها طلبًا في مجال الأمن السيبراني.
وفي كورس هندسة الكود العكسي، ستتعلم خطوة بخطوة "كيفية إجراء تحليل متقدم وثابت للكود من خلال تطبيق تقنيات الهندسة العكسية على عينات للبرمجيات الخبيثة".
من خلال هذا الكورس، سوف تمارس بشكل عملي التحليل الحقيقي للبرمجيات الخبيثة. وبنهاية هذا الكورس، سيكون لديك المعرفة والمهارات التي تحتاجها لبدء عملية الهندسة العكسية للبرمجيات الخبيثة باستخدام IDA Pro و Ghidra كبرامج تقوم بتحويل كود الآلة إلى كود يمكن تحليله.
بنهاية هذا الكورس، ستكون قادرًا على:
-
فهم طريقة عمل مايكروسوفت ويندوز داخليًا (processes, threads, registry, handles, virtual memory إلخ ...).
-
فهم كيفية تحول الكود عالي المستوى الى كود الآلة.
-
قراءة الكود المجمع (ل x86 architecture) وفهم ما يقوم به.
-
معرفة الفرق بين جميع أنواع العمليات في الكود المجمع (نقل البيانات، وعمليات الحساب، والعمليات البتية Bitwise والمنطقيه، نقل التحكم والتفرع، والعمليات النصيه ، وغيرهم).
-
التعرف على التركيبات البرمجية الشائعة (الحلقات ، حالات التبديل ، المصفوفات ، الهياكل ، إلخ ...) عند رؤيتهم في الكود المجمع x86.
-
فحص stack layout داخل وخارج ال function.
-
معرفة الفرق بين المتغيرات ال global و ال local داخل ال functions في الكود المجمع x86.
استخدام IDA Pro للمراجعة اليدوية لكود البرمجيات الخبيثة (تحليل ثابت متقدم)
- تثبيت IDA Pro واستخدام جميع ميزاته (شريط التنقل ، عرض الرسم البياني ، طرق عرض النص والقرب ، عروض فرعية مفيدة أخرى ، شاشة "الذهاب الى" ، شريط الأوامر ، إلخ ...)
- البحث عن التعليمات و كود التشغيل داخل عينه الكود الخبيثة.
عرض خريطة xRefs من / إلى العناوين.
- إعادة تسمية أي عنوان وإضافة تعليقات.
- تغيير تنسيق البيانات (من رقم إلى رمز أو رقم عشري) / (من معامل إلى ثابت رمزي) / (من وحدات بايت غير مكتشفة إلى بيانات)
- استخدام نافذة لإدخال أوامر بايثون.
- تنفيذ ملف برنامج مكتوب بلغة (IDC أو Python) في شكل نصى.
- تثبيت واستخدام الملحقات (highlight calls، mkYARA ، FindCrypt ، Snowman Decompiler).
- تتبع النصوص الخبيثة (المستخلصة من التحليل الأولي) ، ثم الهندسة العكسية وفهم ال functions.
- عكس ال callback function الى Low-Level Keyboard Hook.
الهندسة العكسية للبرمجيات الخبيثة مع برنامج Ghidra
-تثبيت Ghidra وإعداد مشروعك الأول.
-استخدم Ghidra لعمل هندسة عكسية للبرمجيات الخبيثة.
-استخدام جميع مميزات واجهة المستخدم لتساعدك في تحقيق أهداف الهندسة العكسية.
-استخدم Ghidra في Batch Import.
-فك تشفير JVM bytecode وملف ELF MIPS.
-استخدم البرامج النصية في Ghidra.
-تحليل ال Main() و DllMain().
-التعديل في نص التوقيع / او نموذج ال function.
متطلبات الدورة التدريبية
الانتهاء من الدورة التدريبية: أساسيات تحليل البرمجيات الخبيثة