Уязвимость DoS атаки в HTTP/2 из-за некорректного парсинга протоколом HTTP.sys специально сформированных запросов
Описание
Существует уязвимость в протоколе HTTP/2, заключающаяся в некорректной обработке сетевым стеком протокола HTTP.sys специально сформированных HTTP/2 запросов. Злоумышленник, успешно использующий эту уязвимость, способен создать условия для DoS атаки, что приведет к недоступности целевой системы.
Условия эксплуатации
Для эксплуатации уязвимости злоумышленник может отправить специально сформированный HTTP-пакет на целевую систему, что приведет к потере ее отклика.
Решение
Обновление решает данную уязвимость путем изменения обработки запросов HTTP/2 в протоколе HTTP.sys Windows. Обратите внимание, что DoS атака не позволяет злоумышленнику выполнять код или повышать уровень доступа пользователя.
Меры защиты
Следующая мера защиты может быть полезна:
-
Отключение протокола HTTP/2 на веб-сервере с помощью редактора реестра
Важно: Некорректное использование редактора реестра может вызвать серьезные проблемы, которые могут потребовать переустановки операционной системы. Microsoft не гарантирует решение проблем, возникших из-за неправильного использования редактора реестра. Используйте редактор реестра на свой страх и риск.
Инструкции:
- Нажмите Пуск, выберите Выполнить, введите Regedit в поле Открыть, затем нажмите OK.
- Перейдите по следующему пути реестра:
HKLM\SYSTEM\CurrentControlSet\Services\HTTP\Parameters
. - Установите для значений типа DWORD
EnableHttp2TIs
иEnableHttp2Cleartext
одно из следующих значений:- Установите 0, чтобы отключить HTTP/2.
- Установите 1, чтобы включить HTTP/2.
- Закройте редактор реестра.
- Перезагрузите компьютер.
Часто задаваемые вопросы (FAQ)
После установки обновлений для HTTP/2, нужно ли что-либо еще сделать для защиты от этой уязвимости?
Да. Обновление добавляет настройки конфигурации на сервер IIS, но они по умолчанию отключены. Для полной защиты администратору необходимо настроить сервер на ограничение количества принимаемых HTTP/2 пакетов. Это может различаться в зависимости от окружения и выполняемых на сервере служб.
Конкретные настройки подключения
- Нажмите Пуск, выберите Выполнить, введите Regedit в поле Открыть, затем нажмите OK.
- Перейдите по следующему пути реестра:
HKLM\SYSTEM\CurrentControlSet\Services\HTTP\Parameters
. - Установите значение типа DWORD для
Http2MaxPingsPerMinute
в пределах от 0 до 0xFF. Это значение определяет максимальное число пингов в минуту, которые клиент может отправить серверу. - Закройте редактор реестра.
- Перезагрузите компьютер.
Настройки потоков
- Нажмите Пуск, выберите Выполнить, введите Regedit в поле Открыть, затем нажмите OK.
- Перейдите по следующему пути реестра:
HKLM\SYSTEM\CurrentControlSet\Services\HTTP\Parameters
. - Установите значения типа DWORD для ключей:
Http2MaxServerResetsPerMinute
от 0 до **0xFFFF`. Определяет максимальное количество запросов в минуту от клиента, которые могут вызывать сбросы сервера.Http2MaxPrioritiesPerStream
от 0 до **0xFF`.Http2MaxResetsPerStream
от 0 до **0xFF`.Http2MaxUnknownsPerStream
от 0 до **0xFF`.Http2MaxWindowUpdatesPerSend
от 0 до **0xFF`.Http2MinimumSendWindowSize
от 0 до **0xFFFF`.
- Закройте редактор реестра.
- Перезагрузите компьютер.
Обновления
Продукт | Статья | Обновление |
---|---|---|
Windows 10 for 32-bit Systems | ||
Windows 10 for x64-based Systems | ||
Windows Server 2016 | ||
Windows 10 Version 1607 for 32-bit Systems | ||
Windows 10 Version 1607 for x64-based Systems | ||
Windows Server 2016 (Server Core installation) | ||
Windows 10 Version 1703 for 32-bit Systems | ||
Windows 10 Version 1703 for x64-based Systems | ||
Windows 10 Version 1709 for 32-bit Systems | ||
Windows 10 Version 1709 for x64-based Systems |
Показывать по
Возможность эксплуатации
Publicly Disclosed
Exploited
Latest Software Release
Older Software Release
DOS
EPSS
7.5 High
CVSS3
Связанные уязвимости
Some HTTP/2 implementations are vulnerable to ping floods, potentially leading to a denial of service. The attacker sends continual pings to an HTTP/2 peer, causing the peer to build an internal queue of responses. Depending on how efficiently this data is queued, this can consume excess CPU, memory, or both.
Some HTTP/2 implementations are vulnerable to ping floods, potentially leading to a denial of service. The attacker sends continual pings to an HTTP/2 peer, causing the peer to build an internal queue of responses. Depending on how efficiently this data is queued, this can consume excess CPU, memory, or both.
Some HTTP/2 implementations are vulnerable to ping floods, potentially leading to a denial of service. The attacker sends continual pings to an HTTP/2 peer, causing the peer to build an internal queue of responses. Depending on how efficiently this data is queued, this can consume excess CPU, memory, or both.
Some HTTP/2 implementations are vulnerable to ping floods, potentially ...
EPSS
7.5 High
CVSS3