منتدى اون لاين العربي
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

منتدى اون لاين العربي

اهلا وسهلا بيك اخى زائر
 
الرئيسيةالرئيسية  البوابةالبوابة  أحدث الصورأحدث الصور  التسجيلالتسجيل  دخولدخول  

 

  الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching

اذهب الى الأسفل 
2 مشترك
كاتب الموضوعرسالة
المغربي
صاحب الموقع
صاحب الموقع
المغربي


ذكر عدد المساهمات : 1723
نقاط : 1960048
السٌّمعَة : 27
العمر : 38

بطاقة الشخصية
ما رأيك بالمنتدى ما رأيك بالمنتدى: 10

 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching Empty
مُساهمةموضوع: الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching    الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching Emptyالأحد ديسمبر 12, 2010 11:07 am

الهندسة العكسية للمبتدئين الدرس الثاني





قم بتحميل الأدوات

OllyDBG


Lena's Reverse Me




نقوم بفتح OllyDBG وتابع كما بالصور


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 89143341gn4


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 76544885iz6


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 66806100vu1

مسار UDD يتم به حفظ تحليل البرامج حتي لا يقوم البرنامج بنفس العمل كل مرة

مسار Plugins أعتقد أنه يشرح نفسه



بعد تحديد المسارات سيحتاج البرنامج لغلقه و إعادة تشغيله مرة أخري


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 71152871eb6

و سيتم شرح الأزرار المستخدمة خلال الشرح



في الأدوات التي قمت بتحميلها بأعلي ستجد ملف إسمه lesson1Test.


قم بسحبه إلي البرنامج -Drag ـ أو منFile ثم open ثم إختار الملف أو من الزر الأول الذي يأخذ شكل الفولدر


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 95036851qk3


عند تشغيل البرنامج الصغير Lesson 1 test ستظهر كما بالصورة



كما هو واضح البرنامج يقول إنه نسخة تجريبية ونحن نريد ن نجعله نسخة كاملة



 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 38057942jb3



إضغط Ok و إغلق


قم بتحميل الملفين الآتيين

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]


4shared.com /file/18660128/ca895ab6/plugins.html



بعد إنتهاء التحميل قم بفك الضغط عن الملفين و ضع الملفات التي تم فكها في فولدر Plugins



ثم قم بتشغيل Olly مرة أخري , و إسحب برنامج الدرس مرة أخري وتابع كما بالصورة


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 78391781qt4


قم بإختيار ملف Win32 help الذي قمت بتحميله ووضعته في فولدر Plugins


عند تشغيل البرنامج ظهرت لنا رسالة تقول أن البرنامج نسخة تجريبية هذه الرسالة


تسمي Message Box



تابع كما بالصورة


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 26344606ha2


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 10fu2


واضح كما بالصورة تعريف Message Box



إستخدم Win32 Help في كل مرة للتعرف علي الأوامر المختلفة



نعود إلي كود البرنامج مرة أخري


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 11893100ep4

كود البرنامج صغير جدا سنقوم بدراسته خطوة خطوة


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 11io3



لو عدت إلي الدرس الأول ستعلم أن الأمر Mov هو عبارة عن نقل داتا من مكان إلي مكان وهنا الأمر سيقوم بنقل 1 بايت إلي AL Register



لاحظ byte ptr عرفنا أنه سيتم نقل 1 بايت ولو أردنا نقل 2 بايت لكنا رأينا الأمر word ptr


ول أردنا نقل 4 بايت لكنا رأينا الأمر dword ptr



لكن ما الذي يوجد بالذاكرة 403000 لاحظ الصورة


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 12jd2


الأمر الثاني هو CMP AL, 00

و الأمر يقوم بمقارنة0x00l ب Al ونتيجة المقارنة تظهر في z-flag


إما صفر أو واحد




jne 0040101c



لو عدت إلي الدرس الأول ستجد أن Jne تعني Jmp if not equal


لاحظ أن Al =1 و أن المقارنة تتم بين al و 0 و النتيجة ستظهر في Z-Flag وهي التي ستحدد إن كان سيتم القفز أم لا


هنكا أكثر من طريقة حتي نصل لهدفنا وهو النسخة الكاملة


لكن قبل ذلك نعود Olly



ولاحظ ما يحدث للكود وقارن بين الصورتين


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 14gh1


إضغط F8 أو  الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 13jh1


حتي يتم تشغيل البرنامج خطوة خطوة ودائما و أبدا سنفعل ذلك



ولاحظ ما يحدث للكود وقارن بين الصورتين



 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 15ml1

أعتقد انه واضح أن في الصورة الأولي AL = 0 وهو واضح في EAX

وفي الصورة الثانية وبعد نقل 1 بايت فإن AL = 1 وواضح أيضا في EAX



الآن إضغط F8 مرة أخري


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 16cd8

لاحظ
أن نتيجة المقارنة ظهرت في Z-Flag = 0 و بناءا عليها لن يتم القفز وسيتم
الإستكمال وهو سيقودنا إلي رسالة Trial Version لكن لاحظ إن تم القفز سيتم
القفز إلي 0040101E وهي موجودة كما بالصورة


 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching 17uy4



أعتقد أنه واضح الآن كيف سنحل هذا الدرس
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://enligne.arabepro.com
designer
عضو مبدع
عضو مبدع
designer


عدد المساهمات : 189
نقاط : 210
السٌّمعَة : 0
العمر : 29

 الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching Empty
مُساهمةموضوع: رد: الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching    الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching Emptyالثلاثاء يوليو 19, 2011 3:06 pm

شكرا ليك
الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
الهندسة العكسية للمبتدئين الدرس الثاني Basic Patching
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
»  الهندسة العكسية للمبتدئين الدرس الثالث Nag Removal +Aesthetic Patching
» بـرنـامـج رائــع لتــعــلم اللغـــة الإنـجليزية للمبتدئين والمـحترفين مـهم جداً لكل
» الملك عبدالله الثاني: تقسيم سوريا ليس في مصلحة أحد
» Icon30 الإصدار الثاني من هاك جديد المواضيع من برمجتي المعتمد على rss
» الجهاز التنفسي (ملخص الدرس)

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتدى اون لاين العربي :: المنتدى التقني :: منتدى الحماية من الاختراقات-
انتقل الى: