Web_Development & Hacking
100 subscribers
18 photos
6 files
29 links
قناة خاصه بتطوير الويب
ونشر مشاريع الويب
وكل مايخص الويب

رابط القناة: t.me/webdevelopment7

#Html5
#Css3
#Bootstrap
#JavaScript
#ReactJs
#Php
#NodeJs
#Mysql
#MongoDB
Download Telegram
🔰Web Security Core Defense Mechanisms 🔰
❕ آلية الدفاع الأساسية لأمن الويب


... الموضوع اليوم ، ازا انت كنت مطور ويب وحابب تحمي موقعك ، اليوم سنتعرف على بعض اساليب الدفاع الاساسية لأمن الويب ⚠️

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

اشياء لا تتوقع من الطبيق مثل :

🛑 يمكن للمستخدمين التدخل في اي جزء من البيانات المنقولة بين العميل والخادم ، بما في ذالك ال parameters الطلب وملفات تعريف لارتباط و HTTP Header .

🛑 يمكن للمستخدين من إرسال الطلبات بأي تسلسل ويمكنهم إرسال المعلمات (parameters) في مرحلة مختلفة عما يتوقعة التطبيق.

‼️مثال ، تغير سعر منتج تم إرساله في حقل نموذج لشراء المنتج بطريقة احتيالية مقابل مبلغ ارخص

‼️مثال ، تعديل session token تم ارسالة ، لاختطاف جلسة مستخدم اخر مصادق عليه

‼️ مثال ، ازالة بعض ال (parameters) التي تم تقديمها بشكل تطبيعي ، لاستغلال خلل منطقي في معالجة التطبيق



نبدأ من الاشهر المصطلحات

⚠️ Handling User Access :

1. Authentication
2. Access control
3. Sessions

1⃣ Authentication عملية المصادقة

- عملية تحقق من المستخدم هو من يدعي انه كذالك ، عادة مايتم الاجراء المصادقة عن طريق إرسال اسم المستخدم وكلمة المرور او اكثر مثل سؤال الحماية ، التي يجب انا يعرفها مستخدم معين فقط...
2⃣ Access Control التفويض

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

3⃣ Session Management إدارة الجلسة

هي عملية من خلالها يحافظ السيرفير على المستخدم الذي يتفاعل معه. هذا مطلوب للخادم لتذكر كيفة الاستجابة للطلبات لاحقا ، يتم الاحتفاظ على الجلاسات على الخادم بواسطة session-ID ، يجب ان تكون الجلسات فريدة لكل مستخدم ومن الصعب جدا تخمينها.

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


🔱 Add Extra Securtiy Headers Response Policies

- وجود Extra Securtiy Headers Response Policies في مكانها يضيف مستوى اخر من الحماية ويمكن ايقاف هجمات الشائعة مثل code injection و cross-site-scripting يوجد مواقع مثل CMS WordPress يتم تعين سياسة header response عبر ملف htaccess.

❕اشهر ال Headers Security ❕

1⃣ X Frame Option
2⃣ X XXS Protection Header
3⃣ X Content Type Header
4⃣ Referrer Header
5⃣ Content Security Policy (CSP)
6⃣ Same Origin Policy (SOP)
7⃣ Cross Origin Resources sharing (CORS)
🔱 Maintaining audit Logs
سجلات الدقيق

- يساعد وجود سجلات الدقيق (logs) من فهم ماحدث بلضبظ مثال ، ان تم استغلال نقاط الضعف إن وجدت او سواء حصل المهاجم على وصول غير مصرح به الى البيانات او قام بأي إجراءات غير مصرح بها ، وبقدر الإمكان يتم تقديم دليل على هويه المتسلل مثل:

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

عادة ما تسجل السجلات الفعالة وقت كل حدث وعنوان IP الذي تم استلام الطلب منه وال Token للجلسة وحساب المستخدم (إذا تمت مصادقته)

🔱 Alerting administrator

- وهي احداث يتم رصدها أليات التنبيه الى مدير الموقع مثال
🚫 عدد هائل من تحويل الأموال التي يتم إجؤاها الى حساب مصرفي
🚫 الطلبات
يلي تحتوي على سلاسل هجوم

يجب إدارة التطبيق نفسه ، من خلال تمكين المسؤلين من مراقبة أنشطة وتكوين وظائفه.
🔱 Encoding Schemes

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

⚠️ اشهر الترميز
1⃣ URL encoding
2⃣ HTML encoding
3⃣ Bas64 Encoding
🔱 Web Application Firewall (WAF)

✅- يتم تعريف WAF على أنه نقطة فرض سياسة الأمان بين تطبيق الويب ونقطة العميل

✅- يعالج التعليمات البرمجية من خلال مجموعة قواعد وسياسيات

✅- يستخدم مجموعة من المنطق القائم على القواعد والتحليل (syntax analysis or Regex Based detection) و يتعمد ايضا على signature لاكتشاف ومنع الهجمات مثل SQLI ..

ويوجد لديه ثلاث اوضاع :

1⃣ learning Mode
2⃣ Passive Mode
3⃣ Active Mode
Live stream started
Live stream finished (29 minutes)
ماهو ال DHCP :
معظمنا يعرف إنك عندما تقوم بتوصيل أحد الاجهزة علي شبكة فذلك الجهاز سوف يحصل علي عنوان IP Address سواء كان هذا الجهاز هو جهاز كمبيوتر أو هاتفك الذكي او طابعات او كاميرات مراقبة وغيرها فكل تلك الاجهزة تحصل علي عنوان IP Address خاص بها ولكن هل فكرت يوماً كيف تحصل تلك الاجهزة علي عنوان IP بشكل تلقائي بمجرد توصيلها علي الشبكة وكيف يختلف عنوان IP هذا من جهاز لاخر الامر كله يعتمد علي ما يسمي DHCP هذا هو بالتحديد ماسوف نشاركه معكم اليوم لتعرف ما هو DHCP بشكل أكبر وتعرف كيف يعمل في الشبكة لذلك تابع معي بتركيز قليلاً .
في البداية DHCP هو إختصار لكلمة Dynamic Host Configuration Protocol هذا البروتوكول هو المسئول عن تعيين عنوان IP Address لكل جهاز يتم توصيله علي الشبكة بشكل تلقائي دون تدخل منك وأيضاً يقوم بتعيين بعض الإعدادات لكل جهاز متصل بالشبكة لكي تستطيع التحكم والسيطرة فيها علي تلك الاجهزة ليصبح الأمر أسهل عليك واكثر تحكماً الان هناك بعض المصطلحات التي يجب ان تعرفها قبل البدء في كيفية عمل DHCP بداخل الشبكة .
- النطاق او المدي
لقد أخبرتك انه عندما يتم توصيل أي جهاز بتلك الشبكة فإن وظيفة DHCP ان تقوم بتعيين عنوان IP وإعدادات خاصة بالشبكة ولكن كيف يتم اختيار عنوان IP في الحقيقة يتم اختيار عنوان IP الخاص بكل جهاز بشكل عشوائي ولكن الامر يعتمد علي ما يسمي مدي DHCP هذا المدي يكون بين قيمتين جميع العناوين الواقعة بين ذلك المدي هي التي يتم تعيينها للأجهزة المتصلة بالشبكة مثال علي ذلك إذا كنت تمتلك سيرفر DHCP لديه نطاق عنوانين من 192.168.1.100 إلي 192.168.1.200 هذا الأمر يعني ان سيرفر DHCP يمكن ان يستوعب حتي 100 جهاز في وقت واحد .
- مصطلحات أخري
يجب ان تعرف ان هناك خدمة DHCP وهناك خادم حيث يمكنك ان تقوم بإنشاء سيرفر ليعمل كسيرفر رئيسي نقوم بتشغيل الخدمة عليه فقط او يمكن استخدام السيرفر ليعمل كخادم DHCP علي السيرفر ولكن الشائع أكثر هو الخدمة DHCP Server .
- الحجز Reserved IP
في كل مرة يتصل فيها أي جهاز علي الشبكة يتم القيام ببعض الخطوات التي سوف نذكرها في الخطوات القادمة ولكن بالتأكيد هناك بعض الاجهزة التي تتوجد علي الشبكة بشكل أساسي والتي من الافضل ان لاتقوم بتلك الخطوات لإنها في الأغلب تكون أجهزة خاصة بالتحكم في الشبكة وفي حالة تغير عنوانينها سوف تتأثر الشبكة لذلك يتم مايسمي بحجز عنوان IP حيث يتم حجز مجموعة من العناوين لاستخدامات تلك الاجهزة ولايتم تغيرها مطلقاً علي عكس الأجهزة الاخري.
- مدة التأجير
هي عبارة عن المدة الزمنية التي سوف تظل تمتلك فيها عنوان IP فعندما تتصل بالشبكة يتم منحك عنوان IP وبعض الإعدادات لفترة من الوقت والتي تسمي مدة التأخير والتي يمكن ان تكون لبضع دقائق او ساعات او ايام وبعد انتهاء تلك المدة يقوم الجهاز بطلب تجديدها مرة أخري بشكل تلقائي او يمكنك انت تقوم بتجديد العنوان الخاص بجهازك من خلال الأمر ipconfig/renew.
- كيف يعمل DHCP
الان بعد ان قرأت السطور السابقة وأهم المصطلحات الخاصة ببروتوكول DHCP فإنك سوف تفكر في السؤال الأهم وهو كيف يعمل هذا البروتوكول في الشبكة او كيف يحصل الجهاز المتصل بالشبكة علي عنوان IP وغيرها من الإعدادات التي تساعده علي الإنضمام لتلك الشبكة الأمر يتلخص في أربع خطوات سوف أذكرها لك الان بشكل بسيط حتي تعرف كيف يعمل DHCP.
1- الاستكشاف DHCP Discover
عندما يتم توصيل أحد الاجهزة علي الشبكة فإن هذا الجهاز لا يمتلك أي معلومات عن الشبكة لذلك فهو يقوم ببث حزمة من البيانات التي تسمي DHCP Discover والتي تحتوي علي بعض المعلومات مثل عنوان الماك Mac Address الخاص بالجهاز ويعتبر الماك أدرس في هذه المرحلة هو وسيلة الإتصال ويكون مصدر تلك الحزمة هو 0.0.0.0 لان الجهاز لايمتلك عنوان IP خاص به علي تلك الشبكة وتكون تلك الحزمة موجهة إلي العنوان 255.255.255.255 وهذا يعني إنها موجهة لجميع الاجهزة علي الشبكة.
2- العروض DHCP Offer
عندما يتم إرسال تلك الحزمة إلي الشبكة تصل إلي جميع الاجهزة الموجودة مسبقاً ومنها سيرفر DHCP عندها يعرف السيرفر إن هناك جهاز يريد الإنضمام إلي الشبكة وبالتالي يقوم بإرسال حزمة من البيانات للرد علي هذا الجهاز وعرض خدماته من خلال تلك الحزمة التي تحتوي علي بعض البيانات مثل عنوان IP وقناع الشبكة Subnet mask ومدة التأخير لهذا العنوان التي تحدثنا عنها سابقاً وتعتبر تلك المرحلة هي المرحلة التي يعرض فيها سيرفر DHCP علي الجهاز إمكانية الإنضمام إلي الشبكة.
3- الرد DHCP Request
في هذه المرحلة يقوم هذا الجهاز بالرد علي المرحلة السابقة او مرحلة العرض بالموافقة للإنضمام لتلك الشبكة بتلك البيانات التي منحها لك سيرفر DHCP لذلك بعد ان يحصل الجهاز علي عنوان IP الذي مُنح له يقوم بإرسال الرد إلي سيرفر DHCP يخبره بإن وافق علي العرض الخاص به بعنوان IP وبالإعدادات الاخري الذي عرضت
عليه .
4- التأكيد DHCP Ack
تلك هي المرحلة الاخيرة والتي يتم فيها التأكيد من قبل جهاز المستخدم علي تعيين عنوان IP المخصص او بمعني اخر المستأجر له علي تلك الشبكة ( تأكيد إتمام عملية التأجير )حيث يتم إرسال إشعار للتأكيد علي تلك البيانات إلي سيرفر DHCP وإذا كانت المعلومات صحيحة يتم إتصالك بالشبكة بشكل سليم وفي حالة فشل البيانات يقوم جهاز المستخدم بإعادة المراحل الاربع مرة اخري ليحصل علي عنوان IP وباقي المعلومات الخاصة بتلك الشبكة ليتم الإتصال . #COPIED -- copy
إنضم لجروب المناقشة
أحد الصفات اللي تميزك كمطور هو انك تكون متحدث بشكل مستمر بأخبار وتحديثات عالم البرمجة

هذه لستة بعدة مواقع ونشرات بريدية تعطيك الجديد أول بأول 😍👌🏻أستخدمها واتبعها 🤩
إضافة Daily Dev لجميع المتصفحات
فكرة الإضافة تستبدل لك الصفحة الأفتراضية لما تفتح Tap جديد وتعطيك أخر اخبار عالم البرمجة
موقع DEV Community
وهو عبارة عن مجتمع للمطورين ينزل فيه أول بأول كل جديد وكل تحديث ومواضيع رهيبه ومهمة جدا 😍👌
النشرة البريدية Console
نشرة بريدية اسبوعية مجانية ترسلك جديد الأدوات للمطورين 😍👌🏻
النشرة البريدية Web Design Weekly
نشرة أسبوعية ايضا ترسلك جديد تحديثات وادوات عالم تطوير المواقع وواجهات المواقع

https://web-design-weekly.com
هذه قائمة بالمواقع والنشرات اللي تحضرني الآن لأني اتابعها واستخدمها بشكل مستمر
دى راوابط اغلب الكورسات الى هتحتاجها فى الprogramming , information security
(Computer Science Basics)
-CS 50
https://youtube.com/playlist...
عربي
https://youtube.com/playlist...
==========================
(Programing)
‏
- C - C++ - C# - Python - Bash& Python - Data Base
- C : https://youtube.com/playlist...
-C++ :
https://youtu.be/35qTqtpQMxg
-C++ Advanced :
https://youtube.com/playlist...
-C++ Labs :
https://youtube.com/playlist...
-C++ Labs2 :
https://youtube.com/playlist...
-Python :
https://youtube.com/playlist...
Python :
https://youtube.com/playlist...
Python labs:
https://youtu.be/5_0pWFN-NRk
-My SQL
https://youtube.com/playlist...
C#
https://youtube.com/playlist...
-jQuery
https://youtube.com/playlist...
-HTML
https://youtube.com/playlist...
==========================
(Operating Systems)
-Hassan Saad (Windows& Linux) Basics
https://www.youtube.com/playlist...
- CompTia Linux + :
https://www.youtube.com/playlist...
MCSA :
https://youtube.com/playlist...
RHEL(RH124)
https://youtube.com/playlist...
7- RHEL(RH134)
https://youtube.com/playlist...
8- RHCE (Admin3)
https://youtube.com/playlist...
9- Kali Linux :
https://youtube.com/playlist...
==========================
(Network )
-Hassan Saad - N+ - CCNA R&S
-Hassan Saad :
https://www.youtube.com/playlist...
1-CompTia N+ :
https://www.youtube.com/playlist...
2-CCNA R&S :
https://youtube.com/playlist...
1- CCNA (200-301)
https://youtube.com/playlist...
2- CCNA Security
https://youtube.com/playlist...
3- CCNP Enconor (350-401)
https://youtube.com/playlist...
4-CCNP Rout
https://youtube.com/playlist...
5- CCNP Switch
https://youtube.com/playlist...
4- CCIE R&S
https://youtube.com/playlist...
==========================
(Automotion)
BowerShell , Bash& Python
-PowerShell :
https://youtube.com/playlist...
-‏
(Web)
-
- ‏ https://docs.google.com/.../1O0maHfsmkdYg33qo4LzT.../edit...
==========================
(Cyber Security)
(Security)
1-CompTia Security + :
https://www.youtube.com/playlist...
2- Penetration Testing Basics :
https://www.youtube.com/playlist...
3-CompTia Pentest+ :
https://www.udemy.com/course/comptia-pentest-plus/
4- CEH
https://youtube.com/playlist...
5- OSCP
https://youtube.com/playlist...
4- Network Penetation :
https://www.youtube.com/playlist...
5- Web Penetration :
https://www.youtube.com/playlist...
Exploit Development
https://youtube.com/playlist...
Network Pentest
https://youtube.com/playlist...
Pentest Basics
https://youtube.com/playlist...
5- OSCP
https://youtube.com/playlist...
👍1
هنتكلم عن تراك ال Red Team
تراك Red Teaming ..

زي م فهمت يا صديقي ان الCyber Security متقسم كذا فريق منهم الBlue Team و Red Team ..

وان الفريق الازرق ده مختص ب الدفاع ، والفريق الاحمر مختص ب الهجوم

ف كدا انت فاضلك اخر تخصص في ال Red Team ، الا وهو الRed Teaming ..

مين ال Red Teamer ده ؟

بكل بساطة ال Red Teamer بيعمل ال بيعملو ال Pentester وال Bug Hunter و اكتر ، ولكن في شركة ..

نبدأ بسبب التسمية ..

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

وهسيبلك لينك الفيديو ف المصادر..

الفريق الاحمر يعني الجزء الهجومي ، بمعني ..

دلوقتي عندنا شركة زي جوجل ، فيها سيرفرات و ابليكيشنز و نظم معلومات كتير .. طيب ده مش عايز يتأمن ؟

ف اتطبق نظرية " أفضل طريقة للدفاع هي الهجوم"

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

ودايما الRed Team بيلعب دور الخصم للBlue Team

وفيه ناس شايفة ان الفريق الاحمر معمول عشان يتأكد من شغل الBlue Team ..

بيتطلب منه Project معين ، علي سبيل مثال لو هو شغال ف شركة واتطلب منه يسحب Data معينة ، او اي مهمة ..

هنا بقا هو مطلوب منه ينفذ مهمة ، مش مهم يعملها ازاي ، مش مهم ل انهو طريقة ..

وهحكيلك مثال لصديق ما ..

الراجل ده كان شغال ف بنك واتطلب منه يسحب Data بتاعت الموظفين ..

قام الراجل الجامد ده صنع Malware و حطه ف فلاشة ، ولحسن الحظ البنك كان طالب محاسبين .. قام عمل Cv محاسب وراح يقدم ف البنك وداخل علي انه محاسب عايز يقدم علي شغل .. واثناء ال انترفيو ، كان بيشرب مية والمية اتدلقت علي ال Cv بتاعه واتوتر ، وطلب من الHr يطبعله ال Cv تاني واداله الفلاشة ، وبمثاية ان الفلاشة ال فيها المالوير ده دخلت علي جهاز ال HR ، انت عارف حصل ايه يا عزيزي ..

واتكرم من البنك واتقدر والمهمة اتنفذت ..

أصبح إن الRed Teamer مالهوش زون معين او سكوب معين يشتغل فيه. المهم ينفذ المهمة ، ازاي ؟ ميشغلكش ، انا هنفذها ..

طيب دلوقتي فهمنا سبب تسمية المجال ، وفهمنا الراجل ده بيعمل ايه ، طيب ابدأ اجهز للوظيفة دي إزاي ؟

بكل بساطة ومن وجهة نظري انا شايف انك تكون بدأت ف تراك Bug Hunter + تكون اشتغلت General Pentester يعني بكل بساطة تكون اشتغلن الاتي :

-Web App Pentester

-Network Pentester

-Desktop App Pentester

-Mobil App Pentester

- Hardware Pentester

بعد لما تشتغل ف ده كدا انت هتكون General Pentester ..

لما توصل هنا ، دي أول خطوة ليك ك Red Teamer مع شوية الحاجات الجاية

-Permissions

- Social Engineering Attacks

-Physical Attacks

وده عشام تلم اي طريقة Dropping عادي المهم ت Gain Access..

يعمي توصل لل RCF ..

وافتكر ان مبدأ ال Red Teaming انك توصل ، مش مهم ازاي ..

فنفس الوقت هيكون ال Exploitation Dev ، الMalware Dev

اخر طريقك ك Red Teamer .. وده لانك هتبطل تدور علي ثغرات ..

انت هنا هتصنع ثغرة بنفسك وتوجدها ف السيستم المراد ..

وهنا التوب ف Cyber Security Red Team ..

مع العلم ان فيه ناس كتير اشتغلت Red Teamer علطول مش لازم يكون عندك كل ده ، انا كلامي مش قرأن ، ولكن انا بنصحك ب الي بعمله مع نفسي ، فاهم ؟

طيب انت كدا فهمت يعني إيه Red Teamer اصلا ، وبيعمل ايه ، وتوصل للمكان ده ازاي ؟

كدا فاضلك إيه ؟

مش فاضلك أي حاجه إنطلق.

إبدأ 🔥
👍3