Rootkity są znane już od prawie dwudziestu lat i wciąż pozwalają napastnikom uzyskiwać dostęp do komputerów ofiar i niepostrzeżenie wyprowadzać z nich dane, pozostając w ukryciu przez długi czas. Termin „rootkit” jest luźno stosowany do podzbioru złośliwych narzędzi, które zostały zaprojektowane specjalnie do ukrywania się na zainfekowanych komputerach i umożliwiania atakującym przejęcie zdalnej kontroli nad maszyną ofiary. Aby pomóc w zrozumieniu, czym jest i jak działa rootkit, podajemy opis tego specyficznego typu szkodliwego oprogramowania i wyjaśniamy co zrobić, gdy rootkit zainfekuje Twój komputer.
Definicja rootkita
Rootkit jest określeniem stosowanym w odniesieniu do oprogramowania, które zostało zaprojektowane w celu infekowania komputera ofiary i umożliwiania napastnikowi zainstalowania zestawu narzędzi, które zagwarantują mu trwały, zdalny dostęp do komputera ofiary. Złośliwe oprogramowanie zazwyczaj jest ukryte głęboko w systemie operacyjnym i jest zaprojektowane specjalnie do unikania wykrycia przez aplikacje antywirusowe i inne narzędzia zabezpieczające. Rootkit może zawierać dowolną liczbę szkodliwych narzędzi, takich jak: mechanizmy przechwytujące naciśnięcia klawiszy na klawiaturze, moduły do kradzieży haseł, danych kart kredytowych i informacji z elektronicznych kanałów bankowych, boty do ataków DDoS lub funkcjonalności, które są zdolne do wyłączania systemów zabezpieczeń zainfekowanego komputera. Rootkity zazwyczaj operują jako backdoory, które dają napastnikowi możliwość zdalnego łączenia się z zainfekowaną maszyną i instalowania lub usuwania specyficznych komponentów programowych. Poniżej podajemy kilka przykładów aktywnych rootkitów dla systemu Windows:
TDSS
ZeroAccess
Alureon
Necurs
Warianty rootkitów
Dwoma głównymi typami rootkitów są rootkity operujące w trybie użytkownika i rootkity operujące w trybie jądra. Rootkity operujące w trybie użytkownika są zaprojektowane do działania w tej samej części systemu operacyjnego, co aplikacje. Te rootkity wykonują swoje szkodliwe akcje przechwytując procesy aplikacji działających na komputerze lub nadpisując obszary pamięci, których używają aplikacje. Spośród dwóch wspomnianych typów rootkitów, ten opisany przed chwilą jest bardziej popularny. Rootkity operujące w trybie jądra działają na najniższym poziomie systemu operacyjnego komputera i dają napastnikowi największe uprawnienia. Po zainstalowaniu rootkita operującego w trybie jądra, napastnik może uzyskać całkowitą kontrolę nad zainfekowaną maszyną i wykonywać w zasadzie dowolne działania. Rootkity operujące w trybie jądra są zazwyczaj bardziej złożone niż rootkity operujące w trybie użytkownika i tym samym są mniej powszechne. Są również znacznie trudniejsze do wykrycia i usunięcia.
Istnieje również kilka rzadkich wariantów rootkitów, jak np. bootkity, które są przeznaczone do modyfikacji programu ładującego komputera – oprogramowania niskiego poziomu, które uruchamia się przed załadowaniem systemu operacyjnego. W ostatnich latach ukształtowała się nowa grupa rootkitów mobilnych, które atakują urządzenia mobilne (zwłaszcza smartfony pracujące pod kontrolą systemu Android). Te rootkity są często powiązane ze szkodliwymi aplikacjami pobieranymi z niezaufanych źródeł.
Metoda infekcji
Rootkity są instalowane na wiele różnych sposobów, jednak najbardziej powszechnym wektorem infekcji jest wykorzystywanie luk w systemie operacyjnym lub aplikacjach uruchomionych na komputerze. Napastnicy atakują zarówno znane, jak i nieznane luki obecne na komputerze, a także wykorzystują kody exploitów, aby podnieść swoje uprawnienia na docelowym komputerze ofiary. Następnie instalują rootkita i ustawiają komponenty, które zapewnią im zdalny dostęp do zainfekowanej maszyny. Kod exploita wykorzystujący określoną podatność może być hostowany na legalnej stronie WWW, która uprzednio została zainfekowana. Kolejnym wektorem infekcji są zakażone nośniki USB. Napastnicy mogą podrzucać zainfekowane nośniki USB (pamięci flash, dyski itd.) w miejscach, w których mogą one zostać łatwo znalezione przez potencjalne ofiary – w biurowcach, centrach konferencyjnych, kawiarniach – a następnie z czystej ciekawości podłączone do komputera. W niektórych przypadkach instalacja rootkita wciąż będzie zależała od pomyślnego wykorzystania luk w systemie ofiary lecz w większości incydentów złośliwe oprogramowanie zainstaluje się jako część pozornie legalnej aplikacji lub pliku z dysku USB.
Usuwanie
Wykrycie obecności rootkita na komputerze może być bardzo trudne ponieważ ten rodzaj złośliwego oprogramowania z natury ma pozostawać ukryty i wykonywać swoją „działalność” w tle. Istnieją narzędzia mające na celu szukanie znanych i nieznanych rodzajów rootkitów za pomocą różnych metod, które obejmują analizę sygnatur lub podejście behawioralne (pozwalające wytropić rootkita poprzez porównania wzorców szkodliwego zachowania). Usuwanie rootkita jest skomplikowanym procesem i zazwyczaj wymaga użycia wyspecjalizowanych narzędzi, takich jak TDSSKiller – narzędzie opracowane przez Kaspersky Lab i przeznaczone do usuwania rootkita TDSS. W niektórych przypadkach konieczne może być ponowne zainstalowanie systemu operacyjnego – zwłaszcza, gdy w wyniku ataku komputer doznał poważnych uszkodzeń.