Релиз на http-сървъра Apache 2.4.58 с отстранени DoS уязвимости в HTTP/2

Публикувано е издание на HTTP сървъра Apache 2.4.58, в което са внедрени 33 изменения и поправени три уязвимости, две от които са свързани с възможността за извършване на DoS атака на системи, използващи протокол HTTP/2.

  • CVE-2023-45802 — создание условий для исчерпания свободной памяти из-за отложенного освобождения памяти после сброса потока HTTP/2 пакетом с флагом RST. Так как память освобождается не сразу после обработки флага RST, а только после закрытия соединения, атакующий может значительно повысить потребление памяти, отправляя новые запросы и сбрасывая их RST-пакетом, но при этом не закрывая соединение.
  • CVE-2023-43622 — бесконечная блокировка обработки соединения HTTP/2, если оно было открыто с выставлением в 0 начального размера скользящего окна. Уязвимость может использоваться для организации отказа в обслуживании через исчерпание лимита на максимально допустимое число открытых соединений.
  • CVE-2023-31122 — уязвимость в mod_macro, приводящая к чтению данных из области вне выделенного буфера.

Сред измененията, несвързани със сигурността:

  • В mod_http2 добавлена поддержка использования протокола WebSocket поверх потока в соединении HTTP/2 (RFC 8441). Для включения WebSocket поверх HTTP/2 предложена директива ‘H2WebSockets on|off’.
  • В mod_http2 добавлена директива ‘H2EarlyHint name value’ для добавлена заголовков в ответ «103 Early Hints».
  • В mod_http2 добавлена директива ‘H2ProxyRequests on|off’ для управление включением обработки запросов по протоколу HTTP/2 в конфигурации прокси.
  • В mod_http2 добавлена директива ‘H2MaxDataFrameLen n’ для ограничения максимального размера тела ответа в байтах, передаваемого в одном DATA-кадре в HTTP/2. По умолчанию задан лимит в 16КБ.
  • Обновлён файл mime.types, в котором расширение «.js» привязано к типу ‘text/javascript’ вместо ‘application/javascript’ и добавлены расширения: «.mjs» (с типом ‘text/javascript’) и «.opus» (‘audio/ogg’). Добавлены MIME-типы и расширения, применяемые в WebAssembly.
  • Модулът mod_tls (алтернатива на mod_ssl на езика Rust) е преминал на използване на библиотеката rustls-ffi 0.9.2+.
  • В модуль mod_md добавлена директива ‘MDMatchNames all|servernames’ для управления сопоставлением MDomains с содержимым VirtualHosts.
  • В модуль mod_md добавлена директива ‘MDChallengeDns01Version’ для выбора версии протокола ACME, используемого при верификации через DNS.
  • В mod_md е разрешено да се използва директивата MDChallengeDns01 за отделни домейни.
  • В mod_dav добавлена директива ‘DavBasePath’ для настройки пути к корню репозитория WebDav.
  • В mod_alias добавлена директива ‘AliasPreservePath’ для использования в качестве полного пути значения Alias в блоке Location.
  • В mod_alias добавлена директива ‘RedirectRelative’, допускающая перенаправление с использованием относительных путей.
  • В директивата ErrorLogFormat са добавени спецификаторите на формата %{z} и %{strftime-format}.
  • В mod_deflate добавлена директива ‘DeflateAlterETag’ для управления изменением ETag при использовании сжатия.
  • Оптимизирана е производителността на функцията send_brigade_nonblocking().
  • В mod_status обеспечено удаление дубликатов ключей «BusyWorkers» и «IdleWorkers», и добавлен новый счётчик «GracefulWorkers».

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster