
سكربتات استغلال تعليمية لهجمات HTTP/3 (CVE-2022-30592) وتتضمن HTTP3-loris وHTTP3-stream وHTTP3-flooding، وقد تم اختبارها ضد الخوادم التي تدعم QUIC.
استنادًا إلى العمل: E. Chatzoglou, V. Kouliaridis, G. Kambourakis, G. Karopoulos, and S. Gritzalis, "نظرة عملية على أمان HTTP/3 من خلال عدسة HTTP/2 ومجموعة بيانات عامة", Computers & Security, p. 103051, 2022.
الغرض من هذا المستودع الحالي هو مشاركة النصوص البرمجية التي استخدمناها للأغراض التعليمية. كانت هذه الهجمات جزءًا من دراستنا، وتم اختبارها ضد 6 خوادم مختلفة تدعم QUIC (IIS, NGINX, LiteSpeed, Cloudflare, H2O, and Caddy) والتي تم تكوينها للتواصل عبر HTTP/3. النص البرمجي http-stream هو استغلال لثغرة CVE-2022-30592 التي أثرت على مكتبة lsquic. يمكن أيضًا استغلال هذا النص البرمجي ضد خادم Litespeed.
لاستغلال هذه الهجمات، تم استخدام عميل Ubuntu 18.04، بمساعدة مكتبة aioquic Python لهجمات HTTP3-loris و HTTP3-stream. بالنسبة لهجوم HTTP3-flooding، تم استخدام أداة curl مع دعم HTTP/3. تتناول التعليمات التالية تثبيت aioquic لهجمات HTTP3-loris و HTTP3-stream.
قم بتغيير معامل URL إلى عنوان الهدف. لاحظ أنه بناءً على قدرات الخادم المستهدف، قد تكون هناك حاجة لقيم مختلفة لكل معامل في الاستغلالات.
تتناول التعليمات التالية تثبيت curl لهجوم HTTP3-flooding.
بعد الاتصال بـ bash داخل الحاوية، قم بتنفيذ ./http3-flood.sh.
====================================================
MIT License
حقوق النشر (c) 2022 Efstratios Chatzoglou
يُمنح الإذن بموجب هذا، مجانًا، لأي شخص يحصل على نسخة من هذا البرنامج وملفات التوثيق المرتبطة به (الـ "برنامج")، للتعامل مع البرنامج دون قيود، بما في ذلك دون حصر حقوق الاستخدام والنسخ والتعديل والدمج والنشر والتوزيع والترخيص و/أو بيع نسخ من البرنامج، والسماح للأشخاص الذين يتم تزويدهم بالبرنامج بفعل ذلك، شريطة الالتزام بالشروط التالية:
يجب تضمين إشعار حقوق النشر أعلاه وإذن الإذن هذا في جميع النسخ أو الأجزاء الجوهرية من البرنامج.
يتم تقديم البرنامج "كما هو"، دون أي ضمان من أي نوع، صريح أو ضمني، بما في ذلك على سبيل المثال لا الحصر ضمانات القابلية للتسويق والملاءمة لغرض معين وعدم الانتهاك. في أي حال من الأحوال لا يكون المؤلفون أو أصحاب حقوق النشر مسؤولين عن أي دعوى أو أضرار أو مسؤولية أخرى، سواء في إطار عقد أو تقصير أو غير ذلك، تنشأ عن أو تتعلق بالبرنامج أو استخدامه أو التعاملات الأخرى في البرنامج.