دورة الهندسة العكسية || كسر تطبيقات الدوت نت [1:1] نبذة عن تطبيقات الدوت نت

الموضوع في 'منتدى نقاشات واختبارات برامج الحماية' بواسطة black007, بتاريخ ‏أغسطس 6, 2015.

حالة الموضوع:
مغلق
  1. black007

    black007 مراقب عام (خبير فحص ملفات) طاقم الإدارة فريق فحص زيزووم للحماية نجم الشهر المراقب العام المميز

    إنضم إلينا في:
    ‏يونيو 17, 2013
    المشاركات:
    4,098
    الإعجابات المتلقاة:
    21,895
    نقاط الجائزة:
    1,345
    الإقامة:
    Egypt
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows 7


    [​IMG]


    [​IMG]

    الإخـــــوة الكـــــــــرام ;

    أعضــــــار وزوار منتديــــــات زيــزووم للأمـــن والحمايــــة

    أسعــد الله يومكـــم بكل خيـر ووفقكــــم لما يحبــه ويرضــاه

    نلتقي وإياكــم مع أولى دروس دورة الهندسة العكسية ،

    هذا الدرس سيتناول نبذة عن تطبيقات الدوت نت وبنية تكون الملفات المبرمجة بالدوت نت


    [​IMG]

    ولكن قبل الخوض في تفاصيل الموضوع .. توضيح بسيط بخصوص عنونة مواضيع الدورة
    كما أشرنا في مقدمة الدورة أن الدورة ستنقسم لـ 3 مراحل رئيسية
    دورة الهندسة العكسية || كسر تطبيقات الدوت نت [2:1]

    حيث رقم 1 يشير إلى المرحلة الحالية من الدورة
    ورقم 2 يشير إلى الدرس الحالي من المرحلة الحالية


    [​IMG]

    للرجوع إلى الموضوع الرئيسي :

    المصدر: دورة الهندسة العكسية || كسر تطبيقات الدوت نت
    في منتدى : منتدى نقاشات واختبارات برامج الحماية
    [​IMG]

    ][ مقدمـــــــة الموضــــوع ][

    تعتمد لغات البرمجة مثل ++C و Visual Basic على مترجم خاص (Compiler)
    وظیفته تحویل الشفرة المصدریة (Source) إلى ملفات تنفیذیة (Executable files)
    و لتشغیل ھذه الملفات نحتاج إلى بیئة تشغیل (Runtime) خاص باللغة البرمجیة التي أنتجتھا
    وھذه البیئة تختلف باختلاف نوع اللغة البرمجیة المستخدمة في برمجة الملف .
    [​IMG]

    أما مع الحزمة الجدیدة من لغات البرمجة التي تعمل ضمن بیئة الدوت نت، فقد أصبح الأمر مختلف
    ، فھي تتبع المنھج التالي في إنتاج و تشغیل تطبیقات الدوت نت

    - یحول المترجم الخاص بالدوت نت (Compiler) الشیفرة المصدریة (Source) إلى لغة وسیطة (ذIntermediate Language) و یرمز لھا اختصاراً بـ (IL) و ینتج عنه ملف تنفیذي یحتوي على تعلیمات اللغة الوسیطة


    - عند تشغیل الملف التنفیذي السابق تتولى منصة التشغیل العامة (Common Language Runtime) و التي یرمز لھا أختصاراً (CLR) و المضمنة ضمن اطار عمل دوت نت (Net Framework Machine Code) بتحويل هذه التعليمات (اللغة الوسيطة) إلى لغة الألة التي يفهمها النظام ويتعامل معها

    - إلى الأن البرنامج لم ينتقل إلى مرحلة التنفیذ و تعرف المرحلة السابقة بـ (Just In Time Compile) و اختصاراً (JIT Compiler)

    - بعد ذلك یتسلم النظام تعلیمات لغة الآلة و ینفذھا
    [​IMG]

    ][ بنية تكون التطبيقات المبرمجة بالدوت نت ][

    تتكون التطبيقات المبرمجة بالدوت نت من عدة أقسام وهي :

    - PE Header :
    هو القسم الذي يحتوي المعلومات العامة كاصدار البرنامج و معلومات عن الاقسام الموجودة بالتطبيق و نقطة الادخال و تاريخ انتاج التطبيق و معلومات عن اجزاء التطبيق اللازمة كي يعمل بشكل سليم خالِِ من الأخطاء


    [​IMG]

    - Unmanaged Stub :
    هذا القسم يحوي على معلومات يحتاجها لودر(Loader) نظام الويندوز كما شرحنا سابقاً كي يقوم بتحميل تطبيق
    و من ثمه يقوم لودر الويندوز بالتعرف من خلال الـ PE Header على قسم +COM
    فيؤؤل إكمال تشغيل التطبيق الى الـ CLR و هي دلالة مختصرة لـ (Common Language Runtime)
    و يتم بها عمليات واسعة من المعالجة و تطبيق عمليات الربط و الكومبايل في وقت الاستخدام
    بالاستعانة بمكتبات عديدة و اهمها و هي المسؤولة عن بدء التطبيق ألا و هي Mscoree.dll


    [​IMG]

    - Met a Data :
    و هذا الجزء الهام من تطبيقات الدوت نت يحتوي على معلومات هامة عن التطبيق كنقطة ادخاله من نوع Managed و بيانات اخرى يحتاجها الـ CLR ليقوم ببدأ تشغيل تطبيقك


    [​IMG]

    - MSIL Code :
    و هو الجزء الرئيسي بكل تطبيقات الدوت نت حيث انه مهما كانت اللغة التي تبرمج بها باستعانة منصة الدوت نت فسيتم تحويل كل اكوادك فيها الى لغة واحدة مشتركة اسمها MSIL و هي اختصار لجملة (Microsoft Intermediate Language) و يتم حفظ كل اكوادك في جزء من التطبيق بصيغة هذه اللغة يتم تفسيرها وقت التشغيل و تحويلها الى اللغه التي يفهمها نظام التشغيل بواسطة الـ JIT التي ذكرناها سابقاً و بمساعدة الـ CLR


    [​IMG]

    - Resources :
    يحوي الموارد التي يحتاجها التطبيق من Manifest لتعريف بيئة العمل و اصدار التطبيق و المعلومات عنه و أيقونته


    [​IMG]

    وفي الختـــام نتمنى لكم الإستفادة
    راجين من الله أن نكون قد وُفِقنا في إيصال المعلومة للجميع
    بشكل مبسط ويسير ، يسهل على الجميع فهمه

     
    آخر تعديل بواسطة المشرف: ‏أغسطس 31, 2015
  2. White Man

    White Man خبير فحص ملفات فريق فحص زيزووم للحماية

    إنضم إلينا في:
    ‏فبراير 24, 2014
    المشاركات:
    12,580
    الإعجابات المتلقاة:
    28,707
    نقاط الجائزة:
    1,250
    الإقامة:
    Egypt,Alex
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows8.1
    ][ الإستفسارات الواردة حول الدرس ][

    [​IMG]

    الإستفسار الأول :

    هل الدوت نت لغة برمجة مستقلة مثلها مثل Visual Basic
    ام انها بيئة تشغيلية تعمل ضمنها باقى لغات البرمجة وهل
    الدوت نت هى برامج دوت نت فريم ورك


    الإجابة :

    [​IMG]

    الإستفسار الثاني :

    بالنسبة لمن يريد تعلم هذه اللغة (الدوت نت) يتعلم على اى اصدار من لغة الفيجول بيزك؟


    الإجابة :



    [​IMG]

    الإستفسار الثالث :

    ماهي تعليمات اللغة الوسيطة ( IL ) المذكور بأول الموضوع


    الإجابة :

    دورة الهندسة العكسية || كسر تطبيقات الدوت نت [2:1] نبذة عن اللغة الوسيطة (IL) وتعليماتها

     
    آخر تعديل: ‏أغسطس 20, 2015
    SkY MaRvEL ،prooonet ،MaKoOo و 8آخرون معجبون بهذا.
  3. kimo7

    kimo7 زيزوومي ذهبي

    إنضم إلينا في:
    ‏ابريل 9, 2014
    المشاركات:
    1,728
    الإعجابات المتلقاة:
    6,496
    نقاط الجائزة:
    1,070
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows8.1
    استاذ مشاء الله عليك .
     
    qysr, m0d!s@r7@n, White Man و 1 شخص آخر معجبون بهذا.
  4. nasa3

    nasa3 زيزوومي ذهبي

    إنضم إلينا في:
    ‏مارس 19, 2014
    المشاركات:
    2,540
    الإعجابات المتلقاة:
    8,390
    نقاط الجائزة:
    1,030
    الإقامة:
    مصر
    برامج الحماية:
    ESET
    نظام التشغيل:
    Windows8.1
    بسم الله مشاء الله
    احسنتم وبارك الله فيكم
    موضوع ممتاز

    عندى استفسار
    هل الدوت نت لغة برمجة مستقلة مثلها مثل Visual Basic
    ام انها بيئة تشغيلية تعمل ضمنها باقى لغات البرمجة وهل
    الدوت نت هى برامج دوت نت فريم ورك
     
    m0d!s@r7@n ،SkY MaRvEL ،qysr و 4آخرون معجبون بهذا.
  5. MagicianMiDo32

    MagicianMiDo32 زيزوومي VIP

    إنضم إلينا في:
    ‏ابريل 29, 2012
    المشاركات:
    8,492
    الإعجابات المتلقاة:
    25,435
    نقاط الجائزة:
    1,220
    الإقامة:
    عندي كهف ساكن فيه
    برامج الحماية:
    TrustPort
    نظام التشغيل:
    Linux
    بارك الله فيكم ياشباب على الأنطلاقة القوية
    بإذن الله ستكون هذة الدورة من أروع الدورات في المنتديات العربية
    وأنصح الشباب بالتفاعل وطرح الأسئلة والأهم قبل ذلك هو البحث في الإنترنت والمواقع العربية والأجنبية عن إي معلومات جديدة ويمكنهم تبسيطها أمامنا
    وبالتالي نتبادل معلومات شاملة عن اللغة دون بذل مجهود كبير
    ود ,
     
    m0d!s@r7@n ،SkY MaRvEL ،qysr و 4آخرون معجبون بهذا.
  6. marwan508

    marwan508 زيزوومي مبدع

    إنضم إلينا في:
    ‏يوليو 18, 2014
    المشاركات:
    552
    الإعجابات المتلقاة:
    691
    نقاط الجائزة:
    620
    برامج الحماية:
    اخرى
    نظام التشغيل:
    أخرى
    موضع رائع وشرح بسيط وسهل

    اشكر كل من سيساهم في نجاح هذه الدوره

    وبارك الله فيكم
     
    White Man ،m0d!s@r7@n ،qysr و 2آخرون معجبون بهذا.
  7. MagicianMiDo32

    MagicianMiDo32 زيزوومي VIP

    إنضم إلينا في:
    ‏ابريل 29, 2012
    المشاركات:
    8,492
    الإعجابات المتلقاة:
    25,435
    نقاط الجائزة:
    1,220
    الإقامة:
    عندي كهف ساكن فيه
    برامج الحماية:
    TrustPort
    نظام التشغيل:
    Linux
    بعد إذن أخي عمرو

    لغة Visual basic.net مختلفة إختلافا كاملا عن لغة Visual basic 6 بل هي لاتشبها في إي شيئ إطلاقا سوى طريقة كتابة الأكواد
    وذلك لأن مايكروسوفت أرادت إلغاء دعم لغة visual basic 6 لطرح لغة البرمجة الجديدة C# لكنها في نفس الوقت لم ترد أن تستغني عن آلاف من مبرمجي Visual basic 6
    لذلك حورت لغة visual C#.net الى لغة Visual basic .net لتتم كتابة الأكواد بطريقة الـ Visual Basic 6
    لكن في الأصل لغة C# ولغة Visual basic .net ما هما إلا وجهان لعملة واحدة فكلاهما يتم ترجمتهما اللى لغة مايكروسوفت الوسيطة IL ليقوم بعد ذلك أطار عمل >net Frame Work بتشغيلها
    لذلك فإن التطبيقات المبرمجة بالفيجوال بيسيك دوت نيت لا تعمل دون وجود إطار عمل >net Frame work على عكس تطبيقات Visual Basic 6 التي تعمل ذاتيا دون الحاجة الى إي من برامج التشغيل

    والتي شرحها أخونا بلاك

    يعني سواء أكتبت البرنامج بالسي شار أو بالدوت نيت فالناتج واحد
    لولا ان السي شارب تتفوق في بعض النواحي مثل دعم المكتبات والدوال بشكل أكبر من لغة الفيجوال بيسيك دوت نيت
    لذلك عندما نبرمج ملف بالدوت نيت يمكن تنقيحه باستخدام برنامج .Net Reflector يمكن عرض أكواد الملف بلغة Visual basic .net أو C# مهما كانت لغة برمجته
    المهم أن تكون لغة .net


    الخلاصة لغة Visual Basic.net ليست مستقلة بحد ذاتها فهي جزء من منصة عمل Visual Studio.net والذي يحتوي على لغات أخرى مثل C#.net وغيرها




    ,
     
    SkY MaRvEL ،qysr ،prooonet و 7آخرون معجبون بهذا.
  8. أبو رمش

    أبو رمش .: خبير نقاشات الحماية :. نجم المنتدى

    إنضم إلينا في:
    ‏مايو 31, 2008
    المشاركات:
    5,375
    الإعجابات المتلقاة:
    25,246
    نقاط الجائزة:
    1,245
    برامج الحماية:
    Bitdefender
    نظام التشغيل:
    Windows XP
    ألف شكر لك أخي مصطفى على هذا الشرح و الطرح المتميز .....
     
    m0d!s@r7@n ،qysr ،prooonet و 5آخرون معجبون بهذا.
  9. black007

    black007 مراقب عام (خبير فحص ملفات) طاقم الإدارة فريق فحص زيزووم للحماية نجم الشهر المراقب العام المميز

    إنضم إلينا في:
    ‏يونيو 17, 2013
    المشاركات:
    4,098
    الإعجابات المتلقاة:
    21,895
    نقاط الجائزة:
    1,345
    الإقامة:
    Egypt
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows 7

    اهلا بك اخى ناسا
    للاجابه على استفسارك ستجد اجابته فى اول الموضوع

    هذه الجزئيه تحديدا

    تعتمد لغات البرمجة مثل ++C و Visual Basic على مترجم خاص (Compiler)
    وظیفته تحویل الشفرة المصدریة (Source) إلى ملفات تنفیذیة (Executable files)
    و لتشغیل ھذه الملفات نحتاج إلى بیئة تشغیل (Runtime) خاص باللغة البرمجیة التي أنتجتھا
    وھذه البیئة تختلف باختلاف نوع اللغة البرمجیة المستخدمة في برمجة الملف .


    لغه الفيجول بيزك دوت نت هى تطوير للغه البيزك القديمه
    ولقد تم تطويرها من ميكروسوفت فكما قلنا ان كل لغه تحتاج الى مترجم خاص بها لكى يقوم بتحويل الشفرة المصدریة (Source) إلى ملفات تنفیذیة (Executable files)
    و لتشغیل ھذه الملفات نحتاج إلى بیئة تشغیل (Runtime) خاص باللغة البرمجیة التي أنتجتھا
    وھذه البیئة تختلف باختلاف نوع اللغة البرمجیة المستخدمة في برمجة الملف .

    اى بمعنى اصح ان لغه البيزك دوت نت تعتمد على مكتبه الدوت نت فيرم ورك لكى تقوم بترجمه الشفره المصدريه
    لكى يستطيع النظام ان يفهمها بدون الحاجه الى تحولات اخرى
     
    qysr ،ocab ،prooonet و 7آخرون معجبون بهذا.
  10. Pro Gaming Network

    Pro Gaming Network زيزوومي جديد

    إنضم إلينا في:
    ‏يوليو 17, 2015
    المشاركات:
    16
    الإعجابات المتلقاة:
    9
    نقاط الجائزة:
    20
    برامج الحماية:
    Total Defense Internet Security Suite
    نظام التشغيل:
    Linux
    شكرا
     
    m0d!s@r7@n ،qysr و White Man معجبون بهذا.
  11. mha1m

    mha1m زيزوومي VIP

    إنضم إلينا في:
    ‏يوليو 21, 2012
    المشاركات:
    3,239
    الإعجابات المتلقاة:
    7,985
    نقاط الجائزة:
    1,275
    برامج الحماية:
    BullGuard
    نظام التشغيل:
    Windows 7
    شكر خاص للاخ مصطفى و كل من ساهم في الطرح
    بداية موفقة ومعلومات ثرية:moneybag::moneybag:
    بساطة في الشرح (y)(y)
    لحد الان كل شيء مفهوم(y)
    في انتظار باقي دروس السلسلة الشيقة:runner:
     
    nasa3 ،m0d!s@r7@n ،qysr و 2آخرون معجبون بهذا.
  12. Ahmed_Albosife

    Ahmed_Albosife زيزوومي محترف

    إنضم إلينا في:
    ‏سبتمبر 19, 2014
    المشاركات:
    490
    الإعجابات المتلقاة:
    2,201
    نقاط الجائزة:
    770
    الإقامة:
    طرابلس
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows 7
    السلام عليكم ورحمة الله
    مشاء الله تبارك الله
    شرح مميز اخي مصطفي
    الي حد الان ليس لدي اي استفسار
    كل شي واضح ان شاء الله
     
    qysr, MagicianMiDo32, m0d!s@r7@n و 1 شخص آخر معجبون بهذا.
  13. black007

    black007 مراقب عام (خبير فحص ملفات) طاقم الإدارة فريق فحص زيزووم للحماية نجم الشهر المراقب العام المميز

    إنضم إلينا في:
    ‏يونيو 17, 2013
    المشاركات:
    4,098
    الإعجابات المتلقاة:
    21,895
    نقاط الجائزة:
    1,345
    الإقامة:
    Egypt
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows 7
    اتمنى ان تحوز الدوره على رضاكم اخوانى

    واذا فى اى شى صعب على اى احد فهمه فليتفضل بطرحه وان شاء الله سنجيبه

    للتنويه الدوره مشتركه بينى وبين كل من

    دكتور فتحى @m0d!s@r7@n

    اخى الصغير @White Man

    ومنى شخصيا

    ولست وحدى فيها فالشكر موصول لهم قبلى

    وايضا لا انسى ابدا ان اشكر مبدعنا الاخ @AL-EMBRATOR لتصميمه لفواصل الدوره

    املين ان شاء الله ان تحوز الدوره على رضاكم ان شاء الله
     
    MagicianMiDo32 ،qysr ،White Man و 3آخرون معجبون بهذا.
  14. nasa3

    nasa3 زيزوومي ذهبي

    إنضم إلينا في:
    ‏مارس 19, 2014
    المشاركات:
    2,540
    الإعجابات المتلقاة:
    8,390
    نقاط الجائزة:
    1,030
    الإقامة:
    مصر
    برامج الحماية:
    ESET
    نظام التشغيل:
    Windows8.1
    شكرا يا غالى على التوضيح

    بالنسبة لمن يريد تعلم هذه اللغة يتعلم على اى اصدار من لغة الفيجول بيزك؟​
     
    White Man, qysr, MagicianMiDo32 و 1 شخص آخر معجبون بهذا.
  15. Ramy Fayed

    Ramy Fayed زيزوومي ذهبي

    إنضم إلينا في:
    ‏نوفمبر 17, 2012
    المشاركات:
    1,364
    الإعجابات المتلقاة:
    1,607
    نقاط الجائزة:
    1,035
    الإقامة:
    Egypt
    برامج الحماية:
    ESET
    نظام التشغيل:
    Windows 10
    شكرا جزيلا على الشرح الرائع
     
    MagicianMiDo32 ،qysr ،White Man و 2آخرون معجبون بهذا.
  16. black007

    black007 مراقب عام (خبير فحص ملفات) طاقم الإدارة فريق فحص زيزووم للحماية نجم الشهر المراقب العام المميز

    إنضم إلينا في:
    ‏يونيو 17, 2013
    المشاركات:
    4,098
    الإعجابات المتلقاة:
    21,895
    نقاط الجائزة:
    1,345
    الإقامة:
    Egypt
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows 7
    فيجول بيزك دوت نت واختصارها

    VB.NET

    يكفيك فقط اكتب فى جوجل او يوتيوب ( دوره تعليم VB.NET ) وستخرج لك الاف النتائج

    بالنسبه للمنصه التى ستبرمج عليها

    فاى اصدار فيجول استديو ابتداء من 2008 حتى 2013 او 2015 الى نزل مؤخرا طبعا باختلاف النسخه بين express او professional او ultimate

    لان منصه الفيجول استديو تتحي لك العمل باى لغه انت تحبها VB.Net او #C او ++C

    على حسب اللغه التى تعلمتها

    بالتوفيق
     
    MagicianMiDo32 ،qysr ،White Man و 3آخرون معجبون بهذا.
  17. ضياء نورالدين

    ضياء نورالدين زيزوومي VIP نجم المنتدى نجم الشهر

    إنضم إلينا في:
    ‏فبراير 10, 2012
    المشاركات:
    4,400
    الإعجابات المتلقاة:
    6,485
    نقاط الجائزة:
    1,525
    برامج الحماية:
    اخرى
    نظام التشغيل:
    أخرى
    جزاكم الله خيراً في كل ماتقدمونه
    وجعله الله في موازين حسناتكم جميعاً
    استفسار ..
    ماهي تعليمات اللغة الوسيطة ( IL ) المذكور بأول الموضوع
    تقديري لكم
     
    White Man, qysr, MagicianMiDo32 و 1 شخص آخر معجبون بهذا.
  18. m0d!s@r7@n

    m0d!s@r7@n عضو شرف نجم المنتدى

    إنضم إلينا في:
    ‏مارس 24, 2013
    المشاركات:
    3,444
    الإعجابات المتلقاة:
    15,422
    نقاط الجائزة:
    1,220
    الإقامة:
    مصر
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows 8
    الدرس القادم باذن الله هو عن هذه اللغه الوسيطه وتعليماتها
     
    qysr ،White Man ،الزعيم الأول و 3آخرون معجبون بهذا.
  19. SkY MaRvEL

    SkY MaRvEL زيزوومي VIP

    إنضم إلينا في:
    ‏يوليو 25, 2013
    المشاركات:
    5,014
    الإعجابات المتلقاة:
    16,022
    نقاط الجائزة:
    1,220
    الإقامة:
    بغداد
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows 10
    بارك الله فيكم اخواني
    لي عودة لقراءة الدرس جيدا ان شاء الله
     
    White Man, MagicianMiDo32, m0d!s@r7@n و 1 شخص آخر معجبون بهذا.
  20. mohamed gouch

    mohamed gouch زيزوومي محترف

    إنضم إلينا في:
    ‏ديسمبر 26, 2014
    المشاركات:
    841
    الإعجابات المتلقاة:
    3,106
    نقاط الجائزة:
    780
    الإقامة:
    Las Vegas, Nevada
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows8.1
    درس رائع أستاذنا مصطفى ومعلومات مهمة وإن شاء الله ننتظر إستكمال الدورة ;222);222)
     
    White Man و m0d!s@r7@n معجبون بهذا.
حالة الموضوع:
مغلق

مشاركة هذه الصفحة

جاري تحميل الصفحة...