ما هو Cross Site Scripting
تعد هجمات البرمجة النصية عبر المواقع (XSS) نوعًا من ثغرات الحقن ، حيث يمكن الهكر تنفيذ اكواد استغلال ثغرة XSS عن بعد في متصفح الضحية دون ان يشعر الاخير بذلك.
أي موقع ويب به كود مُنشأ ديناميكيًا بدون تشفير كافٍ وتصفية حقل الإدخال ، يمكن أن يصبح ضحية لهجمات استغلال ثغرة XSS.
من وجهة نظر المستخدم، سيظل كل شيء طبيعيًا اثناء تصفحه للموقع ولن يعرف حتى أن بياناته قد تعرض للاختراق.
استغلال ثغرة XSS
تسمح ثغرات XSS للهكر بتشغيل اكواد JavaScript الضارة في متصفح الضحية والذي يمكنه سحب جلسات المستخدم وإعادة توجيه المستخدم إلى موقع اخر.
كذلك يمكنه نشر البرامج الضارة Backdoor, malwares وإنشاء طلبات خاطئة وسرقة
هوية المستخدم والبيانات الحساسة مثل: بيانات الاعتماد وكلمات المرور والائتمان
أرقام البطاقات ، وسحب الكوكيز Coockies
يتم تصنيف عيوب البرمجة النصية عبر المواقع (XSS) إلى ثلاث مجموعات:
- Stored XSS
- Reflected XSS
- DOM-based XSS
في هذا المقال سنتعرف على اداة مبرمجة بلغة بايثون 3 تقوم بعملية حقن اكواد استغلال XSS تلقائيا وبسهولة بدون اوامر برمجية معقدة تابع معي.
مجموعة أدوات حقن XSS-Loader
بعد تشغيل اداة XSS-Loader باستخدام Python 3، يمكن للمستخدم اختيار إنشاء بايلود حقن XSS بعلامة HTML التي يريدها مثل div أو Img أو body.
بعد اختيار العلامة، يمكن للهكر تحديد الحمولة بشكل أدق عن طريق تحديد الترميز المطلوب أو عن طريق تحديد نوع الحقن المطلوب مثل
‘CLOUDFARE BYPASS PAYLOADS’ أو ‘ALERT PAYLOADS’.
سيؤدي هذا إلى إنشاء الحمولة المطلوبة.
الوحدة الثانية ‘XSS-Scanner’ والتي تسمح للمستخدم بإنشاء عنوان URL (الحقنة) الذي سينفذ حقن xss.
الوحدة الثالثة ‘XSS-DORK-FINDER’ تسمح للمستخدم باستخدام محرك البحث جوجل، للعثور على مواقع الويب المعرضة للاختراق بهذا النوع من الثغرات وتسمى ايضا دوركات XSS.
ميزات اداة XSS-Loader XSS-Scanner Payload-Generator
- انشاء Payload للاستخدام في حقن XSS.
- حدد علامات البايلود الافتراضية أو قم بإنشاء الحمولة المخصصة الخاصة بك.
- تنفيذ اكواد حقن XSS باستخدام XSS-SCANNER.
- البحث المواقع المعرضة للاختراق باستخدام XSS Dork Finder.
- لينكس
- بايثون 3
تثبيت اداة اختراق المواقع XSS-Loader XSS-Scanner
- افتح الترمينال
- انسخ الاوامر الأتية بها
- استنساخ اداة XSS-Loader من موقع GitHub repo:
git clone https://github.com/capture0x/XSS-LOADER/
- انتقل إلى مجلد XSS-LOADER وقم بتثبيت المتطلبات:
cd XSS-LOADER
pip3 install -r requirements.txt
- كيفية تشغيل الاداة
python3 payloader.py
<script>alert(1)</script>
<div onpointerover='alert(1)'>MOVE HERE</div
<img src=x onerror=alert('1');>
<body ontouchstart=alert(1)>
XSS-Scanner
target -> http://target.com/index.php؟name=
XSS Dork Finder
inurl: "search.php؟q="
كيف تحمي نفسك من ثغرة Cross-Site-Scripting
الدفاعات الأولية ضد XSS موصوفة في ورقة Cross_Site_Scripting_Prevention_Cheat_Sheet على موقع OWASP XSS .
أيضًا ، من الضروري إيقاف تشغيل دعم HTTP TRACE على جميع خوادم الويب.
يمكن للمهاجم سرقة بيانات ملفات تعريف الارتباط عبر Javascript حتى عندما يتم تعطيل ملف document.cookie أو عدم دعمه من قبل العميل.
يتم شن هذا الهجوم عندما ينشر الهاكر نصًا ضارًا في منتدى ، لذلك عندما ينقر مستخدم آخر على الرابط ، يتم تشغيل استدعاء HTTP Trace غير متزامن يجمع معلومات ملف تعريف الارتباط للمستخدم من الخادم ، ثم يرسلها إلى خادم ضار آخر يقوم بجمع معلومات ملف تعريف الارتباط حتى يتمكن المهاجم من شن هجوم اختطاف جلسة. يمكن تخفيف ذلك بسهولة عن طريق إزالة دعم HTTP TRACE على جميع خوادم الويب.