فيديو: أساسيات البرمجة بلغة Ruby
شرح فيديو يوضح المفاهيم الأساسية في البرمجة بلغة روبي. الشرح موجه ليكون مدخل للهاكرز ومختبري الاختراق الى عالم البرمجة وهو بداية لسلسة شروحات فيديو عن لغة Ruby سيتم نشرهم في iSecur1ty ليتمكن المتابعين بالنهاية من برمجة وتطوير أدواتهم الخاصة بأنفسهم.
الفيديو:
مدة الشرح 50 دقيقة تقريباً ولسبب ما قد تسبق الصورة الصوت بضعة ثوان في بعض الأجزاء, لا يوجد تأثير كبير والشرح سيكون مفهوم ان شاء الله بقليل من التركيز وسأحاول تلافي ذلك في الشروحات القادمة. إن وجد أي خطأ بالشرح أو احدى العبارات أتمنى ذكر ذلك بالتعليقات فالشرح طويل نوعا ما وقمت به بشكل ارتجالي دون تحضير مسبق أو إعادة تنسيق!
روابط قد تفيدك:
- من مدونتي: كتب ومصادر لتعلم لغة روبي
- موقع لغة روبي: Ruby Programming Language
- توثيق لغة روبي: Ruby Doc
- موقع RVM : Ruby Version Manager
يفضّل إستخدام موقع code.isecur1ty.org لمشاركة أي أكواد لكي تظهر ملونة وبالاتجاه الصحيح عوضا عن كتابتها بالتعليقات. يمكن الاكتفاء بذكر رقم الكود فقط بهذا الشكل: #1
أي أسئلة أو اضافات مرحب بها طبعاً.
عن الكاتب:
عبدالمهيمن الآغا, مؤسس iSecur1ty، مختص بالحماية وأساليب إختبار الإختراق. أملك خبرة في إدارة الشبكات والسيرفرات, تطوير المواقع والبرمجة بلغة Ruby التي برمجت بها عدّة مشاريع وأدوات مفتوحة المصدر.
هاهو رابط الدورة لي تعلمت منها ادا ما في اشكال
http://www.startimes.com/f.aspx?t=26518823&pg=1
وانصح بهدا المحرر للبرمجة بلغة الروبي
http://www.jetbrains.com/ruby/
شكرا يا غالي على الدرس الممتاز وياريت ان تكون الدروس التالية متقاربة حتى نطبق
كل شي اول بأول .
ملاحظة صوتك حلو يا عبدالمهيمن ولهجتك السورية مية على مية بتذكرني بماما (:
اخوك من الاردن.
مشكور اخي عبد المهيمن لغة روبي رائعة
تسلم اخي عبد المهيمن في انتضار باقي الدروس
Ruby
ام
Python
حيث اني بدأت في تعلم Python
ولكن تواجهني بعض الصعوبات في كتابة
Exploit
وكنت افكر في الانتقال للغة اخر (ليست طبعا Perl
(
فهل Ruby جيدة
وبنتظار السلسلة وهلا بدي حملوا لانوا عنا بسوريا الانترنت بطيئ
شكرا جزيلا
اخي عبد المهيمن اعملو تدعيم للتحميل ب idm
كل فديوهات لا تريد تتحمل
جزاك الله خيرا انا تعلمت الاساسايات قبل نريد تحميل الفديو هدا
thirteen: والله بالنسبه لكتابة ال exploits ممكن تستخدم اى لغة
انما علشان تكتب واحده و تضيفها لل msf لازم ruby
ولكن تواجهني بعض الصعوبات في كتابة Exploit : انت ممكن تعمل موضوع فى الحاجات اللى واقفه معاك و نحاول نساعدك 🙂
شرح جميل جداً ، وهذه هي الشروح المفيده في البرمجة لانها تحتوي على امثله عملية .
وخصوصاً لمن تعلم البرمجة سابقاً وعرف ماهي المتغيرات والاف الشرطيه والحلقات .
شكراً لك اخي عبدالمهيمن ونحن بـ انتظارك
استخدام sockets ومكتبة http حيتطلب كتابة اكواد وتوضيح اكثر سأقوم بهم بشروحات قادمة ان شاء الله وسأخصص فيديو لذلك. مكتبة open-uri تعتمد في عملها على المكتبات السابقة وهي كافية للمثال الذي وضحته فأنا لم ارد ان اتطرق لامور متقدمة من اول شرح.
بخصوص المكتبات فسؤلك عام جداً 🙂 الموجودة بأساس لغة روبي تستخدم حسب الحاجة. اما المكتبات الاضافية عن طريق ruby gems يوجد لديك موقع ruby-toolbox.com ممتاز جداً للتعرف عليهم.
abdellatef
لا مشكلة في تحميل الفيديو ببرنامج idm ..
لقد حملته و لا مشكله به ..
يبدو أن المشكلة من عندك ..
==============================
شكراً لك يا عبد المهيمن فقد انتظرنا هذه الدروس طويلاً جداً
@abdellatef: شكراً على الاضافة.. لم أكن أعلم بوجود هذه الشروحات ولا تقلق الشروحات القادمة ستكون مختلفة 😉 بالنسبة لبيئة التطوير التي وضعتها فهي غير مجانية. حالياً أنصح الاكتفاء بمحرر نصوص مثل gedit أو kate في لينكس و Notepad++ في ويندوز.
@FATHY ALQISY: ابقى مركز على الشرح وخليك من صوتي D: وان شاء الله سيكون في شرح جديد كل بضعة ايام.
@thirteen: أحمد ممكن يساعدك في بايثون.. أهم شيء اثبت على لغة واحدة ولا تبقى تنتقل من لغة لأخرى. طبيعي تواجه مشاكل لكن الحل انك تبحث وتجرب مو تقول السبب لغة البرمجة وتغيرها 😉
شكرا لك اخي على الشرح فرصة جيدة لتعلم لغة برمجة اخرى سوف اكون متابع الدروس الى الاخر ان شاء الله
سلام
حاءت في الوقت المناسب عبدو جزاك الله خيرا …
الاساسيات موجودة .. ماهي الكتبات الاكثر استعمال في روبي ؟؟ لماذا لم تستعمل socket lib ؟
شكرا على هالموضوع الجميل
لاكن عندي سؤال اذا مافي مشكلة
مثلا اريد اكت برنامج لادخال يزور وباسورد
طيب كيف اكدر اطبع مرتين يعني مثلا
print ” enter your username :” g
اذا كان اليوزر admin يذهب الى
طلب الباسورد او هكذا
ياريت تكتبلي سورس من هذا القبيل
وسؤال ثاني اذا ما في ازعاج
اكدر اعمل مثل لغة باسكال
يعني مثلا اذا تحقق هذا الشرط اذهب الى السطر
معين
وشكرا وارجو اني ما اكون ازعجتك
ههه ليس tcpflow كنت اقصد tcpsocket …
شكرا عبدو على التفاعل … socket lib من اجل كتابة exploit بعيدا ؟؟ قرات على السريع ان socket في روبي نوعان tcpflow و اخؤى لا اذكرها ؟؟
اقصد كتابة exploit في حل من msf
بارك الله فيك أخي على الشرح
نحتاج لدورات متقدمة لاستخدام الـ Python في الـ Pentest.
الصعوبات التي اواجها في بايتون غريبة جدا
كنت احاول كتابة استغلال
csrf
معتمدا علي
sockets
ولكن الشئ الغريب ان الاستغلال يحضر
الرد من الموقع اذا كان مكتوب بالانجليزية فقط
جربت حلول كثيرة ولكنها فشلت تماما
و ما يضايقني ايضا مع ان المسافات وطريقة الكتابة مقدسة في بايثون الا انها تتغير من اصدار لاخر
مثال في الاصدارات الحديثة
print (‘hello world’)
الاصدارات القديمة
print ’hello world’
وهكذا
مما يجعل من الصعب البحث عن حلول تتوافق مع الاصدار الذي تستخدمه
هذا لان معظم المبرمجين يستخدمون اللغة القديمة قبل التعديلات
كنت اعتمد علي php
في كتابة الاستغلال ولكني الان اريد ان انتقل الي لغة اكثر احترافية
http://code.isecur1ty.org/88
طبعا هذا ليس افضل حل، لكن تفاديا للتعقيد كتبته بهذه الطريقه.. سأوضح بشروحات قادمة كيف يمكن ترتيب وتقسيم الكود لأجزاء لنتمكن من استخدامه باماكن مختلفة في البرنامج وبشكل اجمل.
استخدام goto line من أسوء عادات البرمجة وأتذكره عندما تعاملت مع Visual Basic في عصور الجاهلية D: لانه سيسبب مشاكل صعب اكتشافها ويجعل الكود سيء جداً. روبي لغة مرتبة وهي كائنية التوجيه object oriented.. أمر لم أتطرق اليه بعد ومتعلق بهندسة البرمجيات وهذا ليس هدف هذه السلسة، ان كنت مهتماً:
https://secure.wikimedia.org/wikipedia/en/wiki/Object-oriented_programming
بارك الله فيك يا اخى الكريم عبد المهيمن
مش جديده عليك دائما تدهشنا بشروحاتك :-*
و لكن لى سؤال هل هذه السلسله سوف تكون كما قولت فى بدايه الفيديو انها لمختبر الاختراق
ام انك سوف تبدأ من الصفر الى الاحتراف ( كما يقال دائما 😀 ) ;
سؤال اخى هل من الممكن ان احاول ان اقدم مساعده بخصوص بايثون او فى روبى ،
ام يوجد فى احد فى الفريق يعمل على هذا ؟.
دمتم بود
تحياتى / خالد عمر
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
@youness: ما علاقة اداة tcpflow بلغة روبي؟ افضل طريقة لكتابة الثغرات في روبي هي مشروع ميتاسبلويت بلا شك بالاعتماد على المكتبات التي يوفرها. اطلع على سورس كود بعض الثغرات وسترى امثلة حقيقية.
@خالد عمر: أجل فأغلب التطبيق سيكون على سكريبتات وبرامج تستخدم باختبار الاختراق. لا هذه الشروحات لن تجعلك محترف بل هي بداية طريق وتعريف باللغة فقط.. الاحتراف يأتي من البحث والممارسة الطويلة وليس بمشاهدة الشروحات أو القراءة. اذا اردت المساهمة فيمكنك ذلك طبعاً 🙂
مشكورر اخي عبدو على بداية السلسلة وفرصة اكثرمن رائعة لتعلم لغة روبي
في انتظار المزيد من الشروحات
بداية أشكرك أخي عبد المهميمن على الشرح المميز
أخي abdellatef يمكن تحميل الفيديو من الموقع بواسطة برنامج idm
وأنا حاليا أقوم بتحميل الفيديو بهذا البرنامج
وإذا كنت متأكدا من صحة اعدات البرنامج الخاصة بهذا الأمر
فقط تأكد من إدراج الإمتداد FLV في أنواع الملفات الخاصة بالبرنامج
السلام عليكم
اخى عبد المهيمن ان اواجه مشكلة مع code.isecur1ty احاول الدخول بنفس الاميل الى مسجل به فى الموقع ولكن بدون جدوى وكداك لعبة التحدي هل هي مقتصرة على بعض الاعضاء ام مادا
شكرا
بارك الله فيك أخي عبد على هذه الخطوة الأكثر من رائعة
وأتمنى منك أن تكمل السلسلة وأن تكون دورة شاملة
وشكرا لك مرة أخرى
أرسل التفاصيل لايميل الموقع لأرى ما يمكن فعله.. لم أتابع أي منهم من مدة طويلة
متى سيتم طرح الفيديو التالي؟
اذا أمكن عمل سلسلة من الCDs يكون ممتاز
أشكرك جداااااااااااااا
اليوم ان شاء الله
السلام عليكم
تمام اخى تم ارسال التفاصيل الاى الاميل الخاص بالموقع شكرا اخي على تجاوبكم
مع فائق الاحترام والتقدير
مشكور اخي عبدالمهيمن على تعليمنا هذه اللغة الجميله .. التي كنت اتمنى من قبل فتره ان اتعلمها ولكن لم اكن اعلم كيف ابداء 🙂
على العموم قبل يومين لقيت هذه المدونه للغة روبي بالعربيه ..
قد يستفيد منها البعض هنا ..
http://ruby-arabic.blogspot.com/
تقبل تقديري
اخوك
فايروول
.
السلام عليكم ورحمة الله وبركاته
هل الدورة انتهت ؟؟
بارك الله فيك اخي