دورة البرمجة بلغة Rubyشروحات الفيديو

فيديو: أساسيات البرمجة بلغة Ruby

تم أرشفة هذا المحتوى


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

 

الفيديو:

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

 

روابط قد تفيدك:

 

يفضّل إستخدام موقع code.isecur1ty.org لمشاركة أي أكواد لكي تظهر ملونة وبالاتجاه الصحيح عوضا عن كتابتها بالتعليقات. يمكن الاكتفاء بذكر رقم الكود فقط بهذا الشكل: #1

 

أي أسئلة أو اضافات مرحب بها طبعاً.

عن الكاتب:


عبدالمهيمن الآغا, مؤسس iSecur1ty، مختص بالحماية وأساليب إختبار الإختراق. أملك خبرة في إدارة الشبكات والسيرفرات, تطوير المواقع والبرمجة بلغة Ruby التي برمجت بها عدّة مشاريع وأدوات مفتوحة المصدر.

‫35 تعليقات

  1. شكرا يا غالي على الدرس الممتاز وياريت ان تكون الدروس التالية متقاربة حتى نطبق
    كل شي اول بأول .

    ملاحظة صوتك حلو يا عبدالمهيمن ولهجتك السورية مية على مية بتذكرني بماما (:
    اخوك من الاردن.

  2. Ruby
    ام
    Python
    حيث اني بدأت في تعلم Python
    ولكن تواجهني بعض الصعوبات في كتابة
    Exploit
    وكنت افكر في الانتقال للغة اخر (ليست طبعا ‎Perl
    (
    فهل Ruby ‎‏ جيدة

  3. اخي عبد المهيمن اعملو تدعيم للتحميل ب idm
    كل فديوهات لا تريد تتحمل
    جزاك الله خيرا انا تعلمت الاساسايات قبل نريد تحميل الفديو هدا

  4. thirteen: والله بالنسبه لكتابة ال exploits ممكن تستخدم اى لغة
    انما علشان تكتب واحده و تضيفها لل msf لازم ruby

    ولكن تواجهني بعض الصعوبات في كتابة Exploit : انت ممكن تعمل موضوع فى الحاجات اللى واقفه معاك و نحاول نساعدك 🙂

  5. شرح جميل جداً ، وهذه هي الشروح المفيده في البرمجة لانها تحتوي على امثله عملية .

    وخصوصاً لمن تعلم البرمجة سابقاً وعرف ماهي المتغيرات والاف الشرطيه والحلقات .

    شكراً لك اخي عبدالمهيمن ونحن بـ انتظارك

  6. استخدام sockets ومكتبة http حيتطلب كتابة اكواد وتوضيح اكثر سأقوم بهم بشروحات قادمة ان شاء الله وسأخصص فيديو لذلك. مكتبة open-uri تعتمد في عملها على المكتبات السابقة وهي كافية للمثال الذي وضحته فأنا لم ارد ان اتطرق لامور متقدمة من اول شرح.

    بخصوص المكتبات فسؤلك عام جداً 🙂 الموجودة بأساس لغة روبي تستخدم حسب الحاجة. اما المكتبات الاضافية عن طريق ruby gems يوجد لديك موقع ruby-toolbox.com ممتاز جداً للتعرف عليهم.

  7. abdellatef
    لا مشكلة في تحميل الفيديو ببرنامج idm ..
    لقد حملته و لا مشكله به ..
    يبدو أن المشكلة من عندك ..
    ==============================
    شكراً لك يا عبد المهيمن فقد انتظرنا هذه الدروس طويلاً جداً

  8. @abdellatef: شكراً على الاضافة.. لم أكن أعلم بوجود هذه الشروحات ولا تقلق الشروحات القادمة ستكون مختلفة 😉 بالنسبة لبيئة التطوير التي وضعتها فهي غير مجانية. حالياً أنصح الاكتفاء بمحرر نصوص مثل gedit أو kate في لينكس و Notepad++ في ويندوز.

    @FATHY ALQISY: ابقى مركز على الشرح وخليك من صوتي D: وان شاء الله سيكون في شرح جديد كل بضعة ايام.

    @thirteen: أحمد ممكن يساعدك في بايثون.. أهم شيء اثبت على لغة واحدة ولا تبقى تنتقل من لغة لأخرى. طبيعي تواجه مشاكل لكن الحل انك تبحث وتجرب مو تقول السبب لغة البرمجة وتغيرها 😉

  9. شكرا لك اخي على الشرح فرصة جيدة لتعلم لغة برمجة اخرى سوف اكون متابع الدروس الى الاخر ان شاء الله
    سلام

  10. حاءت في الوقت المناسب عبدو جزاك الله خيرا …

    الاساسيات موجودة .. ماهي الكتبات الاكثر استعمال في روبي ؟؟ لماذا لم تستعمل socket lib ؟

  11. شكرا على هالموضوع الجميل
    لاكن عندي سؤال اذا مافي مشكلة
    مثلا اريد اكت برنامج لادخال يزور وباسورد
    طيب كيف اكدر اطبع مرتين يعني مثلا
    print ” enter your username :” g
    اذا كان اليوزر admin يذهب الى
    طلب الباسورد او هكذا
    ياريت تكتبلي سورس من هذا القبيل

    وسؤال ثاني اذا ما في ازعاج
    اكدر اعمل مثل لغة باسكال
    يعني مثلا اذا تحقق هذا الشرط اذهب الى السطر
    معين

    وشكرا وارجو اني ما اكون ازعجتك

  12. شكرا عبدو على التفاعل … socket lib من اجل كتابة exploit بعيدا ؟؟ قرات على السريع ان socket في روبي نوعان tcpflow و اخؤى لا اذكرها ؟؟
    اقصد كتابة exploit في حل من msf

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

    و ما يضايقني ايضا مع ان المسافات وطريقة الكتابة مقدسة في بايثون الا انها تتغير من اصدار لاخر
    مثال في الاصدارات الحديثة
    print‏ ‏(‘hello world’)
    الاصدارات القديمة
    print‏ ‏’hello world’
    وهكذا
    مما يجعل من الصعب البحث عن حلول تتوافق مع الاصدار الذي تستخدمه
    هذا لان معظم المبرمجين يستخدمون اللغة القديمة قبل التعديلات

    كنت اعتمد علي php
    في كتابة الاستغلال ولكني الان اريد ان انتقل الي لغة اكثر احترافية

  14. http://code.isecur1ty.org/88

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

    استخدام goto line من أسوء عادات البرمجة وأتذكره عندما تعاملت مع Visual Basic في عصور الجاهلية D: لانه سيسبب مشاكل صعب اكتشافها ويجعل الكود سيء جداً. روبي لغة مرتبة وهي كائنية التوجيه object oriented.. أمر لم أتطرق اليه بعد ومتعلق بهندسة البرمجيات وهذا ليس هدف هذه السلسة، ان كنت مهتماً:

    https://secure.wikimedia.org/wikipedia/en/wiki/Object-oriented_programming

  15. بارك الله فيك يا اخى الكريم عبد المهيمن
    مش جديده عليك دائما تدهشنا بشروحاتك :-*
    و لكن لى سؤال هل هذه السلسله سوف تكون كما قولت فى بدايه الفيديو انها لمختبر الاختراق
    ام انك سوف تبدأ من الصفر الى الاحتراف ( كما يقال دائما 😀 ) ;
    سؤال اخى هل من الممكن ان احاول ان اقدم مساعده بخصوص بايثون او فى روبى ،
    ام يوجد فى احد فى الفريق يعمل على هذا ؟.
    دمتم بود
    تحياتى / خالد عمر

  16. thirteen: لما تتعامل مع ال web-application استخدم مكتبة urllib, urllib2

    شوف الكود: http://code.isecur1ty.org/89

    – الاختلاف بسيط بين python 2.x و python 3.x

    مثلا فى python 3 لما نطبع لازم اقواس print (‘ Hello worl’)
    والاقواس مش شرط فى بايثون 2

    انا استخدم python 2.7

  17. @youness: ما علاقة اداة tcpflow بلغة روبي؟ افضل طريقة لكتابة الثغرات في روبي هي مشروع ميتاسبلويت بلا شك بالاعتماد على المكتبات التي يوفرها. اطلع على سورس كود بعض الثغرات وسترى امثلة حقيقية.

    @خالد عمر: أجل فأغلب التطبيق سيكون على سكريبتات وبرامج تستخدم باختبار الاختراق. لا هذه الشروحات لن تجعلك محترف بل هي بداية طريق وتعريف باللغة فقط.. الاحتراف يأتي من البحث والممارسة الطويلة وليس بمشاهدة الشروحات أو القراءة. اذا اردت المساهمة فيمكنك ذلك طبعاً 🙂

  18. مشكورر اخي عبدو على بداية السلسلة وفرصة اكثرمن رائعة لتعلم لغة روبي
    في انتظار المزيد من الشروحات

  19. بداية أشكرك أخي عبد المهميمن على الشرح المميز

    أخي abdellatef يمكن تحميل الفيديو من الموقع بواسطة برنامج idm

    وأنا حاليا أقوم بتحميل الفيديو بهذا البرنامج

    وإذا كنت متأكدا من صحة اعدات البرنامج الخاصة بهذا الأمر

    فقط تأكد من إدراج الإمتداد FLV في أنواع الملفات الخاصة بالبرنامج

  20. السلام عليكم
    اخى عبد المهيمن ان اواجه مشكلة مع code.isecur1ty احاول الدخول بنفس الاميل الى مسجل به فى الموقع ولكن بدون جدوى وكداك لعبة التحدي هل هي مقتصرة على بعض الاعضاء ام مادا
    شكرا

  21. بارك الله فيك أخي عبد على هذه الخطوة الأكثر من رائعة
    وأتمنى منك أن تكمل السلسلة وأن تكون دورة شاملة
    وشكرا لك مرة أخرى

  22. أرسل التفاصيل لايميل الموقع لأرى ما يمكن فعله.. لم أتابع أي منهم من مدة طويلة

  23. السلام عليكم

    تمام اخى تم ارسال التفاصيل الاى الاميل الخاص بالموقع شكرا اخي على تجاوبكم

    مع فائق الاحترام والتقدير

  24. مشكور اخي عبدالمهيمن على تعليمنا هذه اللغة الجميله .. التي كنت اتمنى من قبل فتره ان اتعلمها ولكن لم اكن اعلم كيف ابداء 🙂

    على العموم قبل يومين لقيت هذه المدونه للغة روبي بالعربيه ..

    قد يستفيد منها البعض هنا ..

    http://ruby-arabic.blogspot.com/

    تقبل تقديري

    اخوك
    فايروول
    .

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى