هل يمكن قراءة سورس كود برنامج مبني ب microsoft visual c++ 5.12 - نسخة قابلة للطباعة +- الفريق العربي للهندسة العكسية (https://www.at4re.net/f) +-- قسم : منتديات الهندسة العكسية - Reverse Engineering Forums (https://www.at4re.net/f/forum-4.html) +--- قسم : الأسئلة والإستفسارات، حلول المشاكل و تبادل الخبرات - Expert Exchange Newbie Questions Answers (https://www.at4re.net/f/forum-36.html) +--- الموضوع : هل يمكن قراءة سورس كود برنامج مبني ب microsoft visual c++ 5.12 (/thread-516.html) |
هل يمكن قراءة سورس كود برنامج مبني ب microsoft visual c++ 5.12 - djamel - 17-01-2019 السلام عليكم لقد قمت بكسر حماية لودر مبني ب Microsoft visual c++5.12وأسأل ان كانت هناك طريقة لقراءة السورس كود وشكرااا RE: هل يمكن قراءة سورس كود برنامج مبني ب microsoft visual c++ 5.12 - Gu-sung18 - 18-01-2019 وعليكم السلام يبدو انه لديك مفهوم خاطئ عن الهندسة العكسية وارجاع السورس كود لبرنامج ما. دعني اوضح أولاً حياة البرنامج التنفيذي، انظر هنا: كما موضح اعلاه، فالخطوة الاولى عندما تبرمج برنامج بلغة سي++ فانت ستكتب السورس كود اما في محرر (مثل ++notepad) او بيئة تطوير (مثل Visual Studio او Xcode) وستحفظ الملف، الملف سيحفظ بصيغة CPP كما في اعلاه (على سبيل المثال Test.cpp) الـPreprocessor هي مرحلة تسبق عملية الترجمة compile إذا تتم معالجة مسبقة للسورس كود قبل تمريره إلى المترجم compiler وكمثال بسيط عندما يكون هناك أمر توجيهي include فإنه يتم البحث عن المكتبة أو الملف المحدد ويتم تضمينه في الملف المصدري. إذ أن مهام المعالجة المسبقة preprocessor لا تتعلق بتنفيذ الكود وترجمته وإنما في بعض الإجرائيات الغير تنفيذية وإنما التوجيهية directive كما سنرى لاحقاً كالبحث عن الكلمات الرمزية المعرفة واستبدالها بالتعريفات الخاصة بها. الـCompiler سيأخذ السورس كود ويحولة الى لغة الاسمبلي الـAssembler سيحول اكواد الاسمبلي الى object code (ملف ينتهي بصيغة o. على لينكس و OBJ .على ويندوز) الـ Linker سيأخذ الـ object code ويربط معها الـ library ويحولها لملف تنفيذي (البرنامج النهائي الذي نشغله) ------------ الان نأتي الى البرنامج Test.exe والذي هو حالياً بلغة الالة (اللغة التي يفهمها المعالج وهي متكونة من 1 و 0 ) اذا اردنا ان نقوم بالهندسة العكسية له عن طريق منقح مثل ollydbg او disassembler مثل ida pro فكل عملها هو مجرد تحويل لغة الاله ( او عكسها بمعنى ادق) الى لغة الاسمبلي. يوجد برامج تحول لغة الاسمبلي الى لغة سي مزيفة او ما يسمى بـ Pseudocode ولكنه ليس الكود الحقيقي الذي كتبة المبرمج. بأختصار بمجرد تحول البرنامج الى لغة الاله فمن المستحيل الحصول على السورس كود الخاص به، ذهب، اختفى من الوجود ولن يعود موجودا داخل البرنامج واقصى ما يمكنك عملة هو الحصول على كود اسمبلي للبرنامج او كود Pseudocode. ----------- لمن لم توضح له الفكرة هذا كود سي++
سيحوله الـCompiler الى كود اسمبلي
RE: هل يمكن قراءة سورس كود برنامج مبني ب microsoft visual c++ 5.12 - [email protected] - 18-01-2019 (17-01-2019, 07:33 PM)djamel كتب : السلام عليكم السلام عليكم بدل أن تبحث عن الكود سورس للبرنامج لأن هذا مستحيل حاول أن تفهم آلية عمله و الخوارزميات التي يعمل بها و قم بكتابة البرنامج من جديد و باللغة التي تجيدها لأن هذا هو أساس الهندسة العكسية بالتوفيق. RE: هل يمكن قراءة سورس كود برنامج مبني ب microsoft visual c++ 5.12 - djamel - 20-01-2019 شكراااا صديقي وضحت الأمر بشكل جيد جدا شكرااااااااا RE: هل يمكن قراءة سورس كود برنامج مبني ب microsoft visual c++ 5.12 - mribraqdbra - 17-02-2019 جزاكم الله خيرا على كل حرف! ونسال الله التوفيق للجميع! لماذا ليس هناك نهاية سعيدة؟ لماذا لا ينغلق الموضوع بعد الافادة؟ |