SMB – protokół udostępniania plików i drukarek
Transkrypt
SMB – protokół udostępniania plików i drukarek
SIECI KOMPUTEROWE – WWW.EDUNET.TYCHY.PL SMB – protokół udostępniania plików i drukarek Początki protokołu SMB sięgają połowy lat 80., kiedy to w firmie IBM opracowano jego wczesną wersję (IBM PC Network SMB Protocol). W kolejnych latach protokół był rozwijany, głównie przez firmę Microsoft i jako protokół SMB (Server Message Block) został wykorzystany w usłudze udostępniania plików i drukarek w systemie Windows. Zadaniem protokołu SMB jest umożliwienie korzystania z udostępnionych na zdalnych systemach udziałów. W większości wypadków sesja SMB polega na wymienieniu pomiędzy klientem i serwerem określonych komunikatów wyzwania i odpowiedzi. Nawiązanie sesji SMB składa się z pięciu etapów: 1. Nawiązania połączenia TCP/IP, NetBEUI lub IPX/SPX 2. Żądania nawiązania sesji NetBIOS 3. Uzgodnienia protokołu sesji SMB 4. Ustanowienia sesji 5. Połączenia z udostępnionym udziałem W przypadku typowej (domyślnej) konfiguracji systemów Windows nawiązanie sesji SMB przebiega według następującego schematu: Etap 1. Nawiązanie połączenia TCP Do komputera o podanej nazwie NetBIOS lub adresie IP zostaje wysłany komunikat żądania nawiązania sesji SMB. Oznacza to, że sesja SMB może zostać nawiązana z dowolnym, nie chronionym przez zaporę komputerem, o ile tylko ruter za pośrednictwem, którego ten komputer jest połączony z Internetem nie filtruje pakietów protokołu SMB. O ile wszystkie systemy Windows umożliwiają nawiązanie sesji SMB poprzez port TCP 139, to wyłącznie systemy Windows NT4 SP 6a, 2000 i nowsze dodatkowo nasłuchują na porcie TCP 445. Etap 2. Żądanie nawiązania sesji NetBIOS Chociaż port 139 może zostać zablokowany poprzez wyłączenie systemu NetBIOS przez TCP/IP to zablokowanie tego portu nie wystarcza do uniemożliwienia nawiązywania sesji SMB — systemy Windows NT4 z zainstalowanym pakietem SP 6a, Windows 2000 i nowsze automatycznie spróbują nawiązać sesję poprzez nadal otwarty port TCP 445. Opr.: Grzegorz Szymkowiak SIECI KOMPUTEROWE – WWW.EDUNET.TYCHY.PL Konfigurując zaawansowane ustawienia TCP/IP możemy wyłączyć system NetBIOS przez TCP/IP dla danego połączenia sieciowego Etap 3. Uzgodnienie protokołu sesji SMB Kolejnym etapem jest wynegocjowanie przez komputer kliencki i serwer protokołu wykorzystywanego do potwierdzenia tożsamości zdalnego użytkownika. Dostępne są następujące technologie: a) PC Network b) Microsoft Networks c) LM d) NTLM e) Kerberos przy czym za bezpieczne mogą zostać uznane tylko dwie ostatnie. Opr.: Grzegorz Szymkowiak SIECI KOMPUTEROWE – WWW.EDUNET.TYCHY.PL Etap 4. Ustanowienie sesji Do ustanowienia sesji niezbędne jest uwierzytelnienie się w zdalnym systemie. W zależności od uzgodnionego protokołu uwierzytelniania dane potwierdzające tożsamość użytkownika: a) nie zostaną przesłane b) zostaną przesłane jawnym tekstem c) zostaną zaszyfrowane algorytmem DES d) zostaną zaszyfrowane algorytmem MD4 lub MD5 e) zostaną wysłane w postaci potwierdzonego przez KDC klucza użytkownika Etap 5. Połączenie z udostępnionym udziałem Po ustanowieniu sesji możemy połączyć się z udostępnionymi przez zdalny system udziałami. Systemy Windows NT, 2000 i nowsze automatycznie tworzą określoną listę ukrytych udziałów: Niebezpieczne cechy protokołu SMB Niewłaściwa konfiguracja protokołu SMB pozwala na odczytanie zdalnemu klientowi Listy udostępnionych udziałów Obowiązujących zasad haseł (m.in. minimalnej długość stosowanych haseł) Obowiązujących zasad blokady kont (m.in. liczby nieudanych prób zalogowania, po których konto zostaje automatycznie zablokowane i czasu trwania blokady) Kompletnych informacji o kontach użytkowników i ich aktywności (m.in. pełnej nazwy konta, tekstu komentarza, lokalizacji folderu domowego, czasie ostatniego zalogowania, dacie ostatniej zmiany hasła) Opr.: Grzegorz Szymkowiak SIECI KOMPUTEROWE – WWW.EDUNET.TYCHY.PL Szczegółowych informacji o systemie operacyjnym (min. liście zainstalowanych aktualizacji, czasie nieprzerwanego działania i przynależności komputera do domeny lub grupy roboczej) Identyfikatora SID komputera Listy kont użytkowników Do tego celu służą m.in. takie narzędzia jak: UserInfo WhoIsAdmin Opr.: Grzegorz Szymkowiak SIECI KOMPUTEROWE – WWW.EDUNET.TYCHY.PL User2Sid Zabezpieczenie systemu operacyjnego Skutecznym, ale mało praktycznym sposobem zabezpieczenia się przed atakami na protokół SMB jest jego wyłączenie. W tym celu należy odznaczyć usługę udostępniania plików i drukarek w sieciach Microsoft Network dla danego połączenia sieciowego. Alternatywnym rozwiązaniem jest zablokowanie (za pomocą zapory albo filtrów IPSec) portów 139 i 445 TCP. Wadą obu tych rozwiązań jest ograniczenie funkcjonalności komputera po ich zastosowaniu niemożliwe będzie udostępnianie (a w przypadku zablokowania portów protokołu SMB również uzyskiwanie dostępu) zasobów w sieci lokalnej. Opr.: Grzegorz Szymkowiak