Luka w serwerze HTTP Apache 2.4.49 umożliwiająca odbieranie plików poza katalogiem głównym witryny

Powstała pilna aktualizacja serwera HTTP Apache 2.4.50, która eliminuje już aktywnie wykorzystywaną lukę 0-day (CVE-2021-41773), która umożliwia dostęp do plików z obszarów znajdujących się poza katalogiem głównym serwisu. Wykorzystując lukę możliwe jest pobranie dowolnych plików systemowych oraz tekstów źródłowych skryptów internetowych, czytelnych dla użytkownika, pod którym uruchomiony jest serwer http. Twórcy zostali powiadomieni o problemie 17 września, ale aktualizację mogli opublikować dopiero dzisiaj, po odnotowaniu w sieci przypadków wykorzystania luki do ataków na strony internetowe.

Niebezpieczeństwo wynikające z luki ograniczane jest przez to, że problem pojawia się tylko w niedawno wydanej wersji 2.4.49 i nie wpływa na wszystkie wcześniejsze wydania. Stabilne gałęzie konserwatywnych dystrybucji serwerowych nie korzystały jeszcze z wersji 2.4.49 (Debian, RHEL, Ubuntu, SUSE), ale problem dotyczył stale aktualizowanych dystrybucji, takich jak Fedora, Arch Linux i Gentoo, a także portów FreeBSD.

Podatność wynika z błędu wprowadzonego podczas przepisywania kodu normalizującego ścieżki w identyfikatorach URI, w wyniku którego znak kropki zakodowany w ścieżce „%2e” nie zostanie znormalizowany, jeśli będzie poprzedzony inną kropką. W ten sposób możliwe było podstawienie surowych znaków „../” w wynikowej ścieżce poprzez określenie w żądaniu sekwencji „.%2e/”. Na przykład żądanie typu „https://example.com/cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd” lub „https://example.com/cgi -bin /.%2e/%2e%2e/%2e%2e/%2e%2e/etc/hosts” pozwoliło uzyskać zawartość pliku „/etc/passwd”.

Problem nie występuje, jeśli dostęp do katalogów jest wyraźnie zabroniony przy użyciu ustawienia „Wymagaj odmowy”. Na przykład, dla częściowej ochrony możesz określić w pliku konfiguracyjnym: wymagaj odmowy

Apache httpd 2.4.50 naprawia także kolejną lukę (CVE-2021-41524) wpływającą na moduł implementujący protokół HTTP/2. Luka umożliwiła zainicjowanie wyłuskiwania wskaźnika zerowego poprzez wysłanie specjalnie spreparowanego żądania i spowodowanie awarii procesu. Luka ta występuje również dopiero w wersji 2.4.49. W ramach obejścia bezpieczeństwa można wyłączyć obsługę protokołu HTTP/2.

Źródło: opennet.ru

Dodaj komentarz