Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
http2-rst-stream-attacker — أداة قابلة للتكوين بشكل كبير للتحقق من قابلية تأثر الخادم بـ CVE-2023-44487 عن طريق إرسال إطارات HEADERS وRST_STREAM بسرعة وتوثيق استجابات الخادم. | Kitploit
أدوات/GitHubGitHub/ndrscodes/http2-rst-stream-attacker
تحليل الثغرات الأمنيةالاستغلالأمن الويباختبار الاختراق
GitHubndrscodes/http2-rst-stream-attacker

http2-rst-stream-attacker

أداة قابلة للتكوين بشكل كبير للتحقق من قابلية تأثر الخادم بـ CVE-2023-44487 عن طريق إرسال إطارات HEADERS وRST_STREAM بسرعة وتوثيق استجابات الخادم.

عرض المستودع
621منذ 2 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CVE-2023-44487 و http2-rst-stream-attacker

CVE-2023-44487

CVE-2023-44487 هو استغلال ضد بروتوكول HTTP2 نفسه. في HTTP2، يتم بدء طلبات البيانات عن طريق إرسال إطار HEADERS. بعد استلام هذا الإطار، يبدأ الخادم في معالجة طلبك، ثم يرسل إطارات DATA حتى يتم نقل جميع البيانات. كما حدد HTTP2 إطار RST_STREAM، والذي يمكن استخدامه لإغلاق دفق في أي نقطة. لمنع الهجمات، عادةً ما تحدّ الخوادم الحد الأقصى لعدد الدفقات المفتوحة في وقت واحد (إلى 100 افتراضيًا). إذا انتظر العملاء فعليًا استهلاك جميع الموارد، فنادرًا ما يتم الوصول إلى هذا الحد. يعمل الهجوم لسبب بسيط: يمكن للعميل إرسال إطار RST_STREAM في أي نقطة. إطار RST_STREAM يغلق دفقًا، والدفقات المغلقة لا تُحتسب كدفقات متزامنة. هذا يعني أن العميل يمكنه إرسال الطلبات بسرعة، دون الوصول أبدًا إلى هذا الحد، بمجرد إغلاق الاتصال مباشرة بعد إرسال الطلب. الخادم الذي يتم مهاجمته سيظل، في بعض الحالات، يبدأ في تحميل البيانات، مما يخلق حملًا مفرطًا.

تهدف هذه الأداة إلى فحص قابلية تأثر الخادم بهذا الهجوم. تنشئ اتصالًا أو أكثر من اتصالات HTTP2 المتزامنة، ثم ترسل الأعداد المحددة من إطارات HEADERS، تليها إطارات RST_STREAM.

كما توفر العديد من خيارات التكوين الأخرى، مثل التأخير بين إطارات HEADERS وإطارات RST_STREAM، وعدد الدفقات لفتحها، وكمية الإطارات المرسلة لكل دفق، وما إلى ذلك. بعد اكتمال الهجوم، تطبع ملخصًا يحتوي على معلومات حول عدد الإطارات المستلمة، بالإضافة إلى عدد الأخطاء وإطارات GOAWAY المستلمة. يمكن أن يساعدك هذا في تحديد ما إذا كانت خدماتك عرضة لـ CVE-2023-44487.

التشغيل

حاليًا، يتم توزيع هذه الأداة ككود مصدري فقط، مما يعني أن تثبيت go مطلوب. يمكن تنفيذ الأداة عن طريق تشغيل go run main.go <options>. هناك أيضًا سكربت python يمكن استخدامه لرسم معلومات زمن الاستجابة (latency) المكتوبة في ملف monitor.log.

الأدوات

بالإضافة إلى ذلك، أنشأت أدوات python جديدة لإجراء قياسات أكثر دقة وشمولًا. سيقرأ ملف runner.py الموجود في مجلد tooling القيم المحددة في ملف config.py الخاص بك (انظر config-sample.py للتفاصيل) ويشغّل جميع الاختبارات لجميع حاويات docker المحددة. ثم سيشغّل الاختبار الأكثر نجاحًا (أعلى وسيط + متوسط لزمن الاستجابة) لجميع المسارات المحددة في مصفوفة paths. سيُخرج رسومًا بيانية وملفات سجلات لكل اختبار تم تشغيله. لا تزال هذه الأدوات قيد التطوير. أنشأتها فقط لأنني كنت كسولًا جدًا لتشغيل كل هذه الاختبارات يدويًا لورقتنا البحثية. لا تتردد في إرسال PR لتنظيفها أو جعلها قابلة للاستخدام لأكثر من مجرد حالة الاستخدام الخاصة بنا.

خيارات CLI

حاليًا، يتم تنفيذ خيارات CLI التالية:

FlagDefaultالمعنى
frames1عدد إطارات HEADERS و RST_STREAM المرسلة على أي دفق
connections1عدد اتصالات TLS لتشغيل الهجوم عليها (بالتزامن)
consecutiveSends1عدد إطارات HEADERS المرسلة قبل إرسال إطارات RST_STREAM (لكل تدفق)
connectAttempts1عدد الاتصالات المتتالية لتشغيل الاختبار عليها (لكل روتين اتصال)
delay0الوقت (بالمللي ثانية) للانتظار بين إرسال إطارات HEADERS و RST_STREAM
ignoreGoAwayfalseإذا كان صحيحًا، فلن تتسبب دفقات GOAWAY في إنهاء روتين الاستلام. بدلاً من ذلك، سينتظر حتى عدم استلام أي إطار لأكثر من 10 ثوانٍ.
monitorfalseتمكين مراقبة الأداء
monitorDelay100الوقت (بالمللي ثانية) للانتظار بين اختبار زمن استجابة الخادم
monitorLog./monitor.logالملف الذي سيتم كتابة سجلات تأخير المراقبة إليه
routines1عدد الدفقات (streams) لمهاجمتها
skipValidationtrueإذا كان صحيحًا، فلن يتم التحقق من شهادة الخادم (هذا هو الافتراضي - لا نهتم بالأمان لأننا المهاجمون على أي حال)
timeout1000الوقت للانتظار لإطارات جديدة قبل اعتبار محاولة الاتصال غير صالحة وإيقافها
urlhttps://localhost:433/عنوان url لتشغيل الهجوم ضده

مثال على المخرجات

ستطبع الأداة الكثير من معلومات التصحيح، بالإضافة إلى ملخص. تحتوي معلومات التصحيح على معلومات حول طريقة إنشاء الاتصال وحول التقدم الحالي ونوع الإطارات التي يتم إرسالها حاليًا.

سيبدو الملخص شيئًا كهذا (اعتمادًا على التكوين الخاص بك)

root@kitploit:~
####################SUMMARY####################
Packet types received:
	PING: 2
	HEADERS: 12
	SETTINGS: 0
	DATA: 11
	GOAWAY: 3
	RSTSTREAM: 0
	WINDOWUPDATE: 0
	UNKNOWN: 0
Attack ending reasons (per receiving thread):
	GoAway events: 3
	Timeout events: 0
	Error events: 0
Summary for connection 2
	PING: 1
	HEADERS: 9
	SETTINGS: 0
	DATA: 6
	GOAWAY: 1
	RSTSTREAM: 0
	WINDOWUPDATE: 0
	UNKNOWN: 0
	Reason for stopping to listen for more packets: GoAway - the server responded as expected.
Summary for connection 1
	PING: 1
	HEADERS: 3
	SETTINGS: 0
	DATA: 5
	GOAWAY: 1
	RSTSTREAM: 0
	WINDOWUPDATE: 0
	UNKNOWN: 0
	Reason for stopping to listen for more packets: GoAway - the server responded as expected.
Summary for connection 0
	PING: 0
	HEADERS: 0
	SETTINGS: 0
	DATA: 0
	GOAWAY: 1
	RSTSTREAM: 0
	WINDOWUPDATE: 0
	UNKNOWN: 0
	Reason for stopping to listen for more packets: GoAway - the server responded as expected.

إذا كنت تعتقد أن هناك إحصائيات أخرى يجب جمعها - فلا تتردد في الاتصال بي أو إنشاء issue!

المهام المتبقية

  • حساب متوسط التأخير بين إرسال إطارات HEADERS واستلام أول إطار لهذا الطلب
  • حساب متوسط التأخير بين إرسال إطارات HEADERS واستلام إطارات GOAWAY، إن وجدت
  • حساب النسبة المئوية للاتصالات التي استجاب لها الخادم بشكل صحيح
  • حساب النسبة المئوية للدفقات (streams) التي استجاب لها الخادم بشكل صحيح (لكل اتصال وفي المجموع)
  • تضمين كمية الحزم المرسلة في الملخص

إخلاء المسؤولية

هذه الأداة مخصصة لأغراض البحث فقط. ليس المقصود منها تشغيل هجمات ضد خوادم لا تملكها أو تديرها بنفسك. لا أتحمل أي مسؤولية عن دقة الإحصائيات المقدمة، ولا عن الهجمات وعواقبها على الخوادم والخدمات.

تنزيل الأداة