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