
WAFNinja هي أداة تحتوي على وظيفتين لمهاجمة جدران الحماية لتطبيقات الويب.
WAFNinja - الأداة المفضلة لمختبر الاختراق لاختراق جدران الحماية (WAF)
WAFNinja هي أداة سطر أوامر مكتوبة بلغة بايثون. تهدف إلى مساعدة مختبر الاختراق في تجاوز جدار الحماية (WAF) من خلال أتمتة الخطوات اللازمة لتجاوز التحقق من صحة الإدخال. تم إنشاء الأداة بهدف أن تكون قابلة للتوسيع بسهولة، وبسيطة الاستخدام، وقابلة للاستخدام في بيئة فريق. تأتي الأداة مع العديد من الحمولات وسلاسل الفازينج (fuzzing strings) المخزنة في ملف قاعدة بيانات محلية. تدعم WAFNinja اتصالات HTTP، وطلبات GET و POST، واستخدام ملفات تعريف الارتباط (Cookies) للوصول إلى الصفحات المقيدة للمستخدمين الموثقين. كما يمكن إعداد وسيط اعتراض (intercepting proxy).
التثبيت:
git clone https://github.com/khalilbijjou/WAFNinja && cd WAFNinja
pip install -r requirements.txt
الاستخدام:
wafninja.py [-h] [-v] {fuzz, bypass, insert-fuzz, insert-bypass, set-db} ...
مثال:
fuzz:
python wafninja.py fuzz -u "http://www.target.com/index.php?id=FUZZ"
-c "phpsessid=value" -t xss -o output.html
bypass:
python wafninja.py bypass -u "http://www.target.com/index.php" -p "Name=PAYLOAD&Submit=Submit"
-c "phpsessid=value" -t xss -o output.html
insert-fuzz:
python wafninja.py insert-fuzz -i select -e select -t sql
الوسائط الموضعية: {fuzz, bypass, insert-fuzz, insert-bypass, set-db}
أي وظيفة تريد استخدامها؟
fuzz التحقق من الرموز والكلمات المفتاحية المسموح بها من قبل WAF.
bypass إرسال الحمولات من قاعدة البيانات إلى الهدف.
insert-fuzz إضافة سلسلة فازينج
insert-bypass إضافة حمولة إلى قائمة التجاوز
set-db استخدام ملف قاعدة بيانات آخر. مفيد لمشاركة نفس قاعدة البيانات مع الآخرين.
الوسائط الاختيارية:
-h, --help عرض رسالة المساعدة هذه والخروج
-v, --version عرض رقم إصدار البرنامج والخروج
أقدر أي ملاحظات! تحياتي، خليل.