HTTP/1.1 снова под ударом: уязвимость угрожает миллионам сайтов

HTTP/1.1 снова под ударом: уязвимость угрожает миллионам сайтов

HTTP/1.1 снова под ударом: уязвимость угрожает миллионам сайтов

Исследователи из PortSwigger снова подняли тревогу: устаревший протокол HTTP/1.1 по-прежнему таит в себе серьёзную уязвимость, из-за которой под ударом оказываются миллионы сайтов. Несмотря на то что о проблеме известно уже с 2019 года, корневая причина так и не устранена.

Речь идёт о так называемых HTTP desync-атаках — когда злоумышленник отправляет специально оформленные запросы, которые сервер и прокси-системы интерпретируют по-разному.

В итоге можно «впихнуть» вредоносный запрос, который обходит защиту и выполняется на бэкенде как нормальный. Такие атаки используют расхождения в обработке HTTP-заголовков — особенно в том, где один запрос заканчивается и начинается следующий. И эта путаница заложена в саму архитектуру HTTP/1.1.

Что ещё хуже — даже те меры защиты, которые разработчики вводили за последние шесть лет, исследователям удавалось обойти. И не один раз.

Команда PortSwigger опубликовала новую волну исследований, показав, что десинхронизация до сих пор работает — и позволяет атаковать даже крупные CDN и десятки миллионов сайтов. Они призывают к радикальным мерам: полностью отказаться от HTTP/1.1. Кампания даже получила громкое название — «HTTP/1.1 Must Die: The Desync Endgame».

По словам специалистов, просто включить HTTP/2 на внешних серверах недостаточно. Уязвимость кроется глубже — в соединениях между реверс-прокси и самими серверами приложений. Если эти внутренние звенья всё ещё используют HTTP/1.1, атака возможна.

Что делать? Вот рекомендации исследователей:

  • Внедрить поддержку HTTP/2 не только на границе, но и на всех внутренних каналах между прокси и сервером;
  • Убедиться, что backend умеет работать с HTTP/2;
  • Если отказаться от HTTP/1.1 пока не получается — включить проверку и нормализацию HTTP-запросов на фронте;
  • По возможности отключить повторное использование соединений на промежуточных участках;
  • И, конечно, поговорить с поставщиками решений: поддерживают ли они безопасную работу через HTTP/2.

Кроме того, в сообществе уже появились инструменты, которые помогут проверять свои ресурсы на уязвимость — например, HTTP Request Smuggler v3.0 и HTTP Hacker. Эти утилиты пригодятся для регулярных сканирований и укрепления защиты.

Главный вывод: пора уходить от HTTP/1.1. Чем дольше индустрия тянет с переходом на современные протоколы, тем больше шансов, что уязвимости продолжат использовать. И никакие заплатки здесь уже не помогут.