Sztuka kamuflażu

Do niedawna życie pecetowca nie było łatwe. Na każdym kroku musiał on uważać na to, co przychodzi w e-mailach i jakie programy instalował. Równie istotne były regularne uaktualnianie baz sygnatur programu antywirusowego, dbanie o procesy kontrolowane przez firewall i częste skanowanie dysku w poszukiwaniu spyware’u. Jeśli jednak ktoś myśli, że te czasy się skończyły, to grubo się myli. Jest jeszcze gorzej. Teraz trzeba też sprawdzać, czy ktoś wszystkich tych aplikacji nie ukrył przed okiem mechanizmów ochronnych.

Rootkit dla początkujących

A wszystko przez rootkity, czyli oprogramowanie używane głównie przez hakerów po włamaniu do systemu informatycznego, służące do ukrywania procesów, plików i danych systemowych przed administratorem i użytkownikami.

Zaczęło się od tego, że sieciowi włamywacze na atakowanych maszynach chcieli mieć te same prawa co administrator, czyli root. W tym celu podmieniali ważne aplikacje uniksowe (np. ps, netstat oraz passwd) ich rekompilowanymi wersjami. Dzięki temu ps, jako polecenie służące do wyświetlania wszystkich uruchomionych programów, nie pokazywało tych aplikacji, które uaktywnił haker, netstat “zapominał” o informowaniu o niektórych nawiązanych połączeniach sieciowych, a passwd pozwalało finalnie na zdobycie hasła użytkownika działającego na prawach roota. Stąd też wzięła się nazwa dla zainfekowanego w ten sposób komputera – rooted komputer, oraz dla zestawu narzędzi pozwalających na działanie na prawach administratora bez jego wiedzy – rootkit.

Choć początkowo rootkity rozwijały się tylko w środowisku uniksowym, to szybko okazało się, że świetnie radzą sobie też w systemach kontrolowanych przez Windows. Dziś nie znajdziemy OS-u, o którym można by powiedzieć – tutaj rootkit nie ma szans.

Zauważmy też, że wykorzystanie rootkita wiąże się z wcześniejszym uzyskaniem dostępu do systemu. Warto również podkreślić już na wstępie, że rootkit sam w sobie nie jest groźny. Co z tego, że za jego pomocą możemy coś ukryć, jeżeli będzie to np. edytor tekstu?

Prawdziwa siła rootkita tkwi więc w sposobie jego wykorzystania. Prześledźmy następujący przykład. Po włamaniu na serwer haker zazwyczaj zaczyna instalować oprogramowanie, które pozwoli na realizację głównego celu ataku, np. przemienienia maszyny w serwer spamowy. Ale przecież czujny administrator widzi, jakie procesy zostały uruchomione, i z łatwością może taką aplikację usunąć. Problemy zaczynają się wtedy, gdy po wywołaniu listy aktywnych procesów oczom administratora nie ukazuje się program rozsyłający spam. Wydajność serwera spadła, ale przyczyn szuka się gdzie indziej.

Główne zadania

Przed hakerami, którzy docenili potencjał drzemiący w rootkitach, pojawiły się nowe możliwości działania. Na dodatek nie odnosiły się one tylko do funkcji ukrywania loginów, procesów i logów systemowych. Otóż zaczęto wykorzystywać rootkity do coraz to poważniejszych zadań, takich jak przechwytywanie danych z terminali, połączeń sieciowych i klawiatury. Rootkit musiał wówczas wystąpić w duecie z wyspecjalizowanym “szkodnikiem”, co doprowadziło do tego, że rootkity utożsamiono z trojanami.

Było w tym dużo racji, co więcej, nie chodziło tylko o konie trojańskie. Rootkity zaczęto stosować również w połączeniu z backdoorami, czyli aplikacjami pozwalającymi na nawiązywanie połączeń sieciowych z maszyną bez wiedzy jej właściciela. Dzięki temu uzyskano niezmącony niczym spokój zdalnego zarządzania komputerami. Rootkit chroniący backdoora pozwala najczęściej na sprytny zabieg zdublowania powłoki systemowej. W ten sposób administrator korzysta z jednej kopii, podczas gdy haker ma swoją własną (odpowiadający jej proces jest oczywiście ukryty) i może w niej uruchamiać aplikacje. Kiedy haker dysponuje już powłoką systemową, zaczyna się prawdziwy atak. Wachlarz złośliwego oprogramowania współpracującego z rootkitami jest naprawdę szeroki. Znajdziemy w nim np.:

  • sniffery – pozwalają one na przechwytywanie i analizowanie danych pochodzących z połączeń sieciowych; jako malware służą głównie do przechwytywania haseł,
  • keyloggery – przejmują kontrolę nad procedurami OS-u (głównie Microsoft Windows) służącymi do obsługi klawiatury. Każde wciśnięcie klawisza jest odnotywowane w specjalnym pliku, który jest wysyłany do hakera.
  • Wymierne korzyści

    Jednak najlepszym sposobem wykorzystania rootkita okazało się ukrywanie w systemie serwerów pocztowych lub aplikacji służących do ataków typu DDoS. Dlaczego ten pomysł okazał się tak trafny? Bo ukrywanie swojej obecności w systemie w wypadku, gdy atak trwał np. kilka minut, nie było zbyt sensowne i zabierało dużo cennego czasu. Co innego “inwestycje” długofalowe. Ukrycie w maszynie programu, który systematycznie rozsyłałby niechcianą pocztę elektroniczną, to zadanie niezwykle intratne, bo zysk, na który możemy liczyć z wynajęcia takich komputerów, jest całkiem duży. Podobnie sprawa ma się z techniką ataku DoS. Wystarczy wysłać do firmy list z informacją, że duża grupa komputerów, na których zostały zainstalowane i zamaskowane rootkitami odpowiednie aplikacje, rozpocznie ciągłe wysyłanie zapytań do serwerów tej firmy. Oczywiście to może wcale nie nastąpić, ale odpowiednie konta bankowe powinny zostać zasilone wysokimi kwotami. Oto siła rootkitów.

    Bywa też tak, że hakerowi bardzo trudno jest uzyskać dostęp do konta roota (ponieważ system jest dobrze skonfigurowany pod kątem bezpieczeństwa), ale nie ma problemu z przejęciem konta użytkownika. To może być przeszkodą w uruchamianiu szkodliwego oprogramowania, bo prawa zwykłego użytkownika są w znacznym stopniu ograniczone. Na pomoc hakerom przychodzą rootkity, które potrafią uruchamiać procesy tak, by system widział je jako działające z prawami superusera. A użytkownik o takim statusie może już naprawdę dużo.

    Więcej:bezcatnews