
يعرض هذا المشروع محاكاة لجدار حماية تطبيقات الويب (WAF) باستخدام Flask، بالإضافة إلى أداة فحص ثغرات لـ CVE-2017-5638. تقوم البرمجية الوسيطة (middleware) الخاصة بـ WAF بحظر طلبات HTTP التي تحتوي على أنماط محددة، بينما تقوم أداة فحص الثغرات باختبار ثغرة Apache Struts 2 واستغلالها (CVE-2017-5638).
يعرض هذا المشروع محاكاة لجدار حماية تطبيقات الويب (WAF) باستخدام Flask وأداة فحص ثغرات خاصة بـ CVE-2017-5638. تقوم وسيطة جدار الحماية (WAF) بحظر طلبات HTTP التي تحتوي على أنماط محددة، بينما تختبر أداة فحص الثغرات ثغرة Apache Struts 2 (CVE-2017-5638) وتستغلها.
server.py: يتضمن خادم الويب هذا المبني على Flask وسيطة جدار حماية (WAF) تمنع طلبات HTTP التي تحتوي على أنماط يحتمل أن تكون ضارة. vulnerable.py: يتحقق هذا السكربت من وجود ثغرة CVE-2017-5638 ويمكنه تنفيذ أوامر عشوائية إذا كان الهدف عرضة للثغرة.
يقوم سكربت server.py بإعداد خادم ويب Flask مع وسيطة جدار حماية (WAF) تفحص الطلبات الواردة بحثًا عن أنماط ضارة محددة. إذا تم اكتشاف نمط محظور، يُرفض الطلب مع استجابة 403 Forbidden.
تثبيت Flask: pip install flask تشغيل الخادم: python server.py قم بالوصول إلى الخادم على http://127.0.0.1:5000/.
يتحقق سكربت vulnerable.py مما إذا كان عنوان URL معين عرضة لثغرة CVE-2017-5638 ويمكنه تنفيذ أوامر على الخادم المعرض للثغرة.
تثبيت المكتبات المطلوبة:
pip install requests التحقق مما إذا كان عنوان URL عرضة للثغرة:
python vulnerable.py --url http://example.com --check تنفيذ أمر على عنوان URL عرضة للثغرة:
python vulnerable.py --url http://example.com -c "whoami"
يعمل سكربت server.py كعرض توضيحي أساسي لجدار حماية تطبيقات الويب باستخدام Flask. في السيناريو الواقعي، ينبغي استخدام تقنيات وأنماط أكثر تطورًا.