اقتباسفحسب ما فهمه من قرأه الشرح ,النقطه الاساسيه من استغلال الخطا هو تحويل عنوان العوده بعد اتمام القرأه من الملف الى كود الشل ليتم تنفيذه...فسؤالي لماذا اذا لا نستطيع تغير هذا العنوان بدون حدوث خطأ معين ؟؟ الا نستطيع ان نغير عنوان العوده بعد القرأه مع سلامه الكود اي من دون اي اوفر فلو اذا صح الاسم .؟
اخي الكريم كما تعلم ان الخطء الاساسي هو في ان البفر محدد على 10 والخطء هو عندما يزيد عنه ....
فكل العمل ان البرنامج يقرء الملف وينقل محتويات الملف ... الى buf ...
كما تعلم ان الداله محدده ب 10 فقط لو زادت راح يحدث الخطء فمن هنا ممكن انك تحفظ عناوين الرجوع
وتنشئ ملف البدايه تعبيه قيم 0x90 ومن ثم تقوم بملئه بلشيل كود وعنوان الرجوع ... وهاكذا هو الاستغلال ...
يجب وجود الخطء ... ليتم تنفيذ الاستغلال ... لايمكن تنفيذه بدون خطء ...
اقتباسسؤال ثاني , لماذا اصلا نحتاج ملف نصي لكتابه الكود النتفيذي بداخله ؟ هل لا نستطيع ان نحقن الكود التنفيذي هذا بداخل البرنامج ذاة ؟ وعمل قفزه عليه اثناء التنفيذ مع الاحتياط بوضع امر للرجوع ..؟
... كما قلنا في السابق طريقه العمل والخطء هو في ال buf المحدد للنص الموجود في الملف النصي ... فهنا هو الخطء ...
ممكن تكتب كود يقوم بفتح البرنامج ومن ثم يقوم بادخال المعلومات التي تريدها في هذه الداله ويقوم بجميع الذي سوف تعمله
في الخطوات التي ذكروه الاخوان ... فأين الفرق ... اذا كان الخطء خطء وفي نفس الداله ... لكن يوجد اكثر من طريقه لاستغلاله
والسبب واحد ...




