PEiD الخطوة الأولى في الهندسة العكسية (فك ضغط البرامج)

peid.png

في موضوع سابق كتبته في المدونة الـ Reverse Engineering وأدواتها Ultimate Crackers Kit v3.2 وضحت فيه مفهوم الهندسة العكسية بالاضافة لمجموعة ضخمة من الأدوات التي قد يحتاجها أي شخص يريد الدخول في هذا العالم ولكن من المؤكد أن الأدوات وحدها لاتكفي فما فائدتها اذا كنا لانعلم وظيفة هذه الأدوات أو طريقة استخدامها! و بعد أن شاهدت اهتمام الزوار بهذه النوعية من المواضيع قررت أن أكمل هذا الطريق وأبدا بكتابة سلسة بسيطة تشرح طرق تحليل البرامج ومعرفة محتوياتها وحتى التعديل عليها وتعريبها وكما وضحت في الموضوع السابق بأني لن أشرح طرق كسر البرامج وفك حمايتها أو كتابة شروحات عن كيفية صناعة الكراك لأسباب تم توضيحها.

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

ان أول خطوة نبدأ بها عندما نريد عمل هندسة عكسية لبرنامج ما, هي معرفة اذا كان البرنامج مضغوط أو مشفر بأحد البرامج المخصصة لهذه المهمة فان الكثير من البرامج يتم ضغطها وتشفيرها بعد أن تبرمج باستخدام أدوات وبرامج كثيرها هدفها تصغير حجم البرنامج وجعل عملية الهندسة العكسية أصعب حيث يوجد أكثر من نوع للتشفير مثل FSG, UPX, MEW, ASPack وغيرهم الكثير ولكل نوع من هذه الأنواع برنامجها الخاص للتشفير وفك التشفير ولكن المجموعة التي وضعتها في الموضوع السابق سهلت علينا المهمة فهي تشمل أغلب الأدوات والبرامج التي سنحتاجها في الهندسة العكسية, أما الذي لم يحمل المجموعة فقد وضعت روابط الأدوات المستخدمة في الشرح بنهاية الموضوع وحتى لو حملت المجموعة الموجودة في الموضوع السابق يفضل التأكد دائما وتحميل آخر اصدار من البرامج لأن اصدارات البرامج الموجودة في المجموعة قد تكون قديمة بعض الشيء ويجب أن تحدث بعضها

الأن بعد هذه المقدمة الطويلة نبدأ بالتطبيق العملي وأول برنامج سنستعمله هو برنامج PEiD وهو برنامج معروف يستخدم لمعرفة نوع الضغط أو التشفير الذي تم استعماله على البرنامج وان لم يكن البرنامج الذي يتم فحصه مضغوط سيظهر لنا لغة البرمجة التي تم بواسطتها برمجة البرنامج وهي معلومة مهمة جدا في عملنا ولبرنامج PEiD الكثير من الاستخدامات والاضافات الأخرى التي تستطيع أن تحملها من موقعه وهو موجود بالمجموعتين ولكن بالاصدار 0.93 وآخر اصدار هو 0.94 لذلك يفضل تحميل الاصدار الأخير من موقعه لأنه من المؤكد أن الاصدار الأحدث يحوي اصلاحات وتطويرات جديدة تميزه عن الاصدارالسابق

طريقة استخدامه سهلة للغاية فبمجرد تحديد البرنامج بالضغط على الثلاث نقاط سيظهر لك نوعية التشفير أو لغة البرمجة المستخدمة وعلى سبيل المثال برنامج WinRAR مبرمج باستعمال Borland C++ 1999

peid1.png

أما برنامج الـ QuickTime فقد تمت برمجته باستعمال Microsoft Visual C++ 7.0

peid2.png

وبالمقابل فهو يظهر لنا أن برنامج Opera تم ضغطه باستعمال ASPack 2.12

peid3.png

هذا يعني أن في برنامج WinRAR و QuickTime يمكننا أن نبدأ عملنا في الهندسة العكسية مباشرة أما في برنامج Opera فاننا سنحتاج لفك ضغطه قبل القيام بأي شيء لذلك نبحث في مجموعتنا عن برنامج لفك تشفير ASPack وان لم تجده فـ Google كفيل بهذه المهمة ويوجد برنامج لفك ضغط ASPack في مجموعتنا اسمه AspackDie ويمكن أن تجدوا غيره كل ماعليكم هو البحث وطبعا يجب مراعاة الاصدار فلا تكفي كلمة ASPack لوحدها فعند القيام بالبحث يجب مراعاة الاصدار الذي هو 2.12 في مثالنا, استخدام البرنامج عادي ولايحتاج لشرح كل ماعليك هو اختيار البرنامج الذي تريد فك ضغطه وهو سيتكفل بالمهمة وستلاحظ ازدياد في حجم البرنامج بعد فك ضغطه واذا فحصته هذه المرة في برنامج PEiD سيظهر لك لغة البرمجة التي هي Microsoft Visual C++ 6.0

peid4.png

سأكمل الموضوع في الأيام القادمة ان شاء الله وسنبدأ بالتطبيق العملي

موقع أداة PEiD | تحميل الاصدار 0.94 | الحجم: 340 KB
موقع أداة ASPackDie | تحميل الاصدار 1.41 | الحجم: 12 KB

الرجاء عدم نقل الموضوع بدون ذكر المصدر!
دمتم بود.. أخوكم Br4v3-H34r7.


التعليقات: 27 | الزيارات: 16,124 | التاريخ: 2008/03/27

27 من التعليقات

  1. ServeR00T says:

    مبدع <<<< قليلة فيك

  2. Br4v3-H34r7 says:

    تسلم أخوي على كلامك والي حأعتبره مجاملة.. ان شاء الله تكون استفدت وهلا فيك بالمدونة :^^:

  3. Dr.FoX says:

    يــا ســلاآآم عليك يا مبــدع يالقـلب الشـجاع

    دائمــا مبدع و بتظــل مبدع :OK: :OK: :OK:

    B3s7 r3G4rDs

  4. Br4v3-H34r7 says:

    هلا فيك أخوي Dr.FoX ماشاء الله دائما منور المدونة بوجودك ان شاء الله يكون الموضوع نال اعجابك وانتظر الشرح الي بعده لأنه حيكون هو أساس كل شيء ;)

  5. aminOS says:

    nice job Mr.C sharp

    بارك الله فيك عبدو
    :yes:

  6. Br4v3-H34r7 says:

    أهلا أمين ان شاء الله يكون الموضوع نال اعجابك :^^:
    Welcome Mr.C++

  7. DeStRoOoY says:

    يعطيك الف عافيه :YY:

  8. zEaK47 says:

    السلام عليكم
    مشكور عل افادة
    يوجد منتدي عربي جميل :OK: لمن يريد الافادة و الاستفادة و هو :
    http://www.AT4RE.com
    و هو منتدى AT4RE اي [A]rab [T]eam 4 [R]everse [E]ngineering
    الفريق العربي للهندسة العكسية
    :yes:
    و شكرا

  9. Br4v3-H34r7 says:

    @DeStRoOoY: الله يعافيك أخي…

    @zEaK47: أهلا بك أخي شكرا على ذكر موقع AT4RE فهو مفيد جدا و متخصص بهذه الأمور و صناعة الكراك و طبعا شروحاته احترافية أكثر من هذا :) تركز على لغة ASM و استخدام الـ Debuggers مثل برنامج OllyDbg و IDA…

  10. SYRIAN says:

    الله يعطيك الف عافية اخوي انا استفاديت من مواضيعك كثير مشكور اخي …..

  11. Mr.wagdy says:

    جزاك الله كل خير :YY:

    منتظر جديدكـ :^^:

  12. DATA_SNIPER says:

    السلام عليكم ورحمة الله تعالى وبركاته.
    موضوع جميل ومفيد لمن يريد البدأ في هذا العالم الشيق.
    اردت ان اضيف بعض التعليقات فقط لكي تكون مشاركتي ايجابية.
    في قضية التعرف على نوع لغة البرمجة او نوع التشفير لبرنامج معين بعتمد PiED على تواقيع مثله مثل برامج Anti-Virus ،يقوم PiED بمقارنة البيتات الأولى من نقطة الدخول مع بايتات موجودة في قاعدة البينات التي تدل بدورها على لغة البرمجة او Compiler او نوع التشفير.
    أرجو ان تتقبل مداخلتي في الموضوع.
    السلام عليكم

  13. Br4v3-H34r7 says:

    @SYRIAN: الله يعافيك أخي.. أسعدني كلامك وأتمنى أن تكون استفدت من المواضيع الأخرى أيضا وأهلا بك في المدونة.

    @Mr.wagdy: أهلا بك.. شكرا على الدعوة الجميلة وان شاء الله سأحاول كتابة المزيد عن هذه النوعية من المواضيع.. قريبا ;)

    @DATA_SNIPER: وعليكم السلام أخي.. شكرا على الاضافة والمداخلة المفيدة, طبعا مرحب دائما بهذه النوعية من التعليقات ان كان هدفها الفائدة وتوضيح مزيد من الأمور للزوار :OK: دمت بود…

  14. minou00 says:

    شكرا لك و بارك الله فيك
    نحن ننتضر الجديد بأحر من الجمر فأرجوك لا تطل علينا

  15. مصطفى says:

    مشكور يامعلم :OK:

  16. ABO_ATHBE says:

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

    الله يجزاك خير على ماتقدمة لاخوانك العرب من جهد

    أخي عندي برنامج بعد الفحص Borland C++ 1999 هل استطيع أن اقوم بتعريبة

    مع العلم أن برامج التعريب لاتتعرف علية

  17. Br4v3-H34r7 says:

    أخي جرب فتح البرنامج باستخدام Resource Hacker كما شرحت في هذا الموضوع.

  18. قتيبة الشيخلي says:

    شكرا اخوية على هذه المعلومات المهمة بالنسبة لي .
    انا لست محترفا بالبرمجة لكن اني اشتغل على لغة برمجة ++c واريد اعرف كيف احلل فايروس واتخلص من عندة عن طريق كتابة برنامج مضاد له فاذا تستطيع مساعدتي اكونلك شاكر جداً

  19. ادونيس says:

    :OK: تسلم ايدك والله شرح خرافي يا غالي عندي طلب تكدر تنطي دورات بالفيديو عربي للهندسة العكسية لان بصراحة عندي برنامج قرصنه الاكس بوكس 360 ومحتاج شخص محترف بي مثلك ياريت تراسلني على الخاص وكل شي راح يكون مدفوع الحساب كاش بالدولار $$ ممكن تراسلني genxsoft@yahoo.com

  20. @ادونيس: لست مهتما بعمل دورات خاصة أو شروحات فيديو عن الهندسة العكسية! ويجب أن تعلم أن الدولارات التي تتكلم عنها هي آخر اهتماماتي :)

  21. رائع رائع رائع,
    انا قد إستخدمت هالبرنامج من قبل وضيعته مع سرقة أحد اجهزتي الشخصية
    وفشلت في إيجاده مرة أخرى
    لحسن الحظ إني من المتابعين لمدونتك وحصلت التدوينة هذي

    ممممم جربت إني احاول اشيك عال winrar وبرنامج ال paltalk
    يكتب لي Nothing found , جربت ببرامج اخرى وحصلته شغال لكن هذولا ماضبط معاي

    لكن عالعموم , هذا اللي كنت أبحث عنه
    مشكور

  22. السلآم علــيكم ورحمة الله وبركآتــه

    اولاً : ان اخطيت بالكلآم فـ سآمحونــي (مربووش)

    —————– اما بعــد

    اخوي والله الذي لا الــه غيره

    انــي ارتحت للمدونـه وبالنسبه لــي الأولـى من نوعهـا

    ..

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

    لكــن حملت وحدهـ وفيــه مشكله كـل مآ احآول معرفة نوع التشفير يقول لـي فيجوال بيسك ثم الأصدآر

    مع جمــيع البرآآمج ……؟

    فهل من حــل

    ……….

  23. بارك الله ، فيك أستفدت كثيراَ . الله يجعلها ، في مواَزين حسناَتك ،،

  24. يعطيك العافية على الشرح الممتـآز جداً :]

    جـآري متـآبعة شروحـآتك ودروسك القادمة :]

  25. المدنوف هكر says:

    إقتباس /
    اخوي والله الذي لا الــه غيره

    انــي ارتحت للمدونـه وبالنسبه لــي الأولـى من نوعهـا

    ..

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

    لكــن حملت وحدهـ وفيــه مشكله كـل مآ احآول معرفة نوع التشفير يقول لـي فيجوال بيسك ثم الأصدآر

    مع جمــيع البرآآمج ……؟

    فهل من حــل

    ردي /

    ياغالي غير النسخة منت مجبر على هالنسخة

  26. nemr says:

    هل هذا البرنامج ممكن ان يستخرج التنصيب الصامت للبرامج رجاء شرح طيرقة استخراج اوامر التنصيب الصامت بهذا البرامج

  27. fadi says:

    السلام عليكم :
    اريد تعلم الهندسه العكسيه اي كيفيه فك البرامج (عملي) من البدايه لاني مبتدئ
    وشكرا .