wydanie serwera HTTP Apache 2.4.41 (wydanie 2.4.40 zostało pominięte), w którym przedstawiono i usunięto :
- — problem w mod_http2, który może prowadzić do uszkodzenia pamięci podczas wysyłania zapytań push na bardzo wczesnym etapie. Używając ustawienia „H2PushResource” istnieje możliwość nadpisania obszaru pamięci w puli przetwarzania zapytań, ale problem jest ograniczony do awarii, ponieważ zapisywane dane nie opierają się na informacjach uzyskanych od klienta;
- — podatność niedawno luką DoS w implementacjach HTTP/2.
Atakujący może wyczerpać dostępna pamięć procesu i stworzyć duże obciążenie procesora, otwierając przesuwne okno HTTP/2 do wysyłania danych przez serwer bez ograniczeń, zachowując jednocześnie okno TCP zamknięte, co uniemożliwia faktyczne zarejestrowanie danych w gniazdku; - — problem w mod_rewrite, który pozwala użyć serwera do przekierowywania żądań do innych zasobów (open redirect). Niektóre ustawienia mod_rewrite mogą prowadzić do przekierowania użytkownika na inny link, zakodowany przy użyciu znaku nowej linii w parametrze używanym w istniejącym przekierowaniu. Aby zablokować problem, w RegexDefaultOptions można użyć flagi PCRE_DOTALL, która jest teraz domyślnie ustawiona;
- — możliwość przeprowadzenia ataku XSS na stronach błędów generowanych przez mod_proxy. Na tych stronach w linku podstawiany jest URL uzyskany z zapytania, w którym atakujący przez eskalację znaków może podstawić dowolny kod HTML;
- — przepełnienie stosu i dereferencjonowanie wskaźnika NULL w mod_remoteip, eksploatowane poprzez manipulacje nagłówkiem protokołu PROXY. Atak można przeprowadzić tylko ze strony używanego w ustawieniach serwera proxy, a nie poprzez zapytanie klienta;
- — luka w mod_http2, która pozwala podczas zakończenia połączenia na zainicjowanie odczytu zawartości z już zwolnionego obszaru pamięci (read-after-free).
Najbardziej zauważalne zmiany niezwiązane z bezpieczeństwem:
- W mod_proxy_balancer wzmocniono ochronę przed atakami XSS/XSRF ze strony zaufanych węzłów;
- W mod_session dodano ustawienie SessionExpiryUpdateInterval w celu określenia interwału aktualizacji czasu wygaśnięcia sesji/cookie;
- Przeprowadzono czyszczenie stron z błędami, mające na celu wykluczenie wyświetlania na tych stronach informacji z zapytań;
- W mod_http2 dodano obsługę wartości parametru „LimitRequestFieldSize”, który wcześniej obowiązywał tylko podczas sprawdzania pól nagłówków HTTP/1.1;
- Umożliwiono stworzenie konfiguracji mod_proxy_hcheck przy jego użyciu w BalancerMember;
- Zredukowano zużycie pamięci w mod_dav podczas używania polecenia PROPFIND nad dużą kolekcją;
- W mod_proxy i mod_ssl rozwiązano problemy z określaniem ustawień certyfikatów i SSL w obrębie bloku Proxy;
- W mod_proxy zezwolono na stosowanie ustawień SSLProxyCheckPeer* dla wszystkich modułów proxy;
- Rozszerzone możliwości modułu , przez projekt Let’s Encrypt w celu automatyzacji uzyskiwania i zarządzania certyfikatami z wykorzystaniem protokołu ACME (Automatic Certificate Management Environment):
- Dodano drugą wersję protokołu , która teraz jest wykorzystywana domyślnie i puste żądania POST zamiast GET.
- Dodano wsparcie dla weryfikacji opartej na rozszerzeniu TLS-ALPN-01 (RFC 7301, Application-Layer Protocol Negotiation), które jest używane w HTTP/2.
- Zaprzestano wsparcia dla metody weryfikacji ‘tls-sni-01’ (ze względu na ).
- Dodano polecenia do konfigurowania i przerywania weryfikacji metodą ‘dns-01’.
- Dodano wsparcie dla w certyfikatach przy włączonej weryfikacji opartej na DNS (‘dns-01’).
- Zrealizowano obsługę ‘md-status’ i stronę ze stanem certyfikatu „https://domain/.httpd/certificate-status”.
- Dodano dyrektywy „MDCertificateFile” i „MDCertificateKeyFile” do konfigurowania parametrów domen za pomocą plików statycznych (bez wsparcia dla automatycznej aktualizacji).
- Dodano dyrektywę „MDMessageCmd” do wywoływania zewnętrznych poleceń przy wystąpieniu zdarzeń ‘renewed’, ‘expiring’ lub ‘errored’.
- Dodano dyrektywę „MDWarnWindow” do konfigurowania powiadomień o wygaśnięciu certyfikatu;
Źródło: opennet.ru
