HTTP/2 – отказ от обслуживания
Если ты думаешь, что Netflix – это только развлекательная компания, которая снимает и показывает сериалы, то ты несколько ошибаешься. Работа Netflix напрямую зависит от вопросов защиты информации, поскольку без браузеров и мобильных платформ компания просто не смогла бы предоставлять свои услуги. Так что, прокрастинируя с очередным сериалом, не забывай про безопасность. Тем более, что компания сама напоминает о ней.
Недавно Netflix опубликовала отчёт, в котором указала на уязвимости, обнаруженные в протоколе HTTP/2. Что же такого нарыли сериальщики в самом распространённом сетевом протоколе?
Оказывается, что злоумышленнику достаточно просто подключиться к серверу по протоколу HTTP/2 и начать посылать запросы, принципиально не отвечая на предыдущий ответ сервера.
В силу того, что HTTP/2 использует мультиплексирование запросов посредством транспортного протокола TCP, клиенту нужно открыть сразу несколько потоков, по которым такой “разговор”и будет осуществляться. И поскольку TCP должен обеспечивать передачу данных без потерь, бедняга-сервер, следуя требованиям, будет вынужден хранить целую очередь ответов, которая, разрастаясь, займёт всё предоставленное и не предоставленное ей пространство. В итоге, сервер либо начнёт просто тормозить, либо совсем перестанет отвечать на запросы, придавленный тяжестью собственных воспоминаний.
Такому типу DoS-атак подвержены Amazon, Apache, Apple, Facebook, Microsoft, Nginx. Ну и вообще, 40% самых популярных интернет-ресурсов. То есть, все, кто пользуется протоколом HTTP/2.
Microsoft, Apple и другие заинтересованные интернет-компании уже заявили, что частично исправили уязвимости в протоколе, ведь протокол – это всего лишь последовательность, в которой клиент и сервер обмениваются сообщениями, а значит, каждый может внести корректировки в логику работы своих сервисов.