Cross Site Scripting (XSS)
Summary
TLDRتتناول المحاضرة شرح ثغرة الكروس سايت سكريبتين (XSS) التي تسمح للمهاجم بحقن كود جافا سكريبت خبيث في صفحات الويب، مما يعرض المستخدمين لخطر سرقة الكوكيز، تنفيذ إجراءات غير مصرح بها، أو تغيير محتوى الصفحة. يتم استعراض أنواع الثغرة، مثل الريفلكتد والستورد، مع توضيح كيفية تأثيرها عند عدم الحماية السليمة للمدخلات. يُشرح كيفية الوقاية باستخدام تقنيات مثل الفلترة والتحقق من المدخلات وتحويلها إلى نصوص آمنة عبر أدوات مثل HTML Special Characters لتجنب تنفيذ الأكواد الخبيثة.
Takeaways
- 😀 الكروس سايت سكريبتين هي ثغرة تسمح للمهاجمين بحقن كود جافا سكربت خبيث داخل صفحات الويب.
- 😀 الفكرة الرئيسية في هذه الثغرة هي أن الكود الجافا سكربت يتم تنفيذه في متصفح المستخدم بدلاً من أن يتم عرضه كنص عادي.
- 😀 إذا كان الموقع لا يطبق الحماية الصحيحة على المدخلات من المستخدم، يمكن أن ينفذ المتصفح كود الجافا سكربت على الصفحة.
- 😀 الخطر الرئيسي للكروس سايت سكريبتين يشمل سرقة الكوكيز، تنفيذ أفعال للمستخدم، تغيير محتوى الصفحة، وإعادة توجيه المستخدم.
- 😀 الثغرة تكمن في أن المتصفح يتعامل مع النص المدخل من المستخدم ككود جافا سكربت دون فحصه أو حمايته بشكل صحيح.
- 😀 هناك نوعان رئيسيان من XSS: الريفلكتد (المباشر) والستورد (المخزن).
- 😀 في XSS من نوع الريفلكتد، يتم تنفيذ الكود في نفس اللحظة عند إرسال الطلب وإرجاع الاستجابة.
- 😀 في XSS من نوع الستورد، يتم تخزين الكود الخبيث في قاعدة البيانات ويُنفذ عندما يفتح المستخدم الصفحة التي تحتوي على الكود.
- 😀 خطر XSS المخزن يكون أكبر لأنه يظل في قاعدة البيانات حتى يتم حذفه، مما يعرض مستخدمين آخرين للخطر عند زيارة الصفحة.
- 😀 الوقاية من XSS تشمل استخدام تقنيات مثل HTML special characters وoutbound encoding لتحويل المدخلات إلى نص آمن قبل عرضها للمستخدم.
Q & A
ما هي ثغرة الكروس سايت سكريبتين؟
-ثغرة الكروس سايت سكريبتين (XSS) تسمح للمهاجم بحقن كود جافا سكريبت خبيث في صفحات الويب، مما يؤدي إلى تنفيذ هذا الكود على متصفح المستخدم الآخر، وبالتالي قد يتمكن المهاجم من سرقة الكوكيز أو تنفيذ أفعال غير مرغوب فيها على الصفحة.
كيف يمكن أن تؤثر ثغرة الكروس سايت سكريبتين على المستخدم؟
-الثغرة قد تؤدي إلى سرقة الكوكيز، تنفيذ أفعال للمستخدم، تغيير محتوى الصفحة، أو حتى إعادة توجيه المستخدم إلى مواقع ضارة. في بعض الحالات، قد يتمكن المهاجم من التصرف كأنّه المستخدم نفسه بسبب سرقته للـsession.
ما الفرق بين النوعين الرئيسيين للكروس سايت سكريبتين: الريفلكتد والستورد؟
-الريفلكتد يتم عندما يتم إرسال الكود الخبيث مع الطلب ويعود مع الاستجابة مباشرة، وهو مؤقت ويحدث في لحظة معينة. أما الستورد فيتم تخزينه في قاعدة البيانات ويبقى فعالًا حتى يتم حذفه، ويؤثر على جميع من يفتح الصفحة المخزنة فيها الثغرة.
لماذا يعتبر الستورد أكثر خطورة من الريفلكتد؟
-الستورد يعتبر أكثر خطورة لأن الكود يتم تخزينه في قاعدة البيانات ويبقى فعالًا إلى أن يتم حذفه، مما يعني أن كل من يزور الصفحة قد يتأثر بالثغرة. أما الريفلكتد فهو مؤقت ويحدث فقط عند إرسال الطلب.
كيف يمكن للمهاجم استغلال ثغرة الكروس سايت سكريبتين؟
-المهاجم يمكنه حقن كود جافا سكريبت خبيث في مدخلات المستخدم مثل حقول البحث أو التعليقات. إذا لم يتم معالجة المدخلات بشكل صحيح من قبل الموقع، سيتم تنفيذ الكود عند عرض الصفحة على المستخدمين الآخرين.
ما هي الطريقة الصحيحة لمعالجة المدخلات من المستخدم لتجنب الكروس سايت سكريبتين؟
-يجب دائمًا استخدام عملية الفلترة أو التشفير (مثل HTML encoding) لتحويل المدخلات إلى نص آمن قبل عرضها في المتصفح، بحيث لا يتم تفسير الكود على أنه جافا سكريبت أو HTML.
ما هو دور الـHTML Special Characters في حماية الموقع من XSS؟
-HTML Special Characters هي طريقة لتشفير الحروف الخاصة التي قد تُفسر على أنها كود جافا سكريبت أو HTML، مما يضمن أن المتصفح يعرض النص كما هو دون تنفيذه ككود.
هل يعتبر الفلترة وحدها كافية لمنع ثغرات XSS؟
-لا، الفلترة وحدها ليست كافية. يجب استخدام التشفير (HTML encoding) كخطوة أساسية لضمان أن المدخلات لا تُفسر على أنها كود جافا سكريبت أو HTML.
ما هو المقصود بـ‘Outbot Encoding’ في سياق الحماية من XSS؟
-Outbot Encoding يعني تحويل المدخلات قبل طباعتها إلى النص الآمن عن طريق استخدام آلية تشفير مثل HTML encoding، بحيث يتحول أي كود ضار إلى نص عادي لا يتم تنفيذه من قبل المتصفح.
كيف يمكننا التأكد من أن الموقع غير معرض لهجمات XSS؟
-يمكن التأكد من خلال التأكد من عدم السماح للطرف الثالث بإدخال كود جافا سكريبت غير مُعالج، عبر استخدام تقنيات التشفير مثل HTML Special Characters، واتباع ممارسات جيدة مثل التحقق من المدخلات (input validation) واستخدام Content Security Policy (CSP).
Outlines

Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.
Mejorar ahoraMindmap

Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.
Mejorar ahoraKeywords

Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.
Mejorar ahoraHighlights

Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.
Mejorar ahoraTranscripts

Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.
Mejorar ahoraVer Más Videos Relacionados
5.0 / 5 (0 votes)





