Opublikowane zostały poprawki dla stabilnych wersji serwera DNS BIND 9.11.31 i 9.16.15, a także dla eksperymentalnej wersji 9.17.12, która jest w fazie rozwoju. W nowych wydaniach usunięto trzy luki bezpieczeństwa, z których jedna (CVE-2021-25216) prowadzi do przepełnienia bufora. W 32-bitowych systemach luka może być wykorzystywana do zdalnego wykonywania kodu przez napastnika poprzez wysłanie odpowiednio sformułowanego żądania GSS-TSIG. W systemach 64-bitowych problem ogranicza się do awarii procesu named.
Problem występuje tylko przy włączonym mechanizmie GSS-TSIG, aktywowanym za pomocą ustawień tkey-gssapi-keytab i tkey-gssapi-credential. GSS-TSIG jest domyślnie wyłączony w konfiguracji i zazwyczaj stosuje się go w mieszanych środowiskach, w których BIND jest łączony z kontrolerami domen Active Directory lub podczas integracji z Sambą.
Luka bezpieczeństwa jest spowodowana błędem w implementacji mechanizmu SPNEGO (Simple and Protected GSSAPI Negotiation Mechanism), który jest używany w GSSAPI do negocjowania używanych metod przez klienta i serwerem metod ochrony. GSSAPI służy jako protokół wysokiego poziomu do bezpiecznej wymiany kluczy za pomocą rozszerzenia GSS-TSIG, stosowanego w procesie uwierzytelniania dynamicznych aktualizacji stref DNS.
Ponieważ wcześniej odkrywano krytyczne luki w wbudowanej implementacji SPNEGO, ta implementacja została usunięta z bazy kodu BIND 9. Użytkownikom, którzy potrzebują wsparcia dla SPNEGO, zaleca się korzystanie z zewnętrznej implementacji udostępnianej przez systemową bibliotekę GSSAPI (dostępną w MIT Kerberos i Heimdal Kerberos).
Użytkownicy starszych wersji BIND jako obejście tego problemu mogą wyłączyć GSS-TSIG w ustawieniach (parametry tkey-gssapi-keytab i tkey-gssapi-credential) lub zbudować BIND bez wsparcia mechanizmu SPNEGO (opcja „—disable-isc-spnego” w skrypcie „configure”). Aktualizacje w dystrybucjach można śledzić na stronach: Debian, SUSE, Ubuntu, Fedora, Arch Linux, FreeBSD, NetBSD. Pakiety RHEL i ALT Linux są budowane bez wbudowanego wsparcia dla SPNEGO.
Dodatkowo w omawianych aktualizacjach BIND usunięto jeszcze dwie luki bezpieczeństwa:
- CVE-2021-25215 — awaria procesu named podczas przetwarzania rekordów DNAME (przekierowanie przetwarzania części subdomen), co prowadzi do dodawania duplikatów do sekcji ANSWER. Aby wykorzystać tę lukę na autorytatywnych serwerach DNS, konieczne jest wprowadzenie zmian w przetwarzanych strefach DNS, a w przypadku serwerów rekurencyjnych serwerów problemowy rekord można uzyskać po zapytaniu do serwera autorytatywnego.
- CVE-2021-25214 — awaria procesu named podczas przetwarzania specjalnie sformatowanego przychodzącego zapytania IXFR (używanego do inkrementalnego przesyłania zmian w strefach DNS między serwerami DNS). Problem dotyczy tylko systemów, które zezwoliły na przesyłanie stref DNS z serwera atakującego (zwykle przesyłanie stref jest stosowane do synchronizacji serwerów master i slave i względnie zezwala się tylko dla zaufanych serwerów). Jako sposób obejścia zabezpieczeń można wyłączyć obsługę IXFR za pomocą ustawienia „request-ixfr no;”.
Źródło: opennet.ru
