SMB Relay Attack to technika ataku polegająca na przechwytywaniu i przekierowywaniu uwierzytelnienia NTLM z protokołu SMB. Atakujący działa jako man-in-the-middle, przekierowując uwierzytelnienie ofiary do docelowego systemu, dzięki czemu może uzyskać dostęp do zasobów bez znajomości hasła.
Na czym polega atak
Atak SMB Relay wykorzystuje fakt, że protokół NTLM jest podatny na ataki typu relay. Proces ataku wygląda następująco:
- Rekonesans: Identyfikacja hostów bez wymaganego podpisywania SMB
- Przechwytywanie: Pozyskanie uwierzytelnienia NTLM (np. przez LLMNR poisoning)
- Przekierowanie: Przesłanie przechwyconych danych uwierzytelnienia do docelowego hosta
- Wykonanie: Uzyskanie dostępu do zasobów docelowych z uprawnieniami ofiary
Jakie luki wykorzystuje
- Brak wymaganego SMB signing: Systemy nie wymagające podpisywania pakietów SMB
- NTLM authentication flaws: Protokół NTLM jest podatny na ataki replay/relay
- Network trust relationships: Zaufanie między systemami w sieci
- Credential reuse: Ponowne używanie tych samych danych uwierzytelnienia
Przykładowe polecenia
Identyfikacja hostów bez SMB Signing
nmap --script=smb2-security-mode.nse -p445 <target>
Wyjaśnienie:
--script=smb2-security-mode.nse
– uruchamia skrypt NSE sprawdzający tryb bezpieczeństwa SMB2-p445
– skanuje port 445 (SMB)- Skrypt sprawdza czy host wymaga podpisywania SMB oraz czy obsługuje SMB2
Konfiguracja Responder
responder -I eth0 -dw -v
Wyjaśnienie konfiguracji:
- Przed uruchomieniem należy zmodyfikować
/etc/responder/Responder.conf
- Ustawić
SMB = Off
iHTTP = Off
aby uniknąć obsługi tych protokołów przez Responder - Responder będzie tylko przechwytywać uwierzytelnienie, nie obsługiwać go
Uruchomienie NTLM Relay
ntlmrelayx.py -tf targets.txt -smb2support
Wyjaśnienie parametrów:
-tf targets.txt
– plik zawierający listę docelowych hostów (IP lub nazwy)-smb2support
– włącza obsługę protokołu SMB2/SMB3- Narzędzie automatycznie przekieruje uwierzytelnienie NTLM do hostów z listy
Mitygacja
Włączenie podpisywania SMB
Włączenie podpisywania SMB skutecznie uniemożliwia przeprowadzenie ataku SMB Relay, jednak w niektórych środowiskach może prowadzić do spadku wydajności usług sieciowych.
Wyłączenie uwierzytelniania NTLM
Całkowite wyłączenie NTLM blokuje możliwość ataku, ale jeśli zawiedzie Kerberos, system może automatycznie wrócić do NTLM, co ponownie otwiera wektor ataku.
Podział kont na kategorie
Rozdzielenie kont z wysokimi uprawnieniami na konkretne role zwiększa bezpieczeństwo, jednak może być trudne do wdrożenia ze względu na opór organizacyjny.
Blokada administratorów lokalnych
Ograniczenie dostępu lokalnych administratorów zmniejsza ryzyko poruszania się atakującego po sieci, choć może utrudniać codzienną pracę działu wsparcia.
Segmentacja sieci
Podział sieci na mniejsze, odseparowane segmenty utrudnia atakującym dostęp do krytycznych systemów.
Zasada najmniejszych uprawnień
Nadawanie użytkownikom wyłącznie niezbędnych uprawnień znacznie ogranicza możliwości eskalacji uprawnień przez atakujących.