السلام عليكم ورحمة الله وبركاته,

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

ملحوظه: لن اكتب عن كيف تبدأ في مجال أمن المعلومات بشكل عام لأنه متنوع بشكل كبير

Network Security, Malware Analysis, Systems Security, Forensics, Reverse Engineering, Incident Handling وغيرها

لكني سأكتب في المجال الذي فيه تخصصي وهو أمن تطبيقات المواقع Web Applications Security حتي يمكنني إيصال المعلومة بشكل سليم ليكون ان شاء الله دليل ومرجع لمن يريد أن يبدأ في مجال أمن مواقع الإنترنت وإكتشاف ثغراتها ويجني المال من ذلك :D

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

الأجندة:

١- كيف تفهم مجال إدارة المواقع الإلكترونية ومصطلحاتها وتتمرن عليها جيدا.

٢- كيف تبدأ في التعرف علي أنواع ثغرات المواقع وتفهمها جيدا.

٣- ما هي الخطوات المطلوبه لكي تكون قادرا علي إكتشاف ثغرات المواقع بنفسك.

٤- كيف تجني المال من اكتشاف ثغرات المواقع.

Screen Shot 2015-03-28 at 4.31.30 AM

١- كيف تفهم مجال إدارة المواقع الإلكترونية ومصطلحاتها وتتمرن عليها جيدا؟

حسنا, لكي تبدأ في مجال أمن مواقع الإنترنت فيجب عليك أولا أن تفهم مجال إدارة مواقع الانترنت بشكل عام وكيف تعمل مواقع الإنترنت وما هي اللغات البرمجيه التي تستخدمها وماهي قاعدة البيانات وكيف تعمل وكيف يتم الربط بينها وبين التطبيقات(Applications) وغيرها من الأسئلة.

الموضوع سهل وبسيط إن شاء الله, سنقوم بتجربة عمل موقع إلكتروني وتشغيله كتدريب عملي علي كيف تعمل المواقع الإلكترونية وكيف تعمل قواعد البيانات وما هي ال Domains وغيرها.

المطلوب منك عزيزي القارئ أن تستخدم جوجل في البحث والقرآءة عن:

١- ما هي mysql وما هي phpmyadmin

٢- ما هو ال Appserv وكيف يمكن تثبيته (Install)

٣- ما هو ال WordPress وكيف يمكن تشغيله علي السيرفر المحلي Appserv

٤- كيف تقوم بحجز مساحة إستضافة مجانية و domain مجاني وتقوم بتشغيل ال WordPress عليها

٥- ما هو سكربت Vbulletin وكيف تقوم بتركيبه علي إستضافة مجانية أو علي ال Appserv

٦- مطلوب منك أن تقرأ جيدا عن ال HTML وتقوم بتصميم صفحات بها حتي تتمرن عليها جيدا وهي لغة سهله جدا ويمكن تعلمها في وقت قصير لكنك لن تدرك مدي سعادتك وأنت تجرب إنشاء صفحتك الخاصه وتضعها علي موقعك علي الإنترنت للمره الاولي :)

أنصحكم بمتابعة الكورس التالي بخصوص لغة ال HTML إضغط هنا.

php

٧- الآن جاء دور لغة البرمجة PHP وليس مطلوب منك أن تكون محترف فيها بل أن تعلم أساسيات اللغة سيكون كافيا لك لتبدأ في مجال أمن المعلومات, وحتي لا تتعب في البحث, إليك الكورس التالي وهو كورس مجاني ورائع وكافي أيضا للمبتدأين في لغة البرمجة PHP, إضغط هنا لمشاهدة الكورس. #شكرا أخونا يوسف إسماعيل علي هذه الكورسات المميزة.

٨- يمكنكم أيضا ( بشكل إختياري) مشاهدة بعض الدروس (١٠ مثلا) من هذا الكورس الذي يشرح ال JavaScript باللغة العربية وهي لغة مفيدة جدا في مجال إكتشاف ثغرات المواقع:

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

٢- كيف تبدأ في التعرف علي أنواع ثغرات المواقع وتفهمها جيدا؟

سأفترض بأنك قمت بعمل الخطوات السابقه والآن أصبحت لديك القدرة لفهم باقي ما سيتم كتابته لأنه لا أحد يصعد السلم ويبدأ من الدرجة السادسه!

owasp-logo0

حسنا الآن أصبحت لديك خلفية عن لغة البرمجة PHP وكيف تعمل, للتعرف علي ثغرات المواقع وما هي وكيف تصاب المواقع بهذه الأنواع من الثغرات, فعليك أن تجعل مرجعك في ذلك هو موقع owasp.org وهو الموقع المصنف الأول عالميا في شرح ثغرات ال Web Applications وتصنيف أخطر الثغرات لكل عام.

https://www.owasp.org/index.php/Top_10_2013-Top_10

الرابط الذي بالأعلي يحتوي علي أخطر عشر ثغرات تصاب بها تطبيقات الإنترنت (Web Applications) ويشرح كل ثغرة تفصيلا وكيف يتم اكتشافها واستغلالها فقط قم بالضغط علي إسم الثغره وستظهر لك تفاصيلها بالكامل.

مراجع اخري عن ثغرات المواقع وباللغة العربية:

شرح ثغرات Unvalidated Redirects وتطبيقها علي موقع Kaspersky

شرح ثغرات Cross Site Scripting

شرح ثغرات SQL injection

والرابط التالي هو لكورس ممتاز يشرح وبالتفصيل جميع أنواع ثغرات ال  SQL Injection من البداية وحتي مستوي الإحتراف إن شاء الله.

٣- ما هي الخطوات المطلوبة لكي تكون قادرا علي إكتشاف ثغرات المواقع بنفسك؟

لكي تتعلم كيف تكتشف ثغرات المواقع بنفسك ويصبح الموضوع سهل بالنسبة إليك, عليك تطبيق هذه الثغرات كثيرا, والموضوع بسيط, هناك تطبيقات كثيره تم برمجتها خصيصا لكي يقوم الدارسين بالتعلم عليها وتجربة الثغرات الموجودة فيها, مثال ذلك قم بتنصيب ال Application المسمي DVWA علي ال Appserv علي جهازك ثم قم بتطبيق المتطلبات التالية:

١- قم بإكتشاف وإستغلال الثغرات الموجوده في هذا التطبيق في حالة ما اذا كان مستوي الحماية فيه ضعيف

٢- نفس الشئ بالأعلي ولكن قم بتطبيقه في حالة اذا كان مستوي الحماية متوسط

يمكنك أيضا التجربة وإكتشاف الثغرت في هذه المواقع المعدة أيضا لنفس الغرض والمصابة بالعديد من أنواع الثغرات:

http://testphp.vulnweb.com

https://xss-game.appspot.com

لا مانع من المساعدة بواسطة البحث في جوجل أو حتي رؤية فيديوهات تشرح لك كيف تكتشف وتستغل ثغرات هذا التطبيق فأنت في مرحلة التعلم وعليك اللجوء إلي جميع المصادر المتاحة لتتعلم جيدا :)

والآن بقيت لنا المرحلة الأخيرة.

Screen Shot 2015-04-03 at 2.15.00 AM

٤- كيف تجني المال من اكتشاف ثغرات المواقع؟

هناك عدة مواقع تدير برامج تسمي Bug Bounty Programs يعني برامج المكافآت المالية, ويمكن من خلال هذه المواقع البحث ومشاهدة ما هي المواقع التي تسمح لك بالبحث عن ثغرات داخلها ومن ثم إبلاغ تلك المواقع عن ثغراتهم ليقومو بترقيع تلك الثغرات, وفي المقابل ستحصل علي مكفأه مالية مقابل إكتشافك :D

هذه المواقع مثل:

https://hackerone.com/programs

و

https://bugcrowd.com/list-of-bug-bounty-programs

فإذا ذهبنا مثلا للموقع الأول فإنك ستجد المواقع معدة بالشكل التالي:

Screen Shot 2015-04-03 at 3.02.57 AM

 

إسم الموقع الذي يسمح لك بإكتشاف ثغرات لديه, وأقل مبلغ يدفعونه علي الثغرات التي يتم إكتشافها عندهم

عند الضغط علي اسم اي موقع من هذه المواقع ستجد تفاصيل أكثر توضح ما هي Web Applications او النطاقات التي يسمح لك الموقع بالبحث فيها, وما هي أنواع الثغرات التي يقبلونها, وما هو أقل مبلغ وأعلي مبلغ يدفعونه مقابل إكتشافك لثغرات لديهم والمزيد عن الموقع وما يقدمه من خدمات للباحثين الأمنيين.

فمثلا لو إكتشفت ثغره من نوع XSS في موقع الياهو فإنك ستحصل علي مكافأه تتراوح ما بين 50 إلي 500 دولار للثغره الواحده! وتتزايد المكافآت المالية بشكل رهيب في حالة إكتشاف ثغرات أعلي في الخطورة مثل ثغرات ال SQL Injection, Remote Code Execution, Authentication Bypass وغيرها.

أنصحكم بإنشاء حساب علي موقع Hackerone.com وأخذ جولة في الصفحه المدرجه بالأعلي لتعرفوا المزيد والمزيد عن ال Bug Bounty Programs وكيف يتم المساهمة فيها.

وينطبق نفس المثال بالأعلي علي الموقع الثاني المدرج أعلاه.

روابط مهمة:

http://www.exploit-db.com

http://www.securitytube.net

http://www.thehackernews.com

كتب مهمة:

1- OWASP Testing Guide – https://www.owasp.org/images/5/56/OWASP_Testing_Guide_v3.pdf

الكتاب بالأعلي يحتوي علي شرح تفصيلي وبالأمثلة لجميع أنواع ثغرات تطبيقات الإنترنت (Web Applications) وكيف يتم إكتشاف تلك الثغرات والأدوات اللازمة لذلك.

2-  Web apps hackers handbook  – كتاب رائع لكن ليس مجاني

3- SQL injection attacks and defense – http://adrem.ua.ac.be/sites/adrem.ua.ac.be/files/sqlinjbook.pdf

الكتاب بالأعلي هو مرجع شامل لثغرات ال SQL Injection كيف تحدث وكيف يتم إستغلالها وكيف يتم ترقيعها في الكود البرمجي للموقع.

كورسات:

Web Application Pentesting – http://www.pentesteracademy.com/course?id=5

من الكورسات الرائعة والشاملة في مجال إكتشاف ثغرات المواقع لكنه ليس مجاني.

 أدوات مهمة:

من الأدوات المهمة التي ستحتاج أن تعرفها وتقرأ عنها وعن كيفية إستخدامها وتجربها إن أمكن, فهي تسهل عليك الكثير في إكتشاف وإستغلال ثغرات المواقع:

١- Acunetix

2- NetSparker

3- BurpSuite

4- Havij

إلي هنا أحبتي ينتهي هذا الموضوع, أرجو أن يكون مرجع للبادئين والمتوسطين في مجال أمن تطبيقات المواقع Web Applications Security Researchers وأن يتقبله الله عز وجل عملا خالصا لوجهه.

المــــصــــدر