Zastanawialiśmy się, czy można wszystkie ataki na środowiska informatyczne opisać za pomocą jednego schematu, który będzie pewnego rodzaju wskazówką i planem działania dla zespołów SOC. W pewnym sensie jest to możliwe. Istnieje wiele koncepcji Kill Chain czy Attack Phases, które przedstawiają ataki hackerskie na poziomie ogólnym.
Ten artykuł pomoże zrozumieć współczesne zagrożenia i najczęstsze wektory ataków, które wykorzystuje złośliwe oprogramowanie. W większości przypadków cyberataki przeprowadzane są w określonych krokach, inaczej mówiąc – fazowo. Każdy kto specjalizuje się w wykrywaniu i analizie współczesnych zagrożeń informatycznych, powinien poznać i zrozumieć poszczególne fazy ataków i być w stanie rozpoznać symptomy infekcji malware w swoim środowisku. Przerwanie łańcucha trwającego ataku w organizacji, pozwala na diametralne zmniejszenie ryzyka i kosztów włamania oraz często zniwelowanie wpływu przełamania zabezpieczeń na sferę biznesową firmy.
Kroki przedstawione poniżej mogą być realizowane przez dowolną komórkę bezpieczeństwa w organizacji. Network Security Teams, linie SOC czy mniejsze zespoły w organizacjach budujących dopiero swoją obronę.
Podstawowa ścieżka ataku
Większość cyberataków można opisać w 3 fazach:
- Zdobycie dostępu do sieci – tutaj w zależności od sposobu działania i dalszych planów hackera może to być dostarczenie złośliwego oprogramowania przez kampanie phishingową lub na przykład zdobycie poświadczeń konta w organizacji. Po tym kroku atakujący zdobywa przyczółek w sieci wewnętrznej firmy i przeprowadza rozpoznanie w celu przygotowania się do dalszego kroku.
- Przemieszczanie się wewnątrz sieci – zazwyczaj jest tak, że malware zostaje dostarczony na stacje roboczą lub inny najmniej zabezpieczony zasób w sieci. Kolejnym celem atakującego jest więc zdobycie uprawnień do kluczowych serwerów i najcenniejszych danych. Przeprowadza tzw. Lateral movement, czyli ruch bocznych (poprzeczny) w sieci, wykorzystując podatności i luki w zabezpieczeniach i zdobywając dostęp do coraz to nowych zasobów. Zdarza się, że cyberprzestępcy ukrywają swoją obecność wewnątrz organizacji miesiącami, aby dobrze poznać wszystkie praktyki i zabezpieczenia i przygotować się do ostatniego kroku.
- Kradzież danych – tutaj hackerzy korzystają z ukrytej komunikacji lub zestawiają tunel i niezauważenie pobierają dane z organizacji na zewnątrz. Idealnie przeprowadzony atak, nie pozostawi śladów po żadnym z tych kroków.
Aby w pełni ochronić się przed atakami, należy być przygotowanym na każdy z powyższych etapów. Chronić się przed dostarczeniem malware, monitorować anormalne aktywności typu lateral oraz horizontal movement oraz bezpośrednio chronić cenne dane i dostęp do wrażliwych aplikacji i usług.
Dalej opisaliśmy każdy z wymienionych etapów szczegółowo oraz przedstawiliśmy techniki obrony oraz wskazówki, które pomogą w wykryciu ataku.
Faza 1: Dostarczenie Malware
W każdej organizacji główną rolę obronną przeciwko dostarczeniu złośliwego oprogramowania pełnią firewall oraz bramki proxy. Jednak już od dawna klasyczne zabezpieczenia przestały być wystarczające. Nowoczesne metody pobierania złośliwego oprogramowania opierają się na fałszowaniu wpisów DNS, uruchamianiu złośliwych makr w zaufanych aplikacjach czy komunikacji z serwerami C&C podszywającymi się pod legalne, istniejące witryny.
Oczywiście najbardziej popularne cały czas pozostają kampanie phishingowe. Są one coraz bardziej inteligentne i przygotowywane precyzyjnie do profilu i zainteresowań użytkownika bądź firmy, tzw. spear phishing.
Ochroną przeciwko phishingowi będzie na pewno:
- blokowanie podejrzanych rozszerzeń w załącznikach takich jak: wsf (Windows script), jar (Java archive), js (JavaScript), vbs (VBScript), ps i ps1 (PSScript), exe, html, bat, chm, dll, msc, msi, sys, wsh i inne.
- blokowanie otwierania podejrzanych linków na końcówkach (można wprowadzić specjalne rozwiązanie bezpieczeństwa, dzięki któremu witryny uruchamiane są w odseparowanej od świata zewnętrznego lokalizacji)
- blokowanie uruchamiania skryptów i plików wykonywalnych na końcówkach
- ciągłe szkolenie i przestrzeganie pracowników na temat zagrożeń czyhających w mailach
Kolejnym pod względem popularności sposobem dostarczenia malware do organizacji jest Remote Desktop Protocol. Każdy serwer i każde inne urządzenie udostępniające RDP do podłączenia się do niego z zewnątrz organizacji jest idealnym wektorem ataku dla cyberprzestępców. Po pierwsze takie urządzenie jest widoczne ze świata zewnętrznego i można je przeskanować, np. narzędziem Shodan, pod kątem znanych podatności. Po drugie na serwer widoczny z Internetu można próbować ataków brute-force, używając np. narzędzia NLBrute w celu złamania poświadczeń konta RDP. Istnieje wiele znanych podatności wykorzystujących sesję RDP do przeprowadzenia zaplanowanego ataku. O jednej z nich – podatności BlueKeep – pisaliśmy w artykule tutaj. Największe kampanie ransomware, takie jak SamSam, CrySiS czy LockCrypt, rozpoczęły się właśnie dzięki protokołowi RDP.
Aby zapobiec dostarczeniu malware lub wejściu do sieci organizacji przez protokół RDP należy:
- wprowadzić restrykcje na firewall’u
- ograniczyć użytkowników mogących logować się zdalnie
- wymusić używanie silnych haseł oraz wprowadzić 2FA
- ustawić blokadę konta po kilku próbach nieudanego logowania
- wyłączyć możliwość dostępu po RDP dla wszystkich serwerów i stacji dla których nie jest to niezbędne
Najbardziej skutecznym i najtrudniejszym do zapobiegania przypadkiem pobrania złośliwego oprogramowania lub kodu jest tak zwana infekcja dwustopniowa, która kończy się pobraniem ładunku z zewnętrznego serwera Command & Control. W tym przypadku atakujący nakłaniają użytkownika do wejścia na witrynę czy pobrania obrazka z Internetu lub zapisania legalnego załącznika z maila. Działania te nie są bezpośrednio niebezpieczne i nie zawierają złego oprogramowania. Dopiero w drugim etapie infekcji, zaszyte komendy w legalnych plikach wyzwalają komunikację z serwerem C&C i pozwalają na kompromitację stacji czy serwera lub przesłanie malware do sieci wewnętrznej organizacji.
Cyberprzestępcy najchętniej wykorzystują aplikacje i rozszerzenia pakietu Microsoft Office do ukrywania dwustopniowych infekcji, ponieważ są one powszechnie akceptowane i tolerowane przez systemy bezpieczeństwa. Poza tym, aplikacje MS Office zawierają wiele wbudowanych funkcjonalności pozwalających na uzbrojenie plików word, excel, powerpoint i używanie ich do komunikacji z serwerami C&C lub bezpośrednim wykonaniem komendy w systemie. Więcej o takich zagrożeniach pisaliśmy szczegółowo tutaj.
W systemach Windows istnieje wiele wbudowanych narzędzi i aplikacji, które chętnie wykorzystywane są przez hackerów z uwagi na ich powszechność i legalne przeznaczenie w organizacji. To podejście nazywane jest „Living of the Land”. Przykłady takich aplikacji to:
- Powershell (najlepiej wyłączyć możliwość używania przez zwykłych użytkowników lub wprowadzić restrykcje za pomocą polityk Windows czy Applocker)
- VBScript i JavaScript (najlepiej wyłączyć możliwość wykonywania)
- certutil.exe, mshta.exe, regsvr32.exe, curl.exe (blokować wszystkie wychodzące zapytania z tych narzędzi oraz nietypowe uruchomienia)
Faza 2: Rozprzestrzenienie się Malware
Kiedy malware lub niepowołana osoba dostanie się zdalnie do sieci organizacji, kolejną fazą ataku będzie uruchomienie i użycie złośliwego oprogramowania lub wykorzystanie zaszytych złośliwych komend w celu eskalacji uprawnień i dostępu do wrażliwych danych.
Tradycyjne zabezpieczenie przeciwko takim akcjom w systemie to Antywirus. To jego zadaniem jest przede wszystkim blokować uruchamianie się niebezpiecznych aplikacji. Jednak dzisiejsze wyrafinowane techniki cyberprzestępców bez problemu oszukują systemy AV. Dlatego należy wyposażyć się w zaawansowane systemy endpoint protection wykorzystujące machine learning oraz podejście behawioralne do analizy niepowołanego działania na stacjach roboczych i serwerach.
Atakujący są w stanie obejść systemy AV czy nawet „whitelist” dozwolonych aplikacji wstrzykując kod do pamięci legalnego i uruchomionego w systemie procesu. Techniki, z których korzystają to na przykład: DLL Injection, Process Hollowing, Process doppelganging.
Aby ochronić się przed zaawansowanymi atakami na tym etapie powinniśmy:
- zaopatrzyć się w system EDR do ochrony stacji roboczych
- stosować „białą listę” dozwolonych aplikacji w środowisku
- wprowadzić restrykcje odnośnie wykonywania skryptów i komend w środowisku
- monitorować komunikację sieciową znanych procesów oraz wszelkie zapytania po API
Faza 3: Eskalacja uprawnień i wykradanie danych
Ostania faza ataków to tzw. post-exploitation. Jednym z celów jest tutaj zdobycie podwyższonych uprawnień w systemie, a następnie wyciągnięcie danych na zewnątrz organizacji lub sparaliżowanie sieci firmy od środka. Atakujący używają do tego narzędzi systemowych, skryptów, zdalnych komend czy specjalistycznych narzędzi hackerskich takich jak Mimikatz czy CracMapExec. Podejście „Living of the Land” w tym etapie również odgrywa rolę. Hackerzy używają programów takich jak Powershell, WMI czy PsExec, aby uzyskać dostęp do danych i przesłać je na zewnątrz nie podnosząc nawet alarmu w organizacji.
Najczęściej stosowane techniki ataków oraz podstawowe środki obrony na tym etapie to:
- Specjalistyczne narzędzia służące do podnoszenia uprawnień Ochrona: – używanie najwyższych ustawień UAC – wyłączenie wbudowanego konta lokalnego „Administrator” – zredukowanie liczby administratorów lokalnych
- DLL hijacking Ochrona: – oprogramowanie Endpoint Protection – zabronienie poprzez politykę lokalną ładowania zdalnych bibliotek do systemów – włączenie ustawienia „Safe DLL Search Mode” na stacjach Windows
- Kradzież poświadczeń Ochrona: – wyłączenie (tam gdzie to możliwe) przechowywania poświadczeń w pamięci – zastosowanie się do praktyki korzystania z najmniejszych wymaganych uprawnień – zaopatrzenie się w zaawansowane systemy bezpieczeństwa do ochrony poświadczeń i monitorowania procesu lsass.exe – więcej informacji o atakach i ochronie przeciwko kradzieży poświadczeń w kampanii Cyber Kill Chain
- Lateral Movement Ochrona: – zabronienie logowania się niepowołanym osobom na serwery i inne niż własna stacje robocze – segmentacja sieci – korzystanie z 2FA – monitorowanie uwierzytelniania pod kątem anomalii (na przykład uwierzytelnienie się na dużej ilości systemów w krótkim odstępie czasu)
- Ukrywanie złośliwego kodu w rejestrze systemowym: Ochrona: – monitorowanie programów uruchamiających się automatycznie przy starcie systemu
- Tworzenie złośliwych zaplanowanych zadań: Ochrona: – monitorowanie Windows Security Logu – event ID 4698 – blokowanie wykonywania się skryptów z schedule tasków – monitorowanie WMI na stacjach roboczych i serwerach (najbezpieczniej ustawić jeden port dla WMI w całej organizacji i blokować go na określonych systemach)
Konkluzja
Jeśli znamy rodzaje zagrożeń i schematy jakimi posługują się cyberprzestępcy jesteśmy w stanie zbudować podstawową linię obrony w organizacji. Nie zapewni to 100% bezpieczeństwa przed wszystkimi zagrożeniami, ale z pewnością zmniejszy ryzyko infekcji. Powinniśmy stale aktualizować nasze systemy cyberbezpieczeństwa i śledzić nowe trendy wśród hakerów.