Aktualizacja serwera DNS BIND w celu naprawienia luki umożliwiającej zdalne wykonanie kodu

Opublikowano aktualizacje korygujące dla stabilnych gałęzi serwera DNS BIND 9.11.31 i 9.16.15, a także gałęzi eksperymentalnej 9.17.12, która jest w fazie rozwoju. Nowe wersje usuwają trzy luki, z których jedna (CVE-2021-25216) powoduje przepełnienie bufora. W systemach 32-bitowych lukę można wykorzystać do zdalnego wykonania kodu osoby atakującej poprzez wysłanie specjalnie spreparowanego żądania GSS-TSIG. W systemach 64 problem ogranicza się do awarii nazwanego procesu.

Problem pojawia się tylko gdy włączony jest mechanizm GSS-TSIG, aktywowany za pomocą ustawień tkey-gssapi-keytab i tkey-gssapi-credential. GSS-TSIG jest wyłączony w konfiguracji domyślnej i jest zwykle używany w środowiskach mieszanych, w których BIND jest połączony z kontrolerami domeny Active Directory lub podczas integracji z Sambą.

Podatność wynika z błędu w implementacji mechanizmu SPNEGO (Simple and Protected GSSAPI Negotiation Mechanism), wykorzystywanego w GSSAPI do negocjowania metod ochrony stosowanych przez klienta i serwer. GSSAPI służy jako protokół wysokiego poziomu do bezpiecznej wymiany kluczy z wykorzystaniem rozszerzenia GSS-TSIG wykorzystywanego w procesie uwierzytelniania aktualizacji dynamicznych stref DNS.

Ponieważ wcześniej wykryto krytyczne luki we wbudowanej implementacji SPNEGO, implementacja tego protokołu została usunięta z bazy kodu BIND 9. Dla użytkowników wymagających wsparcia SPNEGO zalecane jest skorzystanie z zewnętrznej implementacji dostarczanej przez GSSAPI biblioteka systemowa (dostarczana w MIT Kerberos i Heimdal Kerberos).

Użytkownicy starszych wersji BIND-a, w ramach obejścia blokowania problemu, mogą wyłączyć GSS-TSIG w ustawieniach (opcje tkey-gssapi-keytab i tkey-gssapi-credential) lub odbudować BIND bez obsługi mechanizmu SPNEGO (opcja „- -disable-isc-spnego” w skrypcie „configure”). Dostępność aktualizacji w dystrybucjach możesz śledzić na stronach: Debian, SUSE, Ubuntu, Fedora, Arch Linux, FreeBSD, NetBSD. Pakiety RHEL i ALT Linux są budowane bez natywnej obsługi SPNEGO.

Dodatkowo w omawianych aktualizacjach BIND naprawiono dwie kolejne luki:

  • CVE-2021-25215 — nazwany proces zawieszał się podczas przetwarzania rekordów DNAME (przekierowanie przetwarzania części subdomen), co doprowadziło do dodania duplikatów do sekcji ANSWER. Wykorzystanie luki na autorytatywnych serwerach DNS wymaga wprowadzenia zmian w przetwarzanych strefach DNS, a w przypadku serwerów rekurencyjnych problematyczny zapis można uzyskać po skontaktowaniu się z serwerem autorytatywnym.
  • CVE-2021-25214 – Nazwany proces ulega awarii podczas przetwarzania specjalnie spreparowanego przychodzącego żądania IXFR (używanego do przyrostowego przesyłania zmian w strefach DNS między serwerami DNS). Problem dotyczy tylko systemów, które zezwoliły na transfery stref DNS z serwera atakującego (zwykle transfery stref służą do synchronizacji serwerów master i slave i są selektywnie dozwolone tylko dla serwerów godnych zaufania). W ramach obejścia bezpieczeństwa możesz wyłączyć obsługę IXFR za pomocą ustawienia „request-ixfr no;”.

Źródło: opennet.ru

Dodaj komentarz