الأربعاء، 9 يناير 2019

مراجعة دورة PWK OSCP





مقدمة: مرحبا انا مؤيد الملطدرست هندسة البرمجيات في دمشق جامعة الهمك في سورياسأشارك معكم تجربتي في شهادة Offensive Security Certified Professional (OSCP) or PWK
لمن لا يعرف OSCP سوف اضع رابط من الويكيبيديا أسفل هذا المقال وسوف اكتفي بكتابة مقدمة بسيطة.


ملاحظة سوف يكون هذا المقال طويل لانه يوجد اشياء مفصلة قبل بدء في الشهادة والأشياء التي يجب ان تمتلكها.


OSCP هي واحدة من الشهادات التي تعتبر مدخل إلى مجال اختبار الاختراق أو Penetration test لكن لا بد أن يكون لديك خبرات سابقة في الشبكات والانظمة والبرمجة. PWK اختصار لـ Penetration Testing with Kali Linux.


أود شكر Offensive Security لـ الفرحة الكبيرة التي حققتها.


نبذة عن سبب الشهادة: لقد درست في دمشق جامعة الهمك هندسة برمجيات وتعلمت عديد من لغات البرمجة في المعاهد والكتب ومشاهدة الفيديوهات على الانترنت كان لدي شغف في البرمجة وتطبيقات الويب وكنت اريد ان اصبح مطورًا لتطبيقات الويب لكن بسبب الحرب في سوريا لم استطع التخرج وسافرت إلى أوروبا وقررت العمل لاني اذا قررت ان اكمل دراستي في الجامعة سوف يأخذ وقتاً طويلاً وبدأت بتقديم طلبات العمل كـ مبرمج ويب Java, backend developer, يوجد العديد من الفرص هنا لكن للأسف لا أملك شهادة تخرج استمريت على هذا الحال لمدة سنة لكن دون فائدة لم اعمل مع العلم لدي خبرة طويلة في هذا المجال في البرمجة والشبكات لكن يوجد جانب اني احب الـ low-level programming language مثل الـ assembly, C, من ثم فقدت الأمل هنا لا استطيع العمل بدون شهادة ولم استطيع دخول معهد لأن هذا سيكلف الكثير على سبيل المثال كورس Java Basic 5500€ في الحقيقة لا اريد لو أملك المال الكافي لاني امتلك بالفعل الخبرة والمعرفةتركت واتجهت إلى هوايتي المفضلة وهي الـ CTF كنت العب منذ 2016 وكنت استمتع كثيراً في تحديات الـ CTF حتى اني تعرفت على مجموعة في البلد المقيم بها واصبحنا نعد مسابقات CTF هنا تجد المجموعة https://metalab.at/



في الصيف تحديت نفسي في امتلاك جميع الصناديق على موقع https://hackthebox.eu/ وبالفعل تمكنت من ذلك يوجد العديد من الاجهزة متفاوتة الصعوبة لكن تمكنت منهابالمناسبة كان التحدي بيني وبين نفسي إن تمكنت ان امتلك كل الصناديق سوف اتقدم لشهادة OSCP كمكافأة لي في ذلك.





الأمور التي يجب معرفتها في هذا المجال: مثل أي مجال يوجد فروع كثيرة ومعقدة لن اتطرق لها في هذا المقال لكن سوف اشرح ماهي فقطكلنا نعلم أن أي شخص ينوي الدخول في IT-Security يجب عليه تعلم الشبكات والانظمة والبرمجة وكل هذه الامور كبيرا جداً وعميقا ايضاً على سبيل المثال الشبكات يوجد الكثير الكثير من البروتوكولات الاتصالات وكذلك الامر على الانظمة على سبيل المثال Window API أو linux man أو linux init, ايضاً في البرمجة يوجد الكثير من لغات البرمجة هذا معقد وكبير جداً لايمكن لاي شخص ان يعرف كل شيءلكن يمكنني ان اقول لك ما هي الأمور التي يجب أن تعرفها كي تبدأ مثل الشبكات يجب ان يكون عندك معرفة في بروتوكول TCP and UDP على الأقل في البرمجة من منظوري الشخصي يجب أن تفهم خوارزميات ويكون لديك خبرة في لغة و PHP وفي الانظمة يجب ان تتعمق في الـ linux and Windows.
ملاحظة "لن اضع اي دورة تدريبية عن أي شيء", يوجد Google يمكنك سؤاله لكن سوف اقول اني ادرس من الكتب أكثر بسبب اني احب القراءة ويوجد اشياء مفصلة أكثر.



كيف بدأت: يوجد العديد من مواقع التحديات ابتعد عن البحث في "how to be hacker" أو فحص المواقع الحقيقية الآن يوجد الكثير من الدورات التعليمية والمواقع على سبيل المثال HackerOne أو Vulnhub.
فكر مثل الهاكرفكر بعمق أكثر إن لم تعرف شيء اسال Google, صدقني لو كانت تعرف في الشبكات والانظمة والبرمجة لن يفيدك هذا فقط لماذا؟ بكل بساطة اقول لك لنفترض أنك تخرجت من الجامعة ك طبيب اسنان وليس لديك اي تجربة عملية في هذا المجال... لم تنجح صدقنياذاً اهم شيء هوة الممارسة ثم الممارسة يوجد مثل ألماني  يقول "Übung macht den Meister" الترجمة تقول الممارسة تخلق الخبرة.
واحدة من أفضل الأشياء Hackthebox موقع رهيب بكل معنى الكلمة اوصي بشدة تجربته يوجد العديد من الاجهزة متفاوتة الصعوبة والمعقدة قد يؤدي بك الحال إلى عدم الحل لكن دور أكثر ابحث اكثر يمكن أن تضطر إلى يومين لحل صندوق واحدوالشيء الجميل هناك أنه يوجد عديد من الاشخاص يمكن ان تصبح اصدقاء ويصبح منافسة بينك وبين صديقك من سوف يخترق اوليوجد العديد من اللاعبين اللطيفينبعد حل أي صندوق حاول أن تعرف كيف يمكنك ترقيع هذه الثغرة لانك سوف تعمل كـ خبير وليس كمجرماو اكتب سكربت يقوم بالاستغلال كي تمارس فن البرمجة.


كورس الدورة اثناء حل Hackthebox صرت اعمل في في أكشاك التصوير في فيينا مقابل يورو في الساعة بالإضافة إلى أني عملت في برمجة المواقع لاصدقاء لي في المانيا وكسبت المال من ذلك واشتريت الكورسالكورس عبارة عن 90 أو 60 أو 30 يوملقد طلبت 90 يوم لاني سألت في Google اكثر اجابة تقول 90 يوم لكن كان بالنسبة لي 90 كثيرة على العموم الكورس هوة عبارة عن كتاب PDF 380 صفحة وفيديو مدته ساعات بالإضافة إلى مختبرات للتدرب عليها.


يشرح الكتاب والفيديوأمور بسيطة وهيخدمات الكالي و برمجة الـ bash shell وأدوات مثل netcat و الـ wireshark وبعض البروتوكولات وادوات مثل Nmap و OpenVAS يوجد قسم جميل انا احبه هو Buffer OVerflow وبعض الطرق لنقل الملفات داخل أجهزة المخترقة والتمحور و اختراق تطبيقات الويب وفك تشفير الباسورد إلخ…
قرأت الكتاب وشاهدت الفيديو خلال أسبوع ثم بدأت في اختراق المختبرات اخترقت 40 مختبر في اول 20 يوم ثم انتهيت منهم جميعاً في 32 يوم اخترق كل المختبرات يوجد ايضاً شبكات مخفية كلها اخترقتها اصعبهم كان Humble , Pain , sufferance لكن تمكن منهم من خلال خبرتي في الـ Hackthebox, لكن لحظة يوجد أمامي 60 يوم!! ماذا افعل؟
في هذا الوقت بدات في كتابة تقارير عن المختبرات كنوع من التدريبلان قبل ان احصل على الدورة تقدمت بطلب عمل في شركة العمل كـ red team لكن تم رفض طلبي بسبب اني لم اكتب تقرير طيلة حياتي بالفعل لم يكن لدي اي خبرة عن كتابة التقارير لكن تعلمت وكتبت تقارير عن عدة مختبرات اخذت مثل هذا التصميم https://www.offensive-security.com/pwk-online/PWK-Example-Report-v1.pdf


"لا يمكنني ان اتكلم أي شيء عن الاجهزة في الامتحان"


الامتحانإلى هنا يوجد ايضاً تقريباً 28 يوم ثم قررت جدولة امتحاني في 20 ديسمبر قبل موعده الأصلي حيث شعرت اني انا جاهز رتبت الامور والسكربتات على حاسوبي في صباح الخميس تم ارسال رسالة لي تقول ان امتحاني بعد 15 دقيقة ويجب ان اتصل في الـ VPN كان امتحاني مراقب يعني يجب علي ان اصور سطح المكتب ويوجد كاميرا في المنزل تراقبني كي لا اغش في الامتحانكنت قلق جداً ومتوتر لكن باشرت في سماع الاغاني كي يتشتت تفكيري قليلاً عن الامتحان وأخذت نفس عميق ثم باشرت في الامتحان.
يوجد امامي 24 ساعة للاختراق هناك اجهزة واحد منهم لعمل Debugger في اول ساعة اخترقت جهازين 50 نقطة كان الأمر سريع جداً "من كثرة التدريبثم حصلت على جهاز 20 نقطة ثم 10 نقاط اخيراً يوجد فقط جهاز لديه 20 نقطة لكن أنا قد حققت النجاح ألا وهو 70 نقطة يمكنك النجاح والحصول على الشهادة قررت ان اترك اخر جهاز وأقوم بمراجعة لقطات الشاشة كي يساعدوني في كتابة التقرير تفقدت كل شيء ثم تناولت العشاء ونمت في صباح اليوم التالي بدأت في اخر جهاز قلت في نفسي لماذا لا احصل عليه بدأت في تعداد الجهاز لكن الوقت لم يسمح لي وكان يوجد الكثير من "حفر الأرانب": يقصد بها حفر لصيد الارانب او بمعنى اخر كثير من التمويه لكن لا تبدو كـ ثغرات والكثير من البورتات إلخ...
اكتفيت في 80 نقطة بالإضافة إلى نقاط هي على تقرير التدريبات خلال الكورس وهكذا حصلت على 85 نقطة من أصل 100.


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



نصائح عامة:  - مشروع Metasploit مشروع جد عظيم لكن انا  انصح بالابتعاد عنه قدر المستطاع لان في الامتحان لا يمكنك استخدامه سوى مرة واحدة فقط الفائدة من ذلك تتعلم كيف يتم استغلال هذه الثغرة يدوياً وتكسب خبرة اكثر.
لا تحاول تتجاهل أي شيء لم تفهمه اكتب على ورقة جميع نقاط ضعفك مثلا "sql" في وقت فراغك إذهب إلى google وتعلم اقرا عنها كي تتمكن منها.
نام جيداً قبل الامتحان يجب ان يكون لديك تركيز عالي جداً
هيئ حاسوبك بكل شيء تريده من أدوات





الخلاصةtry harder تجربة اكثر من رائعة اكتسبت الكثير من الخبرةوالكثير من فرص العمل.
مغامرة انصح بها بكل مهتم بأمن المعلومات



Offensive Security Certified Professional

 https://en.wikipedia.org/wiki/Offensive_Security_Certified_Professional



مواضيع ذات صلة

مراجعة دورة PWK OSCP
4/ 5
Oleh