Nawet jeśli nie słyszałeś o protokole SMB, miliony ludzi używają go każdego dnia. Jednakże, posiada on lukę ujawnioną w masowym cyberataku, który dotknął setki tysięcy ludzi. Co gorsza, samo zaprzestanie korzystania z niego nie jest dobrym rozwiązaniem. Na szczęście istnieje sposób, aby bezpiecznie korzystać z tego protokołu. Ale najpierw – co to jest SMB?
Serwer Message Block (SMB) to protokół sieciowy, który umożliwia użytkownikom komunikację ze zdalnymi komputerami i serwerami – korzystanie z ich zasobów lub udostępnianie, otwieranie i edytowanie plików. Jest on również określany jako protokół serwer/klient, ponieważ serwer posiada zasoby, które może udostępnić klientowi.
Jak każdy sieciowy protokół udostępniania plików, SMB potrzebuje portów sieciowych do komunikacji z innymi systemami. Pierwotnie korzystał z portu 139, który pozwalał komputerom komunikować się w tej samej sieci. Ale od Windows 2000, SMB używa portu 445 i protokołu sieciowego TCP, aby „rozmawiać” z innymi komputerami przez Internet.
Jak używamy protokołu SMB?
Protokół SMB tworzy połączenie między serwerem a klientem poprzez wysyłanie wielu wiadomości żądanie-odpowiedź tam i z powrotem.
Wyobraź sobie, że twój zespół pracuje nad dużym projektem, który wymaga wielu wiadomości tam i z powrotem. Możesz chcieć mieć możliwość udostępniania i edytowania plików, które są przechowywane w jednym miejscu. Protokół SMB pozwoli członkom zespołu na korzystanie z tych udostępnionych plików tak, jakby znajdowały się na ich własnych dyskach twardych. Nawet jeśli jeden z nich jest w podróży służbowej na pół świata, nadal może uzyskać dostęp do danych i korzystać z nich.
Powiedzmy, że drukarka w biurze jest podłączona do komputera recepcjonistki. Jeśli chcesz wydrukować dokument, Twój komputer (klient) wysyła do komputera recepcjonistki (serwera) żądanie wydrukowania go i wykorzystuje do tego protokół SMB. Serwer odeśle odpowiedź, że plik został umieszczony w kolejce, wydrukowany lub że w drukarce zabrakło magenty i nie jest w stanie wykonać zadania.
Co to jest uwierzytelnianie SMB?
Jak każde inne połączenie, protokół SMB wymaga zabezpieczeń, aby komunikacja była bezpieczna. Na poziomie użytkownika, uwierzytelnianie SMB wymaga podania nazwy użytkownika i hasła, aby umożliwić dostęp do serwera. Jest ono kontrolowane przez administratora systemu, który może dodawać lub blokować użytkowników i kontrolować, kto jest dopuszczany.
Na poziomie udziału użytkownicy muszą wprowadzić jednorazowe hasło, aby uzyskać dostęp do udostępnionego pliku lub serwera, ale nie jest wymagane uwierzytelnianie tożsamości.
Różne warianty protokołu SMB
W 1996 r. Microsoft próbował zmienić nazwę protokołu SMB na CIFS (Common Internet File System). Była to zaktualizowana wersja tego samego protokołu i miała więcej funkcji, ale nazwa się nie utrzymała. Z tego powodu wiele osób nadal uważa, że to ta sama rzecz. CIFS jest obecnie tylko jednym z wielu dialektów (wariantów) SMB.
Oto wszystkie warianty protokołu SMB:
- SMBv1 został wydany w 1984 roku przez IBM do udostępniania plików w systemie DOS. Microsoft zmodyfikował go i zaktualizował w 1990 roku.
- CIFS został wydany w 1996 roku z większą ilością funkcji i obsługą większych rozmiarów plików. Pojawił się wraz z nowym systemem Windows 95.
- SMBv2 zadebiutował w systemie Windows Vista w 2006 roku. Charakteryzował się znacznym wzrostem wydajności z powodu zwiększonej efektywności – mniejsza liczba poleceń i podpoleceń oznaczała większą prędkość.
- SMBv2.1 pojawił się w Windows 7, przynosząc lepszą wydajność.
- SMBv3 został wprowadzony w Windows 8 z wieloma aktualizacjami. Najbardziej znaczącą z nich jest zwiększone bezpieczeństwo – protokół zaczął wspierać szyfrowanie end-to-end.
- SMBv3.02 pojawił się wraz z Windows 8.1. Oferował on możliwość zwiększenia bezpieczeństwa i wydajności poprzez całkowite wyłączenie SMBv1.
- SMBv3.1.1 został wydany w 2015 roku wraz z Windows 10. Dodano w nim więcej elementów bezpieczeństwa do protokołu, takich jak szyfrowanie AES-128, ochrona przed atakami man-in-the-middle oraz weryfikacja sesji.
Ważne jest, aby wiedzieć, z której wersji protokołu SMB korzysta Twoje urządzenie, zwłaszcza jeśli jesteś właścicielem firmy i masz wiele połączonych ze sobą maszyn z systemem Windows. Trudno byłoby znaleźć komputer z systemem Windows 95 lub XP (i używający SMBv1) w nowoczesnym biurze, ale mogą one nadal działać na starych serwerach. Dlaczego to jest ważne?
Atak ransomware WannaCry
W 2017 roku amerykańska Agencja Bezpieczeństwa Narodowego (NSA) znalazła lukę w protokole SMBv1. Pozwalała ona atakującemu na wykonanie swojego kodu bez zauważenia czegokolwiek przez użytkownika. Gdy jedno urządzenie zostało zainfekowane, haker mógł uzyskać dostęp do całej sieci i każdego podłączonego do niej urządzenia.
Eksploit ten został nazwany EternalBlue. Grupa hakerów o nazwie Shadow Brokers rzekomo wykradła go z NSA i wyciekła online w 2017 roku. Microsoft wydał aktualizację, aby załatać lukę, ale zaledwie miesiąc po tym, wybuchł ransomware WannaCry. Ten masowy atak dotknął prawie 200 000 urządzeń z systemem Windows w 150 krajach. Zaszyfrował on wszystkie dane na komputerze ofiary i zażądał okupu w Bitcoinach. WannaCry kosztował brytyjską Narodową Służbę Zdrowia około 120 milionów dolarów okupu, nie wspominając już o chaosie, jaki wywołały tysiące zaszyfrowanych i niezdatnych do użytku komputerów.
Czy powinienem wyłączyć protokół SMB?
Niestety, nadal ponad milion maszyn z systemem Windows działa na niezałatanej wersji protokołu SMBv1. Większość z nich jest prawdopodobnie podłączona do sieci, co sprawia, że inne urządzenia w tej samej sieci są podatne na ataki, niezależnie od wersji protokołu SMB, której używają.
Jeśli używasz komputera lub serwera z systemem Windows, który nadal korzysta z protokołu SMBv1, powinieneś natychmiast zainstalować aktualizację lub, jeszcze lepiej, zaktualizować protokół do nowszej wersji. Czy SMB jest bezpieczny i można z niego całkowicie korzystać? Na razie wygląda na to, że tak. Jednak lada dzień mogą pojawić się nowe luki. Użytkownicy, którzy chcą zmniejszyć ryzyko, mogą pójść o krok dalej i zaszyfrować swoje połączenia SMB.
Jeśli jednak nie używasz żadnych aplikacji wymagających SMB, najlepiej całkowicie go wyłączyć i zabezpieczyć swoje urządzenie przed ewentualnymi atakami. SMB nie jest domyślnie włączone w Windows 10 od października 2017 roku, więc musisz podjąć działania tylko wtedy, gdy używasz starszej wersji Windows.
Podejmowanie dodatkowych kroków jest czasochłonne, a ciągłe aktualizacje mogą być irytujące, ale zawsze powinieneś je instalować, gdy tylko są dostępne. Nigdy nie zakładaj, że luki w zabezpieczeniach nie będą dotyczyły Ciebie. Każdy może stać się celem ataku, więc najlepiej jest chronić swoje urządzenia i dane, zanim cokolwiek się stanie.
Aby uzyskać więcej informacji na temat cyberbezpieczeństwa i prywatności, zapisz się do naszego comiesięcznego newslettera poniżej!