🧪 LAB 8: هجوم XSS باستخدام XSSer (XSS Attack with XSSer Lab

🎯 الهدف الأساسي: استغلال ثغرة Reflected Cross-Site Scripting (XSS) في تطبيق Matilda باستخدام أداة XSSer لاكتشاف وتنفيذ أكواد JavaScript الخبيثة.

🔧 الأدوات المستخدمة:

  • Nmap

  • Firefox (مع إضافة FoxyProxy)

  • Burp Suite (مكون Proxy)

  • XSSer

📜 خطوات التنفيذ:

  1. تحديد عنوان IP الخاص بالهدف والوصول لتطبيق الويب Matilda: *

    • لو كتبت http://192.X.0.X (أو عنوان IP الخاص بالهدف) في متصفح Firefox، فسيظهر لك تطبيق الويب Matilda.

    • لو اخترت من قائمة ثغرات Matilda OWASP 2017 -> Cross-Site Scripting (XSS) -> Reflected (DNS Lookup).

    • لو أدخلت كلمة hello في حقل DNS Lookup وضغطت Lookup DNS.

  2. التقاط الطلب واستخراج الباراميتر باستخدام Burp Suite:

    • لو قمت بتشغيل Burp Suite.

    • لو ضبطت متصفح Firefox لاستخدام Burp Suite كبروكسي.

    • لو أعدت تحميل الصفحة أو أرسلت hello مرة أخرى، فسيعترض Burp Suite الطلب.

    • لو فحصت الطلب في Burp Suite، فسيظهر لك الباراميتر الذي يتم حقنه (مثلاً target_host=hello).

      • 🔑 المعلومة الذهبية: XSSer يتطلب معرفة URL الهدف والباراميتر المستهدف.

  3. استخدام XSSer لاكتشاف XSS تلقائياً:

    • الأمر الأساسي لـ XSSer: xsser -u [Target URL] -p [Vulnerable Parameter] --auto

    • أهم الخيارات (Flags):

      • -u: لتحديد عنوان URL الهدف.

      • -p: لتحديد الباراميتر المعرض للحقن (مثلاً target_host=XSS).

        • 💡 معلومة ذهبية: عند استخدام -p مع XSSer، استبدل القيمة الأصلية للباراميتر بـ XSS.

      • --auto: لتجربة العديد من الـ payloads تلقائياً.

      • --custom-payload أو --fp: لتحديد payload XSS مخصص.

    • لو نفذت الأمر التالي (مع استبدال [Target URL]):

      xsser -u "http://192.0.X.0/xss/xss_reflected_get.php?target_host=XSS" -p "target_host=XSS" --auto
      • فسيبدأ XSSer في إرسال الآلاف من الـ payloads تلقائياً.

      • لو انتهى XSSer، فسيظهر لك قائمة بالـ payloads التي نجحت في تنفيذ XSS.

  4. اختبار XSS بـ payload مخصص (يدوياً أو باستخدام XSSer):

    • لو أردت اختبار payload XSS بسيط، فيمكنك إدخاله مباشرة في حقل البحث في المتصفح.

    • لو أدخلت <script>alert('XSS')</script> في حقل DNS Lookup وضغطت Lookup DNS، فسيظهر مربع تنبيه alert، مما يؤكد الثغرة.

    • لو أردت استخدام XSSer مع payload مخصص:

      xsser -u "http://192.X.0.X/xss/xss_reflected_get.php?target_host=XSS" -p "target_host=XSS" --fp "<script>alert('1')</script>"
      • فسيظهر لك XSSer رابطاً يحتوي على الـ payload، ويمكنك فتحه في المتصفح (بعد إيقاف Burp Suite) لتأكيد ظهور مربع التنبيه.

نقاط التحقق:

  • لو أظهر XSSer قائمة بالـ payloads الناجحة.

  • لو ظهر مربع تنبيه alert في المتصفح بعد تنفيذ الـ payload (يدوياً أو عبر الرابط الذي ينتجه XSSer)، فهذا يؤكد نجاح استغلال XSS.

Last updated