الملخص
إطارات "إعدادات" HTTP/2 تستخدمها نقاط النهاية لتبادل محددات الإعدادات المعرفة مع بعضها البعض. لا يحدد البروتوكول HTTP/2 أي حد عملي على عدد إعدادات المعلمات المدرجة في إطار إعدادات الفردية (الحد الأقصى المسموح به هو 2796202) وليس هناك قيد على عدد المرات التي يتم فيها تبادل مثل هذه الإطارات إعدادات.
عميل ضار باستخدام HTTP/2 يمكن استغلال هذه الحقيقة لجعل نظام خادم HTTP/2 مؤقتاً غير مستقر، عن طريق زيادة استخدام وحدة المعالجة المركزية إلى 100% قبل أن يتم إنهاء الاتصالات بخدمات معلومات إنترنت (IIS).
الحل
ولمعالجة هذه المشكلة، Microsoft بتوفير إمكانية وضع حدود لعدد معلمات إعدادات HTTP/2 المسموح به عبر اتصال. هذه الحدود لم يتم مسبقاً من قبل Microsoft ويجب تعريفها بواسطة مسؤول النظام بعد مراجعة بروتوكول HTTP/2 ومتطلبات البيئة الخاصة بهم.
لتعيين الحدود فيما تضاف إدخالات التسجيل التاليان:
المسار: Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters
الاسم: Http2MaxSettingsPerFrame
النوع: DWORD
اعتماد البيانات: القيمة الدنيا 7 والحد الأقصى 2796202. قطع خارج نطاق القيم إلى القيمة المطابقة في النهاية الحد الأدنى/الحد الأقصى.
المسار: Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters
الاسم: Http2MaxSettingsPerMinute
النوع: DWORD
البيانات: اعتماد القيمة الدنيا 7. قطع أصغر من القيمة إلى القيمة الدنيا.
ملاحظة:: مطلوب إعادة تشغيل الجهاز، أو إعادة تشغيل الخدمة لقراءة قيم تسجيل المكون، عندما يتم إضافتها لأول مرة أو تغييرها.
مع تعيين الحدود،
-
أناواحد و s يحتوي الإطار على أكثر الإعدادمعلمات ettings من "Http2MaxSettingsPerFrame" قيمة، ثم قتل هذا الاتصال فورا.
-
أناو العدد من settings المعلمات الموجودة في عدة إعدادات تقاطع الإطارات المتلقاة بعد دقيقة "Http2MaxSettingsPerMinute" قيمة، ثم قتل الاتصال.
عندما شكل مناسب السالفة، تعليمات حدين معا لإنهاء الاتصال الضارة انتهاك هذه الحدود وتشكل نقطة انطلاق للاتصالات الشرعية