في هذا الدرس سنتعرف على البرمجة النصية عبر المواقع أو الـ Cross-Site Scripting وتعرف ايضاً بـ XSS كأختصار ، وسنتعرف أيضا على أنواع ثغرة XSS وتهديداتها ومتى يتم استغلالها وطرق الحماية منها وبعض الشركات التي تعرضت لهجمات XSS وايضا بعض المصادر لكي تتعمق وتتعرف على معلومات عن هذه الثغرة.
ما هي ثغرة XSS
ثغرات Cross Site Scripting وتختصر هذه الثغرات بـXSS وهي ثغرات أمنية منتشرة في برامج الويب ، وهي ثغرة تسمح للمهاجم بتنفيذ أكواد ببرنامج بلغة JavaScript والتي يقوم المتصفح بتطبيق الكود الذي حقنه المهاجم عندما يتم تحميل الصفحة عند الضحية ، يتم حقن الكود من طرف المهاجم بعدة طرق منها اي هندسة الضحية لضغط على رابط ( ثغرة XSS منعكسة) او ترقب الضحية ليتصفح صفحة في الموقع المحقون بثغرة XSS (XSS مخزن).
انواع ثغرات XSS
1. ثغرات XSS الثابتة(مخزنة)
تعتبر ثغرة XSS الثابتة اخطر نوع من ثغرات XSS ، وذلك لان مايدخله المهاجم ثابت بالصفحه، اي مايدخله مثلا يخزن بقاعدة بيانات الموقع حيث عند دخول موضوع يحتوي على امكانية التفاعل بالردود او فيه مدخلات ولم يكون الموقع محمي بالتأكيد سيمكنه من حقن اکواده بسهولة تامة وعند تنفيذ اکواده بعدها اي شخص يقوم بالدخول الى الموضوع المحقون بكود الثغرة سيشاهد اعمال المخترق في الصفحة.
2. ثغرات XSS الغير ثابتة(غير مخزنة)
هي النوع الأكثر أنتشاراً وليس خطير وهي التي تقوم على الادخال الخاص فتكون غير مخزنة في قاعدة البيانات وبذلك اي زائر يدخل للموقع لايشاهد مافعله المخترق لانها لم تخزن الاكواد في الموقع في قاعدة بياناته ويمكن للمخترق مشاركتها مع ضحايا محددين.
3. ثغرات Dom-Based XSS(الغير ثابتة)
وهو شبيه جدا بالنوع الخاص Dom غير أنه يرتكز بالأساس على التحكم في ( ثابته بالصفحة عبر تنفيذ سكريبت مكان إرسال قيمة معينة).
تهديدات ثغرة XSS
خطورة الثغرة كبيرة جدا في النوع الثابت ، وذلك لانه يمكن للمخترق اولا اختراق زوار الموقع وهذا يعني القدرة على اختراق مدير الموقع وبذلك اختراق Web Server و كذلك تشويه Index او الصفحة الرئيسية للموقع او حتى تغييره بشكل کامل او حذفة بالكامل واخيرا سرقة Cookies الخاص به.
متى يتم استغلال ثغرة XSS
عندما لا يتم فحص مدخلات البرنامج بعناية ، مثلا عندما يقوم المستخدم بكتابة اسمه في الموقع ثم يقوم الموقع بإظهار الإسم بدون فحص فماذا سيحدث عندما يتم إدخال إسم مستخدم بلغة برمجة HTML مثلا ، والجواب هو انه لن يفرق المتصفح بين إسم المستخدم وبقية كود الصفحة وسيتعامل معه على انه كود في الصفحة مثله مثل باقي السطور أي أنه سيتم تنفيذ الأوامر التي أدخلها المستخدم بدون اي مشكلة!
الحماية من ثغرة XSS
1. فحص المدخلات: وذلك بتطهير المدخلات من اي كود خبیث او محاولة لحقن كود في المدخلات.
2. التأكد من الترميز: تأكد بأن ترميز الحروف في الصفحة هو ما يتطلبه (Character Encoding) في حالة الترميز صحیح سيتعرف المتصفح ما اذا كانت الحروف التي يتم عرضها يرمز اليها بشكل معين او لا.
3. تفعيل HTTPonly: هذا سينبه المتصفح لكي لايسمح لكود السكربت بقراءة الـ Cookies وبالتالي منع سرقتها.
4. جدار حماية تطبيق الويب WAF : وهو شكل محدد من أشكال جدار حماية التطبيقات الذي يقوم بتصفية ومراقبة ومنع حركة مرور HTTP من وإلى خدمة الويب.
شاهد أيضا ما هي البرمجيات الخبيثة وما هي انواعها.
سؤال : هل يستطيع الهكر اختراق جهازك ومشاهدة كامرة هاتفك عن طريق ثغرة XSS؟ نعم
هل يستطيعون الإستماع للميكروفون؟ نعم
للتعرف على الهجمات المتقدمة من ضمنها ثغرات XSS - قم بزيارة صفحة اداة Beef
بعض الشركات التي تعرضت لـ هجمات XSS
1. موقع مؤسسة Apache
وهي شركة تقوم بتطوير خادم الويب الشهير Apache Web Server وتم سرقة مئات الاف اسم مستخدم وكلمات المرور وتم الاختراق من خلال ثغرة XSS صغيرة في موقع المؤسسة ولمعرفة باقي تفاصيل هذا الاختراق من موقع اباتشي الرسمي.
2. موقع توزيعة Ubunto
وذلك كان من نفس الثغرة التي تم اختراق بها موقع مؤسسة اباتشي وادى هذا الاختراق ايضا الى سرقة ما يقارب 1.82 مليون اسم مستخدم وكلمة المرور وتم الاعلان عن هذا الاختراق لكل المستخدمين عبر البريد والتنبيه انه يجب اعتبار حسابك مخترق وتغير كلمة المرور بعد ان استطاعو ارجاع الخوادم واعادة تعين كلمات مرور النظام وقواعد البيانات ولمعرفة باقي تفاصيل هذا الاختراق من موقع اوبينتو الرسمي ، وفي العادة يتم اكتشاف هذه الثغرات مبكرا من قبل صائدي الثغرات Bug Bounties حيث يتم دفع قيمة مالية والتشهير بمن اكتشف الثغرة.
شاهد أيضا ما هو اصل تسمية كمبيوتر وتاريخ تطور عتاد الكمبيوتر.
أين أجد معلومات أكثر عن ثغرات XSS
تستطيع ايجاد معلومات اكثر عن ثغرات XSS عن طريق مشروع امن برامج الويب المفتوح Open Web Application Security Project (OWASP) هو مرجع ممتاز لجميع مواضيع الأمن التي تتعلق ببرامج الويب، قم بزيارة صفحة الويكبيديا الخاصة بثغرة الـ XSS التي شرحناها هنا او صفحة كيف تحمي نفسك من ثغرات XSS الموجودة على نفس الموقع ولمعلومات أكثر حول أخطر 10 هجمات على تطبيقات الويب قم بزيارة صفحة OWASP Top 10.
خاتمة
وهنا وصلنا لنهاية هذا الدرس وقد تعرفنا على ما هي ثغرة XSS وعلى أنواع ثغرة XSS وتهديداتها ومتى يتم استغلالها وطرق الحماية منها وبعض الشركات التي تعرضت لهجمات XSS وايضا بعض المصادر لكي تتعمق وتتعرف على معلومات عن هذه الثغرة وأيضا انا أخلي مسؤليتي لأي استخدام سيء لهذا الدرس وأنها لأغراض تعليمية فقط وكاتب التدوينة غير مسؤل عن أي شيء يحدث لأي شخص ومع السلامة.
تعليقات
إرسال تعليق