بسم الله الرحمن الرحيم
في الهندسة العكسية, هناك العديد من الأدوات التي يمكن أن تساعدك و تسهل عليك العمل
في هذا الموضوع سأشرح الأدوات اللازمة فقط و كيفية التعديل عليه لتصبح سهلة للوصول إليها و إستعمالها
§ الأدوات الازمة و أدوارها :
1/ منقح (Debugger) وهو سلاحك الرئيسي في عالم الهندسة العكسية, حيث يمكنك من خلاله :
*- فك تجميع البرامج حيث يصبح الكود واضح أمامك لكن بلغة الأسمبلي (يعني يجب أن تكون خبير بأتم معنى الكلمة في الأسمبلي)
*- تتبع البرامج خطوة خطوة (يمكنك من هذه الخاصية معرفة مكان الخطأ...)
*- وأهم شيئ فيه هو التنقيح حيث يمكنك التغيير في الكود مباشرة دون الحاجة إلى الكود المصدري (يمكنك تصحيح الأخطاء مثلا)
أمثلة لبرامج التنقيح : Ollydbg,SoftIce,Ida…
سنستعمل برنامج ollydbg
2/ كاشف معلومات البرامج, أنا أسميه كاشف الألغام لأنه يمكنك من خلاله:
*- التعرف على لغة البرمجة التي كتب بها أي برنامج
*- يكشف لك عن المشفر الذي تمت به عملية التشفير و هذا إن
كان البرنامج مشفر ( إذا يعتبر كاشف ألغام J )
*- كما يمكنك التعرف على أقسام البرنامج (Sections), الدلائل (Directories), كذلك يمكنك التعرف من خلاله على نقطة إدخال البرنامج و معلومات أخرى عن الـــ PE
أمثلة لبرامج الكشف:... PeiD, RDG Packer Detector,FastScanner
سنستعمل برنامج PEiD
3/ محرر هكس ( HexEditor) ويمكنك من خلاله
*- الكتابة في البرنامج مباشرة دون أي عوائق, يمكنك إستخدامه للكتابة على البرامج المشفرة لأنها تكون محمية من الكتابة فوقها
( أسميه زارع الألغام J )
أمثلة لمحرر الهكس: HexWorkShop,HexEditor…
سنستعمل برنامج HexWorkShop
4/ مجمع ( Assembler ) هذا تحتاجه إن كنت مبرمج أسمبلي, يمكنك من خلاله :
*- البرمجة بلغة الأسمبلي
*- تصحيح الأخطاء في الكود المصدري
( أنا أسميه سلاحي السري J )
أمثلة للمجمع : MASM,FASM,TASM…
سنستعمل برنامج MASM32 للتجميع أما محرر الكود سنستعمل WinAsm
WinAsm: يوضح الكود ( كود بالألوان J ) و يعرض لك الدوال و برامترها...
§ تعديل الأدوات و تجهيزها :
1/ تعديل Ollydbg
*- خيار فتح مع Ollydbg عند عمل كليك يمين على البرامج
هذه الخاصية ليست من خيارات ollydbg, لكن نحن سنفعلها يدويا J و لتفعيل هذه الخاصية نذهب إلى تنفيذ الأوامر Runو نكتب Regedit
نذهب إلى المفتاح HKEY_LOCAL_MACHINE\SOFTWARE\Classes\exefile\shell
ثم من قائمة Edit نختار الأمر New ثم Key, نكتب فيه مثلا :
Open With Ollydbg
دابل كليك على المفتاح الجديد, ثم نكرر نفس المراحل لإنشاء مفتاح جديد و نكتب عليه command
ثم دابل كليك على Default لتغيير قيمته, و نكتب فيه مسار ollydbg مع كتابة الإمتداد .exe ثم %1
ملاحظة : المسار يكون بين "" و كذلك "%1"
يعني قيمته ستكون : "C:\OllyDbg\OLLYDBG.EXE" "%1"
*- تعديل مسارات Ollydbg
من داخل مجلد ollydbg قم بإنشاء المجلدين udd و plugin
udd: هذا المجلد خاص بالنسخ الإحتياطية للبرامج التي تنقحها كذلك يحفظ لك التغغيرات و التعاليق التي قمت بها أثناء التنقيح
Plugin: هذا المجلد خاص بلواحق ollydbg, قم بجمع كل اللواحق التي لديك و إنسخها إلى هذا المجلد لتشتغل مع olly
تعديل المسارات :
من القائمة Options إختار Appearance ثم إضغط على Directories
في UDD path قم يكتاية مسار مجلد الــ UDD, و ضع علامة صح على Backup old .udd files
كذلك قم بتعديل مسار مجل الــ Plugin فى الــ Plugin path
*- تعديل الإضاءة
جرب إفتح أي برنامج مع ollydbg, أبدي رأيك في إضاءة الكود
كله باللون الأسود, معقد, لا يفتح النفس لعكس الكود, لا يوجد فرق بين التعليمات
حسنا, بكبسة زر ستتحسن الإضاءة
Right Clic داخل مساحة الكود ثم Appearance, ثم Highlighting, واختر jumps 'n' calls ليضيئ لنا طريق الهندسة العكسية
2/ تعديل PEiD
*- خيار الفحص مع PEiD عند عمل كليك يمين على البرامج
لا تقلقوا لأننا لن نكرر ما فعلناه مع ollydbg لأن PEiD يوفر لنا هذه الخاصية
حسنا, إفتح PEiD و إضغط على الزر Options ثم ضع علامة صح على Register Shell Extension
كليك يمين على أي برنامج :
3/ تعديل HexWorkshop
*- خيار الفتح مع HexWorkshop عند عمل كليك يمين على البرامج
هذه الخاصية يوفرها لنا البرنامج
إفتح HexWorkshop و من القائمة Options إختر Preference ثم Configuration وضع علامة صح على :
Add Hex Edit item to Right Mouse Context Menu
4/ تعديل WinAsm
أولا قم بتنصيب MASM32
وعند الإنتهاء أنشأ ملف جديد في C: بإسم WinAsm
إفتح الملف المضغوط الخاص ببرنامج WinAsm و قم باستخراجه في المجلد الذي أنشأناه
إفتح WinAsm ستظهر لك بما يسمى splash screen
أنا أسميها الشاشة المزعجة لأنها تبقى ثواني أو أكثر وهي مفتوحة
ماسنغيره هو نزع هذه الشاشة, تعديل المسارات, تفعيل خاصية عمل البرنامج بعد التجميع و SysTrayIcon و الــ Font, خاصيات أخر
من القائمة Tools إختر Options :
*- نزع الشاشة المزعجة و خاصيات أخرى :
من القائمة Tools إختر Options أزل علامة صح على
Show Splash On StartUp عدل البرنامج كما في الصورة
*- تعديل المسارات
قم بتعديل المسارات كما في الصورة
إن كان لديك مرجع أو ملف يساعدك في البرمجة قم بوضع مساره في الــ Help File
*- تفعيل خاصية عمل البرنامج بعد التجميع
ضع علامة صح على Launch EXE on Go All
قم بتعديل مسار olly في External Debugger قد تحاجه J
*- تعديل الــ Font
إختر Courier New للــ Font وهو المضل لي J, الحجم 9, و اختر Arabe للــ Script لكي نكتب تعاليق بلغتنا الحبيبة "العربية"
و الآن جرب إستعماله و سترى كم هو ممتع و سهل J
الحمد لله, أنهيت الدرس بسلام
السلام عليكم و رحمة الله و بركاته
لا تنسى أن تضغط موافق :)