
نسخة أفضل من أداتي xssfinder - تقوم بمسح أنواع مختلفة من xss على قائمة من عناوين URL.
هذا هو الإصدار الممتد بناءً على الفكرة الأولية التي تم نشرها بالفعل باسم "xssfinder". يسمح هذا الإصدار الخاص للمهاجم بأداء ليس فقط طلبات GET ولكن أيضًا POST. بالإضافة إلى ذلك، من الممكن توجيه كل طلب عبر Burp أو نفق آخر.
أعد تسمية example.app-settings.conf إلى app-settings.conf واضبط الإعدادات. يجب أن يعمل فورًا ولكن اعتمادًا على الهدف، أوصي بتغيير أحجام القطع (chunk sizes).
لا تتوقع هذه الأداة أي وسائط عبر سطر الأوامر (CLI)، لذا فقط اكتب:
python3 extended-xss-search.py
من الممكن تعيين الكثير من الخيارات والإعدادات، لذا إليك بعض التوضيحات.
ملف التكوين الرئيسي هو "app-settings.conf"، يجب فعل كل شيء في هذا الملف! بالإضافة إلى ذلك، هناك بعض الملفات الأخرى التي تسمح بتعيين بيانات أكثر تعقيدًا مثل الرؤوس (headers) وعناوين URL والكوكيز (cookies).
config/cookie-jar.txt
استخدم هذا الملف لإضافة سلسلة كوكيز. عادةً ما أنسخ السلسلة التي تراها في كل طلب Burp. يرجى فقط نسخ قيمة رأس "Cookie:". يوجد إدخال عينة في الملف الافتراضي.
config/http-headers.txt
يُعرف هذا الملف رؤوس HTTP التي تُضاف إلى الطلب ويتم التلاعب بها (يُضاف الحمولة (payload) إلى كل واحد). أهمها موجودة بالفعل في الملف. لكن لا تتردد في إضافة المزيد.
config/parameters.txt
تتوفر للأداة خيار تخمين معاملات GET و POST بقوة (brute force). في هذه الحالة، سيتم استخدام تلك المعاملات (بالإضافة إلى تلك الموجودة في سلسلة الاستعلام). يحصل كل معامل على الحمولة (payload) كقيمة. أهمها موجودة بالفعل في ذلك الملف.
config/urls-to-test.txt
هذا هو الملف الذي تحتاجه! يرجى إضافة روابطك لمسحها هنا. الصيغ التالية مسموح بها:
عندما يتم اكتشاف الحالة الأخيرة، يتم إضافة "http://" في البداية. هذه الأداة مصممة للعمل مع قائمة جيدة من عناوين URL. طريقة جيدة للحصول على واحدة هي تصديرها باستخدام Burp. ثم ستحصل على قائمة صالحة من عناوين URL. كل ما عليك فعله هو إضافة الكوكيز الخاصة بك.
logs/
هذا هو مجلد السجلات حيث يتم تسجيل كل شيء!
يحدد ملف app-settings.conf سير عمل البرنامج. إنه الملف الأكثر أهمية، يمكنك تنشيط/إلغاء تنشيط وحدات مختلفة فيه.
الإعدادات الأساسية
HTTPTimeout
بعض الطلبات قد تستغرق وقتًا طويلاً. هنا يمكنك تحديد أقصى وقت تنفيذ لطلب واحد. أوصي بقيم بين 2 و 6 ثوانٍ.
MaxThreads
كلما زاد عدد الخيوط (threads)، زادت سرعة البرنامج النصي - ولكن نظرًا لأننا نتعامل مع الكثير من الاتصالات، عادةً ما أُبقي هذا أقل من 10 على جهاز الكمبيوتر الشخصي الخاص بي وحوالي 30 على خادمي الخاص (VPS).
أنواع الهجوم
OnlyBaseRequest
تعيين هذا إلى true سيؤدي إلى "طلبات أساسية" فقط - وهذا يعني أن قائمة عناوين URL تتم زحفها (spidered) ويتم استخراج المعاملات المثيرة للاهتمام. يمكنك استخدام ذلك لملء خريطة موقع Burp بسرعة.
UsePost
يمكنك تخطي طلبات POST عن طريق تعيين هذا إلى "false"
UseGet
هذا مشابه - تخطي طلبات GET إذا تم تعيينه إلى "false"
إعدادات أنواع الهجوم
GetChunkSize
كم عدد معاملات GET لاختبارها في طلب واحد؟
PostChunkSize
كم عدد معاملات POST لاختبارها في طلب واحد؟
النفق (Tunneling)
من الممكن أيضًا استخدام نفق، مثل "127.0.0.1:8080" (وكيل Burp)، لمراقبة كل حركة المرور داخل Burp.
Active
تعيين هذا إلى "true" سيجبر البرنامج النصي على استخدام اتصال عبر نفق.
Tunnel
اضبط هنا خادم الوكيل الخاص بك "ip:port".
النتيجة هي التالية، عندما تفتح Burp يمكنك مشاهدة سجل HTTP الخاص بك:



يرجى فقط إنشاء مشكلة (issue) ووضع علامة عليها كطلب ميزة (feature request).
هل تعجبك هذه الأداة؟ هل ساعدتك في الحصول على مكافأة؟ تريد رد الجميل/دعمي؟ لم لا!