Cyber Kill Chain to model opisujący strukturę ataku sieciowego. Opisuje poszczególne etapy ataku, to jakie działania są wykonywane w trakcie każdego z nich oraz podpowiada jakie zabezpieczenia stosować na każdym z etapów.
Framework Cyber Kill Chain został stworzony w 2011 roku przez firmę Lockheed Martin i w wielu miejscach nawiązuje do koncepcji znanych z wojska. Twórcy tego modelu zauważyli, że hakerzy zachowują się podobnie jak jednostki specjalne na polu walki. Działania jednych i drugich składają się z następujących po sobie, wykonywanych zawsze w tej samej kolejności faz, takich jak rozpoznanie przeciwnika, atak, umocnienie pozycji itp. Skuteczność każdej z faz ataku zależy od tego, jak dobrze zostały wykonane zadania z poprzedzającego go etapu. Jeśli atakujący źle się przygotował do ataku lub popełnił błąd w trakcie realizacji którejś z faz, może dojść do zerwania całego łańcucha i spowodować, że atakujący musi cofnąć się co najmniej o krok a czasem do początku swoich działań i zaczynać cały atak jeszcze raz.
Cyber Kill chain składa się z 7 następujących po sobie faz i są to:

Fazy Cyber Kill Chain
Reconesance
Przed wykonaniem ataku konieczne jest zebranie jak najdokładniejszych informacji o celu. Służy do tego faza rekonesansu, w której trakcie zbierane są w sposób pośredni i bezpośredni informacje o ofierze ataku. Rekonesans pośredni nazywany również pasywnym polega na zapoznaniu się z ogólnodostępnymi informacjami o firmie. W ramach rekonesansu pasywnego możemy przejrzeć stronę internetową firmy, bazę Whois, DNS oraz wpisy do KRS i innych baz z informacjami o przedsiębiorstwach. Możemy przejrzeć również media społecznościowe w poszukiwaniu informacji o pracownikach, strony z ofertami pracy, z których możemy dowiedzieć się między innymi, z jakich systemów i aplikacji korzysta firma. Źródeł pasywnego rekonesansu może być bardzo wiele. Ważne, żeby w tym czasie nie wykonywać żadnych działań, które pozostawiają ślady w logach systemowych czy generują nietypowe działania, np. nadmierny ruch na stronach internetowych firmy co może zaalarmować ofiarę ataku i wzmóc jej czujność.
Rekonesans aktywny to już bezpośrednie działanie na środowisku ofiary. Polega na skanowaniu środowiska za pomocą skanerów portów, skanerów podatności itp. Chodzi w nim o zebraniu informacji o tym, jakie adresy IP są wykorzystywane, jakie działają tam usługi, w jakich wersjach i jakie mogą mieć podatności. Rekonesans aktywny ma tę zaletę, że w dużej części może być wykonany z użyciem narzędzi automatyzujących i dopiero na etapie analizy danych zajmuje więcej czasu.
Weaponization
Weaponization to faza tworzenia arsenału, który będzie wykorzystywany podczas ataku. Na podstawie danych zebranych podczas rekonesansu wiadomo już, z jakich systemów i aplikacji korzysta ofiara. Zazwyczaj znamy też słabe punkty tych systemów i podatności, jakie posiadają. W fazie Weaponization tworzymy pliki zawierające wirusa albo instalujące backdoor w systemie ofiary. Możemy również stworzyć stronę phishingową, która będzie infekowała ofiary, które ją odwiedzą. Zestaw narzędzi i technik, jakie są tutaj wykorzystywane, jest bardzo szeroki, ale żeby okazały się skuteczne, muszą być skutecznie dostarczone i dlatego przechodzimy do kolejnej fazy ataku, czyli…
Delivery
Celem fazy Delivery jest dostarczenie przygotowanej wcześniej szkodliwej zawartości. Istnieje wiele metod jej dostarczenia, ale najpopularniejsze to email z załącznikiem lub linkiem do strony zawierającej szkodliwą zawartość, przekierowanie ruchu na taką stronę za pomocą fałszywych rekordów DNS, wysłanie szkodliwej zawartości poprzesz podatną stronę www ofiary albo tak znane z opowiadań podrzucenie zainfekowanego pendrive na parking przed siedzibą firmy 😊
Faza delivery jest kluczowa dla skuteczności ataku. To właśnie w trakcie dostarczania okazuje się, jak skuteczne są mechanizmy ochrony przed atakami i jak dobrze zostało wykonane rozpoznanie i przygotowanie do ataku.
Exploitation
Po dostarczeniu szkodliwej zawartości musi dojść do jej uruchomienia. W fazie exploitation wykonywany jest złośliwy kod i dochodzi do wykorzystania podatności w systemie operacyjnym lub aplikacji, ominięcia błędnie skonfigurowanych zabezpieczeń albo wykonania ataków uwierzytelniających i autoryzujących.
Installation
Żeby ułatwić sobie życie, atakujący instaluje w zaatakowanym systemie tzw. backdoor. Za jego pomocą będzie mógł dostać się ponownie do systemu bez konieczności przechodzenia przez opisane wcześniej fazy ataku. W fazie installation dochodzi również do prób zainfekowania i przejęcia większej liczby maszyn i danych w sieci ofiary (tzw. Lateral movement). Aby ta faza ataku zakończyła się powodzeniem, istotne jest ukrywanie złośliwej aktywności stąd stosowanie przez atakującego różnych technik np. szyfrowania ruchu.
Command & Control
Command & Control (C&C) to faza, w której atakujący przejmuje bezpośrednią kontrolę nad systemem ofiary. Bezpośredni dostęp pozwala na wykonywanie komend w terminalu albo połączenie RDP z systemem. W fazie command & control dochodzi również do eskalacji uprawnień i przeskoczenia z konta zwykłego użytkownika do konta Administrator/root. Dzięki takim działaniom dostęp do danych i zasobów staje się nieograniczony, o co przecież chodzi w całym ataku
Actions on objective
Kiedy system jest już w pełni kontrolowany przez atakującego, nadszedł wreszcie czas na jego wykorzystanie. Atakujący może uzyskać dostęp do poufnych danych, może rozpocząć atak na inne systemy ofiary albo destabilizować działanie jego sieci. Taki system może być też wykorzystywany do ataków na zupełnie inne cele poza siecią ofiary ataku.
Przykłady technik stosowanych w każdej z faz ataku
Reconesans | Zbieranie informacji dostępnych na stronach internetowych firmy Analiza danych w ogólnodostępnych bazach (KRS, DNS, Whois) Analiza publikacji o firmie dostępnych w Internecie Zbieranie informacji o firmie i pracownikach, które zostały udostępnione na portalach społecznościowych Skanowanie sieci za pomocą skanerów portów i skanerów podatności |
Weaponization | Wybór istniejącego lub przygotowanie nowego exploitu zgodnie z wykonaną wcześniej analizą Przygotowanie kampanii phishingowej Przygotowanie sieci botnet do przeprowadzenia ataków |
Delivery | Przesłanie wiadomości phishingowych do pracowników organizacji Podrzucenie zainfekowanej pamięci USB Przekierowanie ruchu na zainfekowaną stronę www |
Exploitation | Wykorzystanie podatności w oprogramowaniu albo sprzęcie do przejęcia kontroli nad systemem ofiary |
Instalation | Pobranie i instalacja złośliwego oprogramowania np. Backdoora Uzyskanie zdalnego dostępu do systemu Utrzymanie dostępu do system ofiary |
Command & Control | Przejęcie bezpośredniej kontroli nad systemem ofiary Eskalacja uprawnień Ukrywanie ataku i zacieranie śladów np. poprzez szyfrowanie |
Actions on objective | Kradzież danych Wymuszenie okupu za odszyfrowanie danych (Ransomware) Atak DDoS Kopanie Kryptowalut |
Ochrona przed atakiem
Jak już pisałem wcześniej Cyber Kill Chain to nie tylko opis struktury ataku, ale również metod zapobiegania i łagodzenia jego skutków. Aby przerwać atak, zostały zdefiniowane następujące typy działań:
- Detect – określenie czy w ogóle przeprowadzany jest atak przeciwko organizacji
- Deny – zapobieganie nieuprawnionemu dostępowi
- Disrupt – zatrzymanie podejrzanego ruchu wychodzącego
- Degrade – ograniczenie skuteczności ataku
- Deceive – przeszkadzanie atakującemu poprzez przekierowanie jego działań na niewłaściwe tory
- Contain – ograniczenie skali ataku do wydzielonego segmentu sieci
Podsumowanie
To, co jest zaletą frameworku Cyber Kill Chain, czyli jego prostota jest jednocześnie jego wadą. Podział ataku na 7 faz jest uważany za mało dokładny. Aktualne ataki sieciowe są o wiele bardziej skomplikowane niż były, kiedy tworzony był Cyber Kill Chain. Ponadto coraz częściej zdarza się, że hakerzy w trakcie wykonywania ataków pomijają niektóre fazy lub bardzo je upraszczają.
Inne głosy krytyczne dotyczą tego, że Cyber Kill Chain skupia się na ochronie na styku sieci (firewalle) i ochronie antywirusowej a zupełnie pomija zagrożenia dziejące się wewnątrz sieci.
Czy w związku z tym nie warto stosować Cyber Kill Chain? Moim zdaniem warto. Prostota tego modelu pozwala na jego szybkie wdrożenie i stosowanie. Dla wielu, zwłaszcza małych sieci taki framework będzie zupełnie wystarczający, a stosowanie bardziej zaawansowanych modeli byłoby zbyt skomplikowane i czasochłonne. Warto więc rozważyć wdrożenie Cyber Kill Chain mając jednak świadomość niektórych jego ograniczeń.