• 0
مصطفى 36a2

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

سؤال

السلام عليكم ورحمة الله وبركاته

برنامج لاحقته exe  ... هو عبارة عن بضعة كيلو بايتات..يمكن تلخيص محتواها بما يلي :
1- معلومات عن البرنامج ..
2-بيانات يستخدمها البرنامج ...
3-التعليمات التي سينفذها البرنامج ...
بغض النظر كيف سيتم ترميز هذه الأمور داخل البرنامج ...يجب أن تعرف أن أي سلسلة نصية معرفة داخل البرنامج سيتم حفظها كما هي في البرنامج 
مثال عملي بسيط ... 

بفرض أننا كتبنا البرنامج التالي بلغة C:
 

#include<stdio.h>int main(){char *string="Hello World!";printf(string);getchar();return 0;}

 

وبعد أن نقوم بترجمة البرنامج وإنتاج ملف exe  ... اتبع مايلي :
افتح برنامج Notepad++  ( حمله إن لم يكن لديك )
اسحب ايقونة ملف الexe  وأفلتها داخل برنامج الnotepad++
سيفتح البرنامج كنص ...
والآن قم بالبحث عن عبارة Hello World  ... وستجدها في الأسفل مع البيانات المخزنة :) ... إذا لم تجدها اضغط ctrl+f واكتبها وسيبحث عنها النوتباد 
هل وجدتها :)
يمكنك تغييرها إلى أي عبارة بنفس الطول .... انتبه  : نفس الطول تماماً وإلا لن يعمل البرنامج ... والآن شغل البرنامج ... وسترى التعديل الذي قمت به :)

والآن لننتقل إلى الموضوع الرئيسي ... 
بطريقة مماثلة ... سأكتب برنامج يطلب منك إدخال كلمة سر ... وإذا كانت صحيحة يطبع عبارة معينة ...
المطلوب منك كتابة هذه العبارة هنا في مشاركة لتدل على أنك نجحت :) ... وإن لم تنجح فلا بأس في مناقشة الموضوع ...
بالتوفيق :)

البرنامج في المرفقات 

 

easy hack.rar

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

2 إجابة على هذا السؤال .

  • 0

السلام عليكم أخي مصطفى :)

 

بالمناسبة فكلمة المرور هي ThePassword:) ، لكنني قررت أن أخترق البرنامج بعمل باتش ساحق ماحق ... إليك الطريقة :)

 

* - أولا : إليك كلمة المرور أين تقبع ***

 

341728383.jpg

 

و إليك الآن طريقة برمجة الباتش الماحق :)

 

767801367.png

 

بعد أن عرفنا العنوان 004010B2 ، سنقوم بفتح برنامج WDasm لمعرفة الأوفست Offset كالتالي :

 

783209327.png

 

- الأوفست هو : 10B2h، إذن ما علينا سوى برمجة الباتش...

 

* - ثانيا : سورس كود الباتش البسيط :)

#include <stdio.h>#include <stdlib.h>#define JE 	0x74#define OFFSET	0x10B2int main(){char byte[2]={JE,0x15};FILE  *patch;patch=fopen("easy hack.exe","r+b");fseek(patch,OFFSET,SEEK_SET);fwrite(&byte,sizeof(byte),sizeof(byte),patch);fclose(patch);return 0;}

إليك البرنامج بعد الباتش :

 

221083406.png

 

و الآن أصبح برنامجك في خبر كان ههههههههه :)

 

إلى اللقاء ...

 

easy hack_patch.zip

 

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

ما شاء الله عليك أخي حمزة :)
ولكن لا أزال مصراً على أن تكتب ما يطبعه البرنامج :) ... ربما هذه هي الخدعة الوحيدة هنا :)
بارك الله فيك ..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .