Kiedy wyszukujemy nazwę DNS, systemy Windows przechodzą przez szereg różnych kroków, aby rozwiązać tę nazwę na adres IP dla nas. Pierwszy krok obejmuje przeszukiwanie plików lokalnych. System Windows przeszuka plik Hosts lub LMHOSTS w systemie, aby sprawdzić, czy w tym pliku znajduje się wpis. Jeśli nie, następnym krokiem jest zapytanie do DNS. System Windows wyśle zapytanie DNS do domyślnego serwera nazw, aby sprawdzić, czy może znaleźć wpis. W większości przypadków zwróci to odpowiedź, a my zobaczymy stronę internetową lub host docelowy, z którym próbujemy się połączyć. W sytuacjach, w których DNS zawodzi, nowoczesne systemy Windows używają dwóch protokołów, aby spróbować rozwiązać nazwę hosta w sieci lokalnej. Pierwszym z nich jest Link Local Multicast Name Resolution (LLMNR). Jak sama nazwa wskazuje, protokół ten używa multicastu, aby spróbować znaleźć hosta w sieci. Inne systemy Windows będą subskrybować ten adres multicastu. Kiedy host wysyła żądanie, każdy nasłuchujący host, który jest właścicielem tej nazwy i może ją przekształcić w adres IP, wygeneruje odpowiedź. Gdy żądający host otrzyma odpowiedź, system prześle nas do odpowiadającego hosta. Jednak jeśli system Windows nie może znaleźć hosta za pomocą LLMNR, istnieje dodatkowy sposób na znalezienie hosta. System Windows używa usługi NetBIOS Name Service (NBNS) i protokołu NetBIOS, aby spróbować odkryć adres IP. Robi to, wysyłając żądanie rozgłoszeniowe dla hosta do lokalnej podsieci, a następnie czeka, aż ktoś odpowie na to żądanie. Jeśli istnieje host o tej nazwie, może odpowiedzieć bezpośrednio. Wtedy nasz system wie, że aby dostać się do tego zasobu, musi udać się do tej lokalizacji. Zarówno LLMNR, jak i NBNS opierają się na zaufaniu. W normalnym środowisku host odpowie na te protokoły tylko wtedy, gdy jest hostem, którego się szuka. Jednak jako złośliwy aktor możemy odpowiedzieć na każde żądanie wysłane do LLMNR lub NBNS i powiedzieć, że host, którego się szuka, jest naszą własnością. Następnie, gdy system przejdzie do tego adresu, spróbuje wynegocjować połączenie z naszym hostem, a my możemy uzyskać informacje o koncie, które próbuje się z nami połączyć.