Luka w zabezpieczeniach systemu Windows DNS Server związana ze zdalnym wykonywaniem kodu – CVE-2020-1350

Badacze Cybersecurity ujawnili dziś nową wysoce krytyczną „podatną na działanie robaka” lukę – niosącą wskaźnik ważności 10 na 10 w skali CVSS – wpływającą na wersje systemu Windows Server 2003–2019

Usterka zdalnego wykonywania kodu (CVE-2020- 1350), nazwana „SigRed”, może pozwolić nieuwierzytelnionemu, zdalnemu napastnikowi na uzyskanie uprawnień administratora domeny na serwerach docelowych i przejęcie pełnej kontroli nad infrastrukturą IT organizacji.

Osoba atakująca może wykorzystać lukę SigRed, wysyłając spreparowane złośliwe zapytania DNS do serwera Windows DNS i osiągając wykonanie dowolnego kodu, umożliwiając hakerowi przechwytywanie i manipulowanie wiadomościami e-mail i ruchem sieciowym użytkowników, uniemożliwianie dostępu do usług, zbieranie danych użytkowników.

server

server

W szczegółowym raporcie udostępnionym The Hacker News badacz Check Point, Sagi Tzadik, potwierdził, że usterka ma charakter robaka, umożliwiając atakującym przeprowadzenie ataku, który może rozprzestrzeniać się z jednego podatnego komputera na drugi bez interakcji człowieka.

„Pojedynczy exploit może rozpocząć reakcję łańcuchową, która pozwala na rozprzestrzenienie się ataków z maszyny podatnej na atak bez konieczności interakcji ze strony człowieka” – powiedział naukowiec.

„Oznacza to, że pojedyncza zainfekowana maszyna może być „super rozprzestrzeniaczem”, umożliwiając rozprzestrzenienie się ataku w sieci organizacji w ciągu kilku minut od pierwszego wykorzystania.”

Po tym, jak firma cyberbezpieczeństwa odpowiedzialnie ujawniła swoje ustalenia firmie Microsoft, twórca systemu Windows przygotował łatę na tę lukę i wprowadza ją od dziś w ramach lipcowej aktualizacji łaty, która obejmuje również aktualizacje zabezpieczeń dla 122 innych luk, z wymienionymi łącznie 18 wadami krytycznymi, a 105 równie ważne.

Microsoft zalecił użytkownikom natychmiastowe zainstalowanie łatek.

„Windows DNS Server jest podstawowym składnikiem sieci. Chociaż ta luka nie jest obecnie znana z użycia w aktywnych atakach, konieczne jest, aby klienci zastosowali aktualizacje systemu Windows, aby jak najszybciej usunąć tę lukę” – Microsoft.

Tworzenie złośliwych odpowiedzi DNS

Stwierdzając, że celem było zidentyfikowanie podatności, która pozwoliłaby nieuwierzytelnionemu atakującemu złamać środowisko domeny Windows, naukowcy z Check Point powiedzieli, że skupili się na DNS systemu Windows, w szczególności przyglądając się, w jaki sposób serwer DNS analizuje przychodzące zapytanie lub odpowiedź na przekazane zapytanie.

Przekazane zapytanie ma miejsce, gdy serwer DNS nie może rozpoznać adresu IP dla danej nazwy domeny (np. www.google.com), w wyniku czego zapytanie jest przekazywane do autorytatywnego serwera nazw DNS (NS).

Aby wykorzystać tę architekturę, SigRed polega na skonfigurowaniu rekordów zasobów NS domeny („deadbeef.fun”) w taki sposób, aby wskazywały na złośliwy serwer nazw („ns1.41414141.club”) i odpytanie docelowego serwera DNS dla domeny w celu uzyskania ta ostatnia analizuje odpowiedzi z serwera nazw dla wszystkich kolejnych zapytań związanych z domeną lub jej pod-domenami.

Po wprowadzeniu tej konfiguracji osoba atakująca może wywołać błąd przepełnienia liczb całkowitych w funkcji, która analizuje przychodzące odpowiedzi na przesłane zapytania („dns.exe! SigWireRead”), aby wysłać odpowiedź DNS zawierającą rekord zasobu SIG większy niż 64 KB i wywołać „kontrolowane przepełnienie bufora na podstawie sterty o wielkości około 64 KB w małym przydzielonym buforze”.

Inaczej mówiąc; luka dotyczy funkcji odpowiedzialnej za alokację pamięci dla rekordu zasobu („RR_AllocateEx”) w celu wygenerowania wyniku większego niż 65 535 bajtów, co powoduje przepełnienie liczb całkowitych, które prowadzi do znacznie mniejszej alokacji niż oczekiwano.

Ale z jednym komunikatem DNS ograniczonym do 512 bajtów w UDP (lub 4096 bajtów, jeśli serwer obsługuje mechanizmy rozszerzeń ) i 65 535 bajtów w TCP, naukowcy odkryli, że sama odpowiedź SIG z długim podpisem nie była wystarczająca do uruchomienia luki.

Aby to osiągnąć, atak sprytnie wykorzystuje kompresję nazw DNS w odpowiedziach DNS, aby utworzyć przepełnienie bufora przy użyciu wyżej wspomnianej techniki, aby znacznie zwiększyć rozmiar alokacji.

To nie wszystko. SigRed może być wyzwalany zdalnie przez przeglądarkę w ograniczonych scenariuszach (np. Internet Explorer i przeglądarki Microsoft Edge nie oparte na Chromium), pozwalając atakującemu na nadużywanie obsługi serwerów DNS systemu Windows w zakresie ponownego użycia połączenia i funkcji potokowania zapytań w celu „przemycenia” zapytania DNS wewnątrz ładunku żądania HTTP do docelowego serwera DNS po odwiedzeniu witryny pod ich kontrolą.

Co więcej, błąd może być dalej wykorzystany do wycieku adresów pamięci przez uszkodzenie metadanych rekordu zasobu DNS, a nawet osiągnięcie możliwości zapisu w dowolnym miejscu , co pozwala przeciwnikowi przejąć kontrolę nad wykonaniem i spowodować, że wykona niezamierzone instrukcje.

Źródła:
1. https://portal.msrc.microsoft.com/en-us/security-guidance/advisory/CVE-2020-1350#ID0EGB

2. https://thehackernews.com/2020/07/windows-dns-server-hacking.html