تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
0.2 Program Analysis رحلة استكشافية لتحليل البرامج
#1
[صورة مرفقة: 128383135-210777607283724-8238622407463275907-n.jpg]
 رحلة في عالم الهندسة العكسية  Heart
 
https://www.youtube.com/playlist?list=PL...Moshvgu35x

# الفصل 0 : تمهيد  
[صورة مرفقة: mqdefault.jpg]
 

https://www.youtube.com/watch?v=Q3lMMcNZQbg


لنقوم بالغوص في كود البرنامج!

أولاً، سنستخدم محرر Hex للحصول على عرض خام لملفنا المستهدف. قد يبدو هذا وكأنه مجموعة من الأحرف الغامضة، ولكن لا داعي للقلق، سنقوم قريبًا بشرحه وفهمه كما يجب.

فتح البرنامج في x64dbg

الآن، دعونا نفتح ملفنا المستهدف في x64dbg، وهو debugger قوي مصمم خصيصًا للهندسة العكسية. سترى البرنامج يتم تحميله وظهور النافذة الرئيسية.

ان x64dbg يقدم العديد من الميزات، دعونا نركز الآن على Tab CPU.
تعرض كود التجميع (assembly code) للبرنامج، وهو تمثيل قابل للقراءة من الإنسانhuman-readable للرمز الآلي machine code الذي يفهمه الكمبيوتر.

التنقل في CPU

تنقسم Tab CPU إلى أقسام:

العناوين Addresses: تظهر مواقع الذاكرة memory locations لكل تعليمة instruction في هذا العمود column.
كود التجميع Assembly code: هذا هو جوهر البرنامج، حيث يمثل كل سطر تعليمة واحدة التي يمكن لوحدة المعالجة المركزية CPU تنفيذها.
التعليقات Comments: هذه التعليقات الاختيارية يمكن أن توفر معلومات إضافية حول وظيفة الكود (قد لا تكون موجودة في جميع الملفات).

فهم الكود

لا تشعر بالرهبة إذا لم تتعرف على جميع تعليمات التجميع في البداية. سنتعلمها تدريجيا.

معلومات إضافية في الأسفل

في أسفل Tab CPU، ستجد لوحات تعرض:

الحالة Status : توفر معلومات حول التحديد الحالي current selection وعرض التجميع assembly view.
الذاكرة (RAM): تظهر محتويات ذاكرة البرنامج في هذه اللوحة.
المسجلات Registers: هذه هي المتغيرات الخاصة special variables داخل وحدة المعالجة المركزية CPU التي تخزن البيانات أثناء تنفيذ البرنامج. سنستكشف كل مسجل بالتفصيل لاحقًا.

المكدس The Stack: تتبع تنفيذ البرنامج

يعرض x64dbg أيضًا المكدس The Stack، وهو منطقة ذاكرة memory area مخصصة تتبع تدفق تنفيذ البرنامج الحالي .
keeps track of the program's current execution flow.
تتغير محتويات المكدس ديناميكيًا أثناء تشغيل البرنامج. سنتعمق في وظيفة المكدس لاحقًا.

الصبر هو المفتاح!

هذا الكثير لفهمه في البداية، لكن لا داعي للقلق! سنقوم بتفصيل كل مفهوم خطوة بخطوة طوال هذه السلسلة.
بحلول النهاية، ستشعر بالراحة في التنقل في عالم كود التجميع وتحليل البرنامج.
you'll be comfortable navigating the world of assembly code and program analysis.


 والى اللقاء الى الدرس القادم



 
 Blush
أعضاء أعجبوا بهذه المشاركة : xdvb_dz , motaghred , azarol


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم