تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
0.4 معلومات مهمة حول عملية الdebugging وكيفية استخدام x64dbg debugger بشكل فعال
#1
[صورة مرفقة: dark.jpg]
 رحلة في عالم الهندسة العكسية  Heart
 
https://www.youtube.com/playlist?list=PL...Moshvgu35x

# الفصل 0 : تمهيد



معلومات مهمة حول عملية الdebugging وكيفية استخدام debugger بشكل فعال


الآن في debugger سنقوم بstep over، ولسنا بحاجة إلى الدخول إلى functions، فقط قم بالstep over لاكتشاف كيفية عمل البرنامج.

يمكنك القيام بالتخطي step over باستخدام الاختصار f8 والدخول step into باستخدام الاختصار F7

أثناء debugging ، ننتقل وعليك أن تضع عينيك على سجل EAX إذا تغير إلى القيمة التي لدينا في بيان الإرجاع return statement وهو في هذه الحالة 8.

يمكنك تكبير رمز التفكيك disassembly code باستخدام Command  بالتمرير لأعلى scroll up أو التمرير لأسفل scroll down لتقليل حجم الخط.

---

يجب عليك أن تعلم عندما نتجاوز والمؤشر المحدد في سطر.
فهذا يعني أن هذا السطر لم يتم تنفيذه بعد.
ولكنه سيتم تنفيذه بعد اختيار الانتقال إلى التعليمة التالية اي التي بعدها.
وعند اختيار السطر، يمكنك رؤية المزيد من المعلومات عنه في لوحة الحالة اي status panel.
 إذا كانت القفزة يمكنك أن ترى ما إذا كانت القفزة ستحدث أم لا في لوحة الحالة.
  ويجب عليك أن تعلم أن لدينا  قفزة JMP دائمًا ولدينا قفزات شرطية أخرى مثل القفزة عند عدم المساواة jump not equal JNE، والقفزة عند المساواة jump equal JE، و والقفزة عند عدم الصفر JNZ jump not zero، وغيرها الكثير.
سنتطرق اليها في دروس قادمه الان ركز على هدف هذا الفيديو.

حسنا اذا استكشفت البرنامج وابتعدت كثيرا ولم تعرف اين ما كنت واين اين السطر الذي يقوم الان بتنفيذه.
فيمكنك الضغط على نجمه في الكيبورد او عمل نقره يمنيه ثم الذهاب الى EIP اي Extended Instruction Point.
او النقر مرتين على الريجيستر EIP سينقلك اينما كنت.

---


حسنا هنا يجب ان تعلم انه عندما الضغط على اي تعليمة من التعليمات او تحديد تعليمة واحده او الكثير من التعليمات فهذا لا يعني انك تقوم بتشغيلها الان انما يمكنك ان تحددها لتقوم بعمل فعل اخر عليها.
يمكنك عمل ضغطة زر في الفارة اليمنى لترى الافعال التي يمكن ان تفعلها تقوم بتشغيلها.

حسنا هنا يمكن ان ترى ان هناك قفزه ويمكن ان ترى في الاسفل قفز ستتم وايضا باللون الاحمر هناك خط من بداية تعليمة القفزه الى العنوان التي سيتم نقلك اليه.

وعليك ملاحظه السهم الذي هو من الاعلى الى الاسفل فهذا ايضا يشير ان هذه قفزه وليست حلقةمفرغة فالحلقه المفرغه تكون باللون الرمادي وتكون من الاسفل الى الاعلى.

هذه الوظيفه مثلا استطيع النقر مرتين عليها واكتشف ما بداخلها ثم اذا اردت الرجوع اينما كنت فقط اضغط على نجمه في الكيبورد وها انا هنا.

هناك ايضا طريقة فعاله لرؤيه الكود دون الذهاب او النقر عليه فقط اجعل مؤشر الفاره على العنوان او على اسم الوظيفه وسترى ما بداخله الاصدر الاولى فاذا اردت ان ترى جميع الاسطر ما عليك الا الضغط مرتين.

طريقه جيده لعدم اضاعتي العنوان التي تشك فيه فيمكن عندما ينتهي البرنامج لن تستطيع معرفه اخر عنوان كنت فيه فمن الطرق يمكنك وضع نقطه توقف في اي مرحله من مراحل اتتبع وانت تشك ان هذه قد تنفعك هناك طرق اخرى مثل الاضافه الى المفضله وسنرى لاحقا كيف نقوم بفعل ذلك.

اذا عملت تشغيل play button F9 فانه سيذهب بشكل مباشر الى تلك نقطه التوقف اذا كانت في سير تشغيل البرنامج.

ولحذف نقطه التوقف يمكنك اما اعاده النقر عليها او باستعمال اختصار الكيبورد اف اثنين ويمكنك ايضا بالطبع اضافه نقطه توقف في بي اف اثنين في اي مكان من الكود.

 
 nice
أعضاء أعجبوا بهذه المشاركة : alihmoda1970 , vosiyons , azarol


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


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