المشاركات : 34
المواضيع : 0
الإعجاب المحصل: 0
الإعجاب المعطى: 0
الإنتساب : Oct 2018
السمعة :
0
(12-01-2019, 04:49 PM)هـآوي كتب : وجدت المكان التي تظهر به القيمة وبعد كتابة mov edx واقوم بالتشغيل يحدث خطا
لنأخذ التحدي من هنا للتجربة عليه:
https://www.at4re.net/f/thread-19.html
1- المكان الفارغ في نافذة Hex Dump :
2- الكتابة في المكان الفارغ:
العنوان الجديد 0x004068BC
3- العنوان المستهدف للتعديل عليه:
في العنوان 0x00403F4A نقوم باستبدال القيمة القديمة الى يتم دفعها للذاكرة بالقيمة الجديدة و هي عنوان الكلمة Hello
PUSH 004068BC
4- نتم تشغيل التحدي و نضغط على زر "تحقق من التسجيل"
نفس العملية برمجبا بالسي شارب:
رابط الملف التنفيذي للتجربة:
gone
المشاركات : 50
المواضيع : 4
الإعجاب المحصل: 0
الإعجاب المعطى: 0
الإنتساب : Oct 2018
السمعة :
0
شكرأ لك صديقي
لكن ليس هذا ماكنت اقصده
بجميع الاحوال البرامج التي تحمل سترنغ ثابت يمكن التعديل عليها وحفظها مباشرة بدون اي مشاكل
لكن انا اردت ان اعرف الطريقة الصحيحة للوصول للاوفست الصحيح الذي يتم التعديل عليها
كما الحال في برنامج PC
يتم الحصول على عنوان الستاك المحجوزة عندا وضع نقطة توقف
لو قمنا بوضع نقطة توقف على العنوان التالي 0051138B
ستلاحظ انه خرج لنا النص
Stack SS:[0012FED8]=01722DCC, (UNICODE "12345")
لو حاولنا التعديل على نفس العنوان
بدفع الى قيمة ثانية او كتابة mov edx
ستلاحظ انه لن يعمل
لكن لو تم التعديل على العنوان التالي 00511346
يعمل
( ماريد معرفته كيف وصلنا الى العنوان 00511346 وعرفنا انه المكان الصحيح للتعديل )
واعتذر للإطالة وشكرا
المشاركات : 1,519
المواضيع : 287
الإعجاب المحصل: 102
الإعجاب المعطى: 48
الإنتساب : Oct 2018
السمعة :
36
للوصول إلى ذلك المكان عليك ببتبع الدالة GetComputerNameA or GetComputerNameW
لَّا إِلَٰهَ إِلَّا أَنتَ سُبْحَانَكَ إِنِّي كُنتُ مِنَ الظَّالِمِينْ.
عن أبي هريرة -رضي الله عنه- أن رسول الله -صلى الله عليه وسلم- كانَ يقولُ في سجودِهِ: «اللَّهُمَّ اغْفِرْ لي ذَنْبِي كُلَّهُ: دِقَّهُ وَجِلَّهُ، وَأَوَّلَهُ وَآخِرَهُ، وَعَلاَنِيَتَهُ وَسِرَّهُ».
(صحيح - رواه مسلم).
المشاركات : 50
المواضيع : 4
الإعجاب المحصل: 0
الإعجاب المعطى: 0
الإنتساب : Oct 2018
السمعة :
0
13-01-2019, 07:29 AM
(آخر تعديل لهذه المشاركة : 13-01-2019, 07:35 AM بواسطة هـآوي.)
(13-01-2019, 06:48 AM)M!X0R كتب : للوصول إلى ذلك المكان عليك ببتبع الدالة GetComputerNameA or GetComputerNameW
طريقة التتبع تنجح فقط مع البرنامج الذي يستخدم هذه الدالة
هل توجد طريقة سهلة للتبع ومعرفة الدالة المستخدمة؟؟(لو كان يستخدم البرنامج اكثر من دالة)
قمت بعمل برنامج لعمل تجربة عليه ويمكن الوصل للمكان الذي يتم به حجز النص ويمكن التعديل عليه بشكل يدوي
لكن لم اتمكن من معرفة المكان الصحيح للتعديل وعمل dump !!!!
المشاركات : 34
المواضيع : 0
الإعجاب المحصل: 0
الإعجاب المعطى: 0
الإنتساب : Oct 2018
السمعة :
0
(13-01-2019, 07:29 AM)هـآوي كتب : قمت بعمل برنامج لعمل تجربة عليه ويمكن الوصل للمكان الذي يتم به حجز النص ويمكن التعديل عليه بشكل يدوي
هل تستطيع ارفاق البرنامج الثاني ؟
gone
المشاركات : 50
المواضيع : 4
الإعجاب المحصل: 0
الإعجاب المعطى: 0
الإنتساب : Oct 2018
السمعة :
0
13-01-2019, 07:44 AM
(آخر تعديل لهذه المشاركة : 13-01-2019, 07:47 AM بواسطة هـآوي.)
(13-01-2019, 07:37 AM)offset كتب : هل تستطيع ارفاق البرنامج الثاني ؟ نعم
المشاركات : 34
المواضيع : 0
الإعجاب المحصل: 0
الإعجاب المعطى: 0
الإنتساب : Oct 2018
السمعة :
0
كمرحلة اولى لكي نكون على نفس الخط
هل وصلت اخي الى هنا:
العنوان: 00511B66
اذا كان كذلك ما هي الطريقة التي عدلت بها
gone
المشاركات : 50
المواضيع : 4
الإعجاب المحصل: 0
الإعجاب المعطى: 0
الإنتساب : Oct 2018
السمعة :
0
13-01-2019, 04:17 PM
(آخر تعديل لهذه المشاركة : 13-01-2019, 04:18 PM بواسطة هـآوي.)
نعم اخي الكريم هذا صحيح
هذا المكان الذي توصلت له 00511B66
قمت بالذهاب الى مكان فارغ في نافذة Hex Dump
00517A4F
وكتابة سترنغ UNICODE
وقمت بعدها بالتعديل بالاوفست 00511B66 وكتابة
MOV EDX,00517A4F
المشاركات : 34
المواضيع : 0
الإعجاب المحصل: 0
الإعجاب المعطى: 0
الإنتساب : Oct 2018
السمعة :
0
جرب اخي بطريقة مختلفة:
عمل نوب NOP للاوامر الحقيقية في العنوان 00511B66
ثم دخول الاستدعاء الموجود في العنوان 00511B61 المسؤول عن ارجاع نتيجة الدالة
ثم كتابة MOV EDX, 00517A4F زائد عليها تعليمة RET لتجاهل اكمال النتفيذ
كل الطرق تؤدي الى روما
gone
المشاركات : 50
المواضيع : 4
الإعجاب المحصل: 0
الإعجاب المعطى: 0
الإنتساب : Oct 2018
السمعة :
0
فعلا طريقة ممتازة زادك الله من علمه لو اردنا تنفيذها بشكل برمجي وتكون القيمة متغيره هل يمكن هذا؟
يتم العمل بشكل تسلسلي للمراحل او جميع التغيرات بنفس الحظة.
|