Menu dostępności

Czym jest protokół SMBv1 i dlaczego powinieneś go wyłączyć

Zakładamy, że wszyscy wiedzą, iż protokół SMB w wersji 1 zawiera krytyczne podatności i nie należy go stosować. Najbezpieczniej wyłączyć go na wszystkich urządzeniach w sieci i zablokować tym samym jego używanie przez aplikacje i usługi. Nie jest to jednak takie proste, gdyż grono naszych serwisów, starych urządzeń do videokonferencji, Windowsów XP czy drukarek może przestać poprawnie funkcjonować po wymuszeniu wyższej wersji SMB.

SMB, czyli z ang. Server Message Block, to protokół używany głównie do udostępniania plików i usług wydruku między komputerami w sieci. Historia SMB zaczyna się w latach 80, kiedy to IBM oraz Microsoft pracowali nad implementacją protokołu do sieciowego dostępu do systemu plików. Microsoft już po oficjalnym opublikowaniu SMBv1 nie widział w nim przyszłości, dlatego zdecydował się na szybką zmianę nazwy SMB na Common Internet File System (CIFS) i dodanie kilku funkcjonalności, między innymi bezpośrednią komunikację na porcie 445 i rozwijanie dalej tego protokołu właśnie pod nową nazwą. W rzeczywistości CIFS jest więc identyczną technologią jak SMB, prowadzoną według własnej polityki przez Microsoft.

W 2013 roku SMBv1 został wycofany ze wszystkich nowych systemów Windows i nie jest już domyślnie instalowany w systemach operacyjnych. Wszystko to za sprawą kilku luk, o których było głośno przy okazji ataku NonPetya. Podatności w SMBv1 pozwalają na zdalne wykonanie kodu na hoście docelowym z otwartą komunikacją po tym właśnie protokole.

SMBv2 został wprowadzony w systemie Windows Vista w 2006 roku. Wraz z nową wersją, zostały załatane podatności oraz poprawione bezpieczeństwo. Wprowadzono między innymi obsługę powiązań symbolicznych, co zwiększyło wydajność.

Razem z premierą systemów Windows 8 i Windows Server 2012 pojawił się SMBv3, który pozwala na kompleksowe szyfrowanie komunikacji end-to-end.


Jak podatność SMBv1 została wykorzystana?


Podatności ujrzały światło dzienne, kiedy to grupa hackerów wykradła je od NSA. Wkrótce potem, możliwości exploitacji SMB wykorzystuje znany ransomware WannaCry. Cała grupa exploitów SMB otrzymała nazwę „Eternal”, a najbardziej znanym z nich jest „EternalBlue”. Polega on na wysłaniu do atakowanego komputera spreparowanego pakietu, którego protokół SMBv1 nie jest w stanie obsłużyć, co prowadzi do wymuszenia wykonania zdalnego kodu bez żadnej weryfikacji i komunikatu po stronie odbiorcy. Szacuje się, że ransomware WannaCry za pomocą luk w SMBv1 zainfekował w 2017 roku od 230 000 do 300 000 komputerów w 99 krajach, a wyrządzone szkody to ponad 1 bilion dolarów.


Jak wygląda atak?


Jednym ze scenariuszy, który atakujący jest w stanie wykonać za pomocą eksploitacji SMBv1, jest zdalny dostęp do wiersza poleceń z uprawnieniami SYSTEM. Z takim narzędziem w rękach, hacker jest w stanie zrobić praktycznie wszystko na systemie lokalnym i nie zostać wykrytym, np. modyfikować lokalne uprawnienia kont, przeskakiwać na inne hosty, pobierać i usuwać hashe z pamięci i wiele więcej.

Atak EternalBlue może zostać przeprowadzony za pomocą narzędzia dobrze znanego pentesterom – Metasploit, które zawiera ogrom modułów do atakowania systemów znanymi technikami i sprawdzania podatności. Po uruchomieniu narzędzia, szukamy interesujących nas modułów:

Załóżmy sytuację, że mamy podstawową wiedzę o atakowanym środowisku i przeprowadziliśmy już rozpoznanie sieciowe oraz domeny AD. Z dużym prawdopodobieństwem wiemy, które hosty mogą działać na systemie Windows XP lub Windows Server 2008, co znaczy, że są podatne na atak.

Jednak sam Metasploit daje nam możliwość dodatkowego zweryfikowania, czy host jest podatny na atak EternalBlue. Sprawdzamy to w następujący sposób:

W wyniku wykonania polecenia otrzymujemy informacje o systemie operacyjnym oraz zainstalowanym service packu, co wiąże nam system z podatnością SMBv1. Na skanowanym hoście zainstalowany jest system Windows Server 2008 R2 Enterprise 7601, co skaner oznaczył na podatny.

Wywołując nazwę modułu z atakiem EternalBlue z opcją run i wskazując adres IP atakowanego hosta, otrzymamy dostęp do wiersza poleceń na uprawnieniach NT AUTHORITY\SYSTEM:

Jak wspominaliśmy wcześniej, zdobycie takich uprawnień (i to zdalnie!) wiąże się z całkowitą kompromitacją maszyny i gamą możliwości do wykorzystania w całej sieci organizacji w celu podszywania się pod skompromitowaną maszynę i przedstawiania się w jej imieniu.


Prewencja


Jak zapobiec taki atakom? Oczywiście, należy instalować wszystkie poprawki związane z bezpieczeństwem na punktach końcowych. Większość znanych podatności SMBv1 można załatać instalując aktualizacje.

Jednak, niektóre exploity wykorzystują słabość samej technologii SMB i bez przejścia na wyższą wersję nie ma możliwości ochrony. Dlatego, Microsoft zleca wymuszenie wyłączenia SMBv1 w całej organizacji. Przygotował nawet poradnik, który pomaga w identyfikacji podatnych hostów w sieci i podpowiada jak skutecznie pozbyć się SMB w wersji 1.

Popularne

Nowa luka w Microsoft Teams – lepiej nie być zapraszanym…

Nowa luka w Microsoft Teams – lepiej nie być zapraszanym…

Usługa Microsoft Teams stała się kluczowym narzędziem do komunikacji i współpracy w firmach na całym świecie. Z tego powodu wiele organizacji polega na zabezpieczeniach takich jak Microsoft Defender for Off...
Ważna zmiana w OWASP Top 10

Ważna zmiana w OWASP Top 10

OWASP, czyli Open Worldwide Application Security Project, zaproponowało nowe wydanie swojej klasycznej listy Top 10 ryzyk aplikacyjnych. Wersja z 2025 roku wprowadza kluczowe rozszerzenia dotyczące b...
Jak modele LLM automatyzują cyberprzestępczość

Jak modele LLM automatyzują cyberprzestępczość

Każdy Czytelnik Kapitana Hacka wie, że złośliwe LLM-y ułatwiają mniej doświadczonym cyberprzestępcom przeprowadzanie ataków. Potwierdzają to badacze z Palo Alto Networks, którzy przeanalizowali dwa niedaw...
Wizualizacja ścieżek ataku na Active Directory za pomocą narzędzia BloodHound

Wizualizacja ścieżek ataku na Active Directory za pomocą narzędzia BloodHound

Krótko o narzędziu Bloodhound to narzędzie służące do wizualizacji i analizy powiązań w Active Directory. Dla atakującego jest niezastąpioną pomocą do znajdowania ścieżki ataku na najbardziej c...
Jak błąd w 7-Zip (CVE-2025-11001) daje hakerom dostęp do systemu Windows. Jest exploit

Jak błąd w 7-Zip (CVE-2025-11001) daje hakerom dostęp do systemu Windows. Jest exploit

Odkryto niezwykle niebezpieczną dla użytkowników systemów Windows podatność. Błąd o numerze CVE‑2025‑11001 jest już częściowo wykorzystywany, a dotyczy popularnego programu 7-Zip. Polega na niewłaściwe...