Wydanie serwera http Apache 2.4.58 z usunięciem podatności DoS w HTTP/2

Opublikowano wydanie serwera HTTP Apache 2.4.58, które wprowadza 33 zmiany i eliminuje trzy luki w zabezpieczeniach, z których dwie są związane z możliwością przeprowadzenia ataku DoS na systemy korzystające z protokołu HTTP/2.

  • CVE-2023-45802 — tworzenie warunków do wyczerpania dostępnej pamięci z powodu opóźnionego zwolnienia pamięci po zresetowaniu strumienia HTTP/2 pakietem z flagą RST. Ponieważ pamięć nie jest zwalniana natychmiast po przetworzeniu flagi RST, ale dopiero po zamknięciu połączenia, atakujący może znacznie zwiększyć zużycie pamięci, wysyłając nowe żądania i resetując je pakietem RST, nie zamykając przy tym połączenia.
  • CVE-2023-43622 — nieskończona blokada przetwarzania połączenia HTTP/2, jeśli zostało ono otwarte z ustawionym na 0 początkowym rozmiarem okna przesuwnego. Luka może zostać wykorzystana do zorganizowania odmowy usługi poprzez wyczerpanie limitu maksymalnej liczby otwartych połączeń.
  • CVE-2023-31122 — luka w mod_macro, prowadząca do odczytu danych z obszaru poza przydzielonym buforem.

Wśród zmian niezwiązanych z bezpieczeństwem:

  • W mod_http2 dodano wsparcie dla użycia protokołu WebSocket na strumieniu w połączeniu HTTP/2 (RFC 8441). Dla włączenia WebSocket nad HTTP/2 zaproponowano dyrektywę ‘H2WebSockets on|off’.
  • W mod_http2 dodano dyrektywę ‘H2EarlyHint name value’ dla dodawania nagłówków w odpowiedzi ‘103 Early Hints’.
  • W mod_http2 dodano dyrektywę ‘H2ProxyRequests on|off’ do zarządzania włączaniem przetwarzania żądań przez protokół HTTP/2 w konfiguracji proxy.
  • W mod_http2 dodano dyrektywę ‘H2MaxDataFrameLen n’ do ograniczenia maksymalnego rozmiaru ciała odpowiedzi w bajtach, przesyłanego w jednym kadrach DATA w HTTP/2. Domyślnie ustawiono limit na 16KB.
  • Zaktualizowano plik mime.types, w którym rozszerzenie ‘.js’ jest przypisane do typu ‘text/javascript’ zamiast ‘application/javascript’ oraz dodano rozszerzenia: ‘.mjs’ (z typem ‘text/javascript’) i ‘.opus’ (‘audio/ogg’). Dodano typy MIME i rozszerzenia stosowane w WebAssembly.
  • Moduł mod_tls (alternatywa dla mod_ssl w języku Rust) został przetłumaczony na użycie biblioteki rustls-ffi 0.9.2+.
  • W module mod_md dodano dyrektywę ‘MDMatchNames all|servernames’ do zarządzania mapowaniem MDomains z zawartością VirtualHosts.
  • W module mod_md dodano dyrektywę ‘MDChallengeDns01Version’ do wyboru wersji protokołu ACME używanego podczas weryfikacji przez DNS.
  • W mod_md zezwolono na użycie dyrektywy MDChallengeDns01 dla poszczególnych domenów.
  • W mod_dav dodano polecenie ‚DavBasePath’ do konfiguracji ścieżki do katalogu głównego repozytorium WebDav.
  • W mod_alias dodano polecenie ‚AliasPreservePath’ do użycia jako pełnej ścieżki wartości Alias w bloku Location.
  • W mod_alias dodano polecenie ‚RedirectRelative’, które umożliwia przekierowanie z użyciem ścieżek względnych.
  • Do polecenia ErrorLogFormat dodano specyfikatory formatu %{z} i %{strftime-format}.
  • W mod_deflate dodano polecenie ‚DeflateAlterETag’ do zarządzania zmianą ETag przy użyciu kompresji.
  • Przeprowadzono optymalizację wydajności funkcji send_brigade_nonblocking().
  • W mod_status zapewniono usunięcie duplikatów kluczy „BusyWorkers” i „IdleWorkers”, oraz dodano nowy licznik „GracefulWorkers”.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster