Web Application Penetration Testing (WAPT)

مراجعة


نبذة عامة عن الدورة

تتمحور الدورة وشهادتها على تعزيز مهارات الفرد في مجال اختراق تطبيقات الويب بشكل خاص. 

حيث تستطيع تعلم أشهر الهجمات وطرق استغلال ثغرات الويب الشائعة يدويًا، بالإضافة الى التقنيات والأدوات.


تقوم الشركة بتوفير منهج تعليمي للتدريب الذاتي قبل دخول الاختبار، يتخلله دروس نظرية، مقاطع فيديو، وتدريب عملي. مع ذلك، تستطيع دخول الإختبار فورًا بدون الحاجة الى اخذ التدريب في حال أثبتت جاهزيتك من خلال معرفتك وخبرتك المسبقة في مجال اختراق الويب. 

رسوم الإختبار بدون التدريب = 400$ 

قد يختلف من وقت لوقت بالإضافة الى التخفيضات المستمرة”


اذا كنت مبتدئ ولم يسبق لك العمل سابقًا او تجربة التحديات المتعلقة باختراق الويب فلا تقلق، الدورة مناسبة لك ولكن احرص على الاشتراك في التدريب المقدم من eLearnSecurity.


باقات التدريب

أدناه، توضيح لأسعار الخطط الخاصة بمنهج الـ WAPT والمميزات لكل باقة.

علمًا بأنه يمكنك اضافة 299$ للحصول على امكانية وصول لا محدود للتدريب العملي (Labs).

BAREBONE

$999

✔️ وصول مدى الحياة للمنهج

✔️ دعم تقني عبر الإيميل

✖️ لا يحتوي على مقاطع الفيديو

✖️ لا يمكن تحميله بصيغة PDF

✖️ لا يمكن تحميل مقاطع الفيديو

✖️ لا يوجد تدريب عملي

✖️ لا يتضمنه الاختبار


FULL

$1,199

✔️ وصول مدى الحياة للمنهج

✔️ دعم تقني عبر الإيميل

✔️ يحتوي على مقاطع الفيديو

✖️ لا يمكن تحميله بصيغة PDF

✖️ لا يمكن تحميل مقاطع الفيديو

✔️ ٦٠ ساعة للتدريب العملي

✔️ يتضمنه الاختبار “مدة محددة وتاريخ انتهاء”


ELITE

$1,399

✔️ وصول مدى الحياة للمنهج

✔️ دعم تقني عبر الإيميل

✔️ يحتوي على مقاطع الفيديو

✔️ يمكن تحميله بصيغة PDF

✔️ يمكن تحميل مقاطع الفيديو

✔️ ١٢٠ ساعة للتدريب العملي

✔️ يتضمنه الاختبار “بدون مدة محددة”



محتوى التدريب

Module 1: Penetration Testing Process

 في هذا القسم سوف تتعلم أهم الاستراتيجيات المستخدمة في هذا المجال بالإضافة الى عملية كتابة التقرير الذي يعد من أهم مراحل اختبار الإختراق. 


Module 2: Introduction to Web Applications

هنا سوف تتعلم أهم مفاهيم تطبيقات الويب بشكل مُبسط، نبذة عن بروتوكول الـHTTP وطريقة عمله، عمليات التشفير المستخدمة من قِبل تطبيقات الويب، سياسة المصدر الأوحد (SOP)، ونظرة شاملة عن الـCookies والـSessions.


Module 3: Information Gathering

مرحلة تجميع المعلومات والبيانات هي من أهم المراحل التي يجب عملها مرارًا وتكرارًا، في هذا القسم سوف تتعلم طريقة تجميع أهم المعلومات منها: المواقع الفرعية للموقع المستهدف، الخدمات المستخدمة في الموقع، التطبيقات واطارات العمل المستخدمة، استخراج المصادر وغيرها.


Module 4: Cross-Site Scripting

كونها من أشهر الثغرات التي تستغل تطبيقات الويب، سوف تتعلم آلية استغلال هذه الثغرة وما هي أنواعها وكيفية استكشافها ومهاجمتها، في النهاية ستجد نصائح لطريقة حماية التطبيقات من هذه الثغرة.


Module 5: SQL Injection

في هذا القسم ايضًا، ستتعلم ثغرة شهيرة تقوم باستهداف قواعد البيانات في تطبيقات الويب، تمييزها بأنواعها واستكشافها وطريقة استغلالها يدويًا او عن طريق أداة sqlmap.


Module 6: Authentication and Authorization

المصادقة والتفويض من أهم آليات الحماية لتطبيقات الويب. مع ذلك، يوجد العديد من الثغرات التي يرجع سببها لضعف هذه الآليات وقلة كفائتها. في هذا القسم سوف تتعلم بعض هذه الثغرات وطريقة استغلالها من أجل سرقة بيانات دخول المستخدمين أو تجاوز هذه الآليات. 


Module 7: Session Security

هنا سوف تتعلم طريقة عمل الـSessions وما هي الهجمات الشائعة وكيفية الحماية منها.


Module 8: Flash

أدوبي فلاش هي تقنية تستخدم لإنشاء الفيديو والرسوم المتحركة وغيرها من المحتويات. ويمكن استخدام ملفات الفلاش بشكل مستقل أو تكون مضمنة في صفحات HTML. سوف تتعلم هنا أهم الأدوات المستخدمة للبحث عن الثغرات في ملفات الفلاش واستغلالها.


Module 9: HTML5

هنا ستتعلم أهم عناصر الـHTML5 وكيفية الإستفادة من ميزاتها لشن هجوم ناجح.


Module 10: File and Resource Attacks

قد يستغل بعض المخترقين الضعف الأمني في تطبيقات الويب للوصول الى النظام، يكون السبب في بعض الأحيان هو الوصول الغير المصرح لبعض الملفات والمصادر داخل النظام والتي تحتوي على بيانات حساسة. ستتعلم هنا أنواع الثغرات التي تستهدف الملفات في النظام وآلية الهجوم وأستخدام بعض الأدوات المساعدة. 


Module 11: Other Attacks

نظرة سريعة لبعض الثغرات الإضافية التي تستهدف تطبيقات الويب.


Module 12: Web Services

الغرض الرئيسي من استخدام خدمات الويب هو الحصول على بنية قابلة للتشغيل قادرة على توصيل أجهزة مختلفة وبرامج مختلفة معًا. ستتعلم هنا أهم وأشهر خدمات الويب المستخدمة بالإضافة الى الهجمات التي تستهدفها.


Module 13: XPath

هي لغة قياسية تستخدم للاستعلام والتنقل بين وثائق الـ XML وقواعد البيانات. ستتعلم هنا الفرق بينها وبين لغة الـ SQL. فهم جملها وطريقة استكشاف ثغراتها يدويًا.


Module 14: Penetration Testing Content Management Systems

الـ CMS هو تطبيق برمجي يمكن استخدامه لإدارة وإنشاء المحتوى الرقمي وتعديله. من أشهرها WordPress و Joomla، ستتعلم هنا طريقة التعامل مع الأنظمة المشابهة في حالة واجهتها وكيفية استكشاف الثغرات من خلالها.


Module 15: Penetration Testin NoSQL Databases

في الواقع، يتم استخدام قواعد بيانات NoSQL من قبل منظمات قوية في جميع أنحاء العالم. من أشهرها: Mongo, Couchbase وغيرها. ستتعلم هنا كيفية تحديد الثغرات يدويًا في قواعد بيانات NoSQL والتطبيقات التي تدعم NoSQL. بالإضافة الى استخدام بعض الأدوات لإكتشاف هذه الثغرات.


نبذة عن الإختبار

  1. بعد الإنتهاء من التدريب والضغط على زر بدء الإختبار، سوف تحصل على ملف VPN كما اعتدت ان تفعل مع كل تدريب عملي، وتغيير اعدادات الـDNS في جهازك.

  2. احرص على قراءة الشروط والـ Letter of Engagement بدقة قبل بدء الإختبار، ركز على النطاق المسموح لك ولا تقم بإختبار أي موقع ليس متضمن داخل النطاق المصرح لك به. 

  3. بعكس اختبار الـeJPT، هذا الإختبار لا يحتوي على اختيارات من متعدد او أي نوع من الأسئلة. عليك باختراق الهدف بنفسك ومحاولة ايجاد الثغرات ومن ثم تدوينها في التقرير النهائي وتسليمه.

  4. لا يوجد عدد معين للثغرات التي يجب عليك إيجادها ولا لطريقة الإختراق نفسها، تستطيع البدء والبحث من أي مكان.

  5. مدة الإختبار تنقسم لجزئين: ٧ أيام لإختراق الهدف (اختبار عملي)، ومن ثم ٧ أيام لكتابة التقرير. بمجمل ١٤ يوم للإختبار كامل. “سوف تُمنع من الوصول الى الموقع بعد اتمام الـ٧ أيام الأولى”.

  6. تستطيع استخدام اي اداة واي منهجية ترغب بها، طالما انك ستحصل على المطلوب. 

  7.  يمكنك تصفح الانترنت وفتح ملفات اثناء الاختبار لمراجعة معلوماتك.

  8. تستطيع إعادة الإختبار “Reset” وإعادة كل شيء لموضعه والبدء من جديد في حالة أتلفت بعض الأشياء ٣ مرات كحد أعلى في كل يوم”

  9. تستطيع الإنتهاء من الإختبار ورفع التقرير في أي وقت تشاء “لست ملزم على الإنتظار لوقت انتهاء الاختبار العملي”.


نصائح عند كتابة التقرير

كون التقرير يعتبر من أهم مراحل هذا الإختبار ومن أهم مراحل الإختراق بشكل عام. حيث أن علاقتك مع العميل كمختبر إختراق تنتهي بتقديمك التقرير له. 

قمت بعمل نموذج مشابه للتقرير الذي تم تقديمه في الإختبار متضمنًا المصادر التي تم الإعتماد عليها في كتابة تقريري. يمكنك مشاهدته من هنا

“هذا لا يعني بأن طريقتي صحيحة ١٠٠٪، يمكنك ترتيبه كما تراه مناسبًا”


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

لكنني سأذكر هنا أهم الأساسيات التي يُفضل عليك إتباعها عند كتابة تقرير هذا الإختبار:


ما هي هيكلة التقرير؟ 

يجب أن يحتوي التقرير على التصنيفات التالية: 

  1. صفحة الغلاف: اسمك، عنوان التقرير، تاريخه، المستهدف (الشركة او الموقع). 

  2. جدول المحتويات Table of Contents: قم بتضمينه بعد الإنتهاء من كتابة التقرير بشكل كامل.

  3. الملخص التنفيذي Executive Summary: يجب أن يحتوي على ملخص الشراكة بينك وبين العميل الذي طلب منك اجراء اختبار الإختراق وتقييم الثغرات، اكتب فيه مدة قيامك بعملية إختبار الإختراق "تاريخ البداية والنهاية” والنطاق المصرح لك. تستطيع كتابة المراحل التي مررت بها كتوضيح.

    غالبًا هذا الجزء يكون مقدم للمدراء في الجهة المراد اختبارها، سيكون اهتمامهم في الغالب على مدى التأثير على جهتهم، ما هي الإحتياجات لحماية المنشأة (من منظور الميزانيات المحتملة والوقت المستهلك).

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

    لا يتعدى كتابة الملخص التنفيذي أكثر من صفحتين أو ثلاث.

  4. تقرير الثغرات Vulnerability Report: هنا يكون التعمق في وصف الثغرات التي وجدتها والهجمات التي قمت باتباعها بالإضافة الى الأدلة وصور الإثبات.

    تستطيع كتابة تقرير الثغرات بطريقتين رئيسيتين: 

    • اذا كانت لديك ثغرات مختلفة كثيرة ومواقع قليلة، قم بكتابة التقرير بذكر كل ثغرة على حدة يتضمنها قائمة بالمواقع المصابة “Vulnerabilities by type”.

    • اذا كانت لديك مواقع كثيرة وكل موقع مصاب بأكثر من ثغرة، قم بكتابة التقرير بذكر كل موقع على حدة ويتضمنه قائمة بالثغرات التي تم استغلالها “Vulnerabilities by target”.

    عند ذكر اسم الثغرة، لا تنسى ذكر ما يلي واحرص على اختيار مصدر واحد للإعتماد عليه:

    • وصف لهذه الثغرة “Description” (يكون الوصف مأخوذ من مصدر معتمد).

    • درجة خطورة الثغرة “Severity - Impact”.

    • رقم تعريف للثغرة وتستطيع الحصول عليه من أكثر من مصدر معتمد.

    • مصدر التصنيف الذي اعتمدته، مثل: OWASP, CWE.. الخ

  5. تقرير معالجة الثغرات Remediation Report: هذا الجزء يتضمن نصائح للجهة التي تم تطبيق اختبار الإختراق عليها بطرق معالجة الثغرات التي تم إيجادها والحل الأنسب لها.

    يمكنك الإعتماد على أكثر من مصدر معتمد في كتابة الحلول، ولكن احرص على كتابة الحلول التي تتعلق بما وجدته فقط!

  6. صفحة المراجع References: قم بتضمين جميع المراجع التي ساعدتك في كتابة التقرير.

رأيي الشخصي

من الاسئلة الشائعة: 

  1. هل التدريب المقدم من eLearnSecurity كافي لدخول الإختبار؟

    نعم، كافي. احرص على دراسة المنهج النظري، متابعة مقاطع الفيديو، والتدرب على ما تعلمته عمليًا (Labs)، لن تحتاج للرجوع الى مصادر اضافية الا اذا اردت توسيع مداركك والتنويع في الأدوات المستخدمة والاستراتيجيات. وفي حالة واجهت شيء في الإختبار ولم تستطع حله، تأكد بأن الإنترنت يحتوي على جميع الحلول وبشكل مشابه لما ستواجهه.

  2. انا مبتدئ / لا زلت طالب في الجامعة، هل الاختبار يتطلب خبرة عملية سابقة؟ 

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

  3. ما هي المهارات المطلوبة للحصول على هذه الشهادة؟ 

    المعرفة الكافية بطريقة استخدام بيئة لينكس وسطر الأوامر، أدوات فحص المواقع مثل ZAP و Burp، وشغفك في التعلم هو كل ما تحتاجه.

  4. هل الاختبار بنفس مستوى التدريب العملي المقدم من eLearnSecurity؟

    بوجهة نظري، الاختبار ابسط واسهل من الـ Labs. 

  5. ما هو المعيار لإجتياز الإختبار؟ 

    لا يوجد معيار واضح وثابت، لا لعدد الثغرات المطلوبة ولا لطريقة كتابة التقرير. بعض الأشخاص حصل على الشهادة عن طريق وجود (٥-٨) ثغرات، والبعض حصل عليها عن طريق وجود (١٤-١٨) ثغرة. لا تفكر بإجتياز الإختبار أكثر من فهمك للمنهج وتدربك على آليات اختراق تطبيقات الويب بطريقة ممتازة.

  6. هل هناك طريقة ثابتة ومعتمدة لكتابة التقرير؟ 

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


نصيحتي:

  • لا تعتمد على طريقة أي شخص، الأساليب وطرق الإختراق تختلف من شخص لآخر وتعتمد على طريقة التفكير. لا يوجد معيار لتقييم طريقتك في اكتشاف الثغرة واستغلالها طالما انك استطعت على الحصول عليها في النهاية.

  • اثناء قيامك بالإختراق، استخدم مذكرة لتسجيل جميع خطواتك (من أين بدأت، كيف اكتشفت الثغرة بالتفصيل، اين اكتشفتها، ماذا حصلت عليه بعد استغلال الثغرة، ما هي الأدوات التي استخدمتها…الخ) سوف تحتاجها في مرحلة التوثيق للرجوع الى الأدلة بطريقة سريعة.

  • اترك عملية اخذ الصور (Proof of Conecpt) في النهاية، بعد ان تنتهي من اتلاف جميع المواقع سوف تحتاج الى عمل “Reset” لأخذ الصور بطريقة مرتبة. (هنا تكمن فائدة المذكرة التي ذكرتها في الأعلى).

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

  • استكشف، استكشف، استكشف! مرحلة جمع المعلومات لا تنتهي، كلما حصلت على هدف جديد قم بتكرار مرحلة الاستكشاف والفحص وستجد مصادر وبيانات جديدة. 

  • لا مانع من البحث وتجربة طرق او أكواد جديدة لم تُذكر في المنهج (Google هو صديقك الدائم).

  • شرط ضروري “ولكنه غير كافي لإجتياز الإختبار” هو الوصول الى صلاحيات الـAdmin. فأحرص قبل الإختبار على التدوين والتدرب على مختلف الطرق للحصول عليه.


بإختصار، الاختبار سهل في حالة انك اعتمدت على المصدر الأساسي وهو التدريب المقدم من eLearn Security، الهدف منه هو تدريبك على البحث واستغلال ثغرات تطبيقات الويب بطريقة ممتعة جدًا.

ولكن تأكد بأن الإختبار لا يقيس مهارات الشخص في اختراق تطبيقات الويب، حيث ان ما ستراه في الإختبار ليس فعلًا ما ستواجهه في الحياة الحقيقية، معظمه نادر الوجود (بسبب بساطته). 


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

الباقة المستخدمة: Elite

مدة الإختبار: ٨ أيام كمجمل تم الإنتهاء فيها من الإختبار العملي ورفع التقرير

الخطة القادمة: eCPPT

تم الرد علي خلال ١٥ يوم من تسليم التقرير