Lesson 1 : Web App Penetration Testing ( Code Review )

Abdulrahman
6 min readOct 6, 2021

--

بسم الله الرحمن الرحيم

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

مقدم الكورس :

https://twitter.com/infosec_90

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

لمن هذا الكورس لـ :

مطوري الويب ابلكيشن
مختبري اختراق تطبيقات الويب ابلكيشن
صائدي الثغرات

الشرائح المستهدفة في الكورس :

جميع الفئات حيث يمكن للمبتدئين بدون خلفية برمجية
ايضا اكتشاف الثغرات باختبار السكربت
بدون قراءة الكود البرمجي للسكربت

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

مدة الكورس :
المدة ستكون غير محددة حسب الوقت المتاح لي
سيتم نشر الدروس بشكل مقالات

اللغات المستهدفة في هذا الكورس
1-PHP
2-Ruby on Rails
3-Python (Django)
4- .NET
ومن الممكن اضافة لغات اخرى مستقبلا حسب الاستطاعة

اهداف الكورس :

قبل نهاية الكورس ستكون مؤهل

لاكتشاف الثغرات في تطبيقات الويب ابلكيشن وارسالها الى مواقع اكتشاف الثغرات
مثال بسيط تم اكتشافها اثناء كتابة دروس الدورة:

للعلم الكورس على سكربتات حقيقة وليس لابات
وايضا لم يتم ارسال جميع الثغرات حيث ان تمارين الكورس بنهاية كل درس
ستكون على شكل اكتشاف ثغرة في سكربت حقيقي وارسالها الى موقع
exploit-db or packetstorm

كل ما اتمناه منكم دعوة في ظاهر الغيب

بسم الله نبدا لاعداد بيئة للكورس

ماهو اختبار الاختراق ؟

يعد اختبار الاختراق جزءًا من اختبارات الأمان ويستخدم لتحديد نقاط الضعف في النظام أو التطبيق. الغرض من هذا الاختبار هو معرفة نقاط الضعف والبحث عن أي ثغرات أمنية موجودة.

من المفهوم أن الضعف يعني: الخطر المتمثل في قيام المهاجم بتعطيل أو الحصول على وصول إلى النظام أو البيانات الموجودة فيه.

تشمل نقاط الضعف الشائعة أخطاء التصميم ، وأخطاء التكوين ، وأخطاء البرامج ، إلخ.

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

هناك ثلاثة أنواع من اختبارات الاختراق:

1.اختبار الصندوق الاسود.

2. اختبار الصندوق الأبيض

3.اختبار الصندوق الرمادي.

في اختبار اختراق الصندوق الأسود :

معرفة المختبر بالأنظمة او التطبيقات التي سيتم اختبارها.

في اختبار اختراق الصندوق الأبيض :

معرفة المختبر بمعلومات كاملة عن الشبكة أو الأنظمة او التطبيقات التي سيتم اختبارها

في اختبار اختراق الصندوق الرمادي :

معرفة المختبر بجزئية للنظام او التطبيق

.

تم اختصار التعاريف والمصطلحات بشكل مبسط ويمكنك البحث عنها في قوقل لفهم اكثر لها

في هذا الكورس التركيز اكثر على الصندوق الابيض والصندوق الرمادي للمبتدئين

قبل البدء في الكورس علينا اعداد البيئة المناسبة لاختبار اختراق تطبيقات الويب ابلكيشن

اعداد بيئة php

نحتاج الى تثبيت XAMPP

مناسب لجميع الانظمة

windows , linux , OS MAC

لعملية التنصيب

ما نحتاجه فعليا هو فقط

Apache , MySQL (MariaDB) , phpMyAdmin

نحتاج الان الى تشغيل

Apache , MySQL (MariaDB)

الان للتاكد من عمل السيرفر المحلي

نتبع الرابط التالي :

http://localhost/ or http://127.0.0.1

وللتاكد من عمل قاعدة البيانات نتبع الرابط التالي :

http://127.0.0.1/phpmyadmin/

بالنسبة لاعدادات الكونفق وخصوصا اعداد ظهور الاخطاء

لن يتم التطرق لها لان تركيز الكورس اكثر على عملية استعراض الكود

اعداد بيئة Ruby on Rails

اذا على لينكس يتم الاكتفاء ب

sudo apt install ruby
gem install rails
gem install bundler
sudo apt install NodeJS
npm install --global yarn

اذا ويندوز

يفضل استخدام الاصدار 2.7 واقل

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

اختار الرقم 1 او 3

الان نحتاج الى تثبيت Rails

gem install rails

اذا ظهر لك خطأ عند تنفيذ الامر :

gem install rails

نفذ الامر

chcp 1252

ثم اعد تنفيذ الامر السابق

الان نحتاج نثبت NodeJS

ننزله من هنا ونثبته

بيأخذ وقت كثير على نظام الويندوز

بعدها ننفذ الامر

gem install bundler

الان ننفذ الامر

npm install --global yarn

الان نحتاج ندخل اي مسار يكون ثابت لنا

وننفذ نفس الامر كان ويندوز او لينكس

rails new test1

وننتظر حتى انتهاء التثبيت

بعد الانتهاء

ندخل على المجلد الذي تم انشاءه

وننفذ الامر

Windows $ rails s 
Linux $ bin/rails s

نستعرض العنوان الواضح من المتصفح

http://127.0.0.1:3000

النتيجة ظهور هذه الصفحة

الان انتهينا من تثبيت بيئة العمل

بالنسبة للمحرر المستخدم في الكورس هو محرر

Phpstorm

لك حرية الاختيار

ولكن اذا كنت طالب او منتسب في اي جامعة يمكنك استخدام

الايميل الجامعي للحصول على هذا المحرر بشكل مجاني

عليك التسجيل في الموقع التالي بايميلك الجامعي

او استخدام

للتحميل :

اخيرا هذا الدرس كان فقط عن اعداد بيئة العمل

لدينا الان تمرين للدرس القادم التمرين

هو تثبيت هذا السكربت في بيئة

PHP

https://download-media.code-projects.org/2021/07/Online_Shop_Store_In_PHP_With_Source_Code.zip

تلميح للتثبيت :
https://code-projects.org/online-shop-store-in-php-with-source-code/

التمرين :
اكتشفت ثغرة واحدة فقط وهي :

https://packetstormsecurity.com/files/164373/Lifestyle-Store-1.0-Cross-Site-Scripting.html

هل يمكنك اكتشاف ثغرات اكثر في نفس السكربت بعد تثبيته ؟

وارسالها لنفس الموقع وتسجيلها باسمك؟

--

--

No responses yet