robak komputerowy
| Po angielsku | worm |
|---|---|
| Którą formą pisać | po polsku Polska nazwa przyjęła się w tekstach i w wyszukiwarce — używaj jej samodzielnie. |
| Inne formy | robak · robak internetowy · robak sieciowy |
| Kategoria | Złośliwe oprogramowanie |
Robak komputerowy to rodzaj złośliwego oprogramowania, który powiela się i rozprzestrzenia przez sieć na inne systemy bez programu-nosiciela i bez udziału użytkownika [1]. Według definicji przytaczanej przez NIST robak może działać samodzielnie, przenosi na kolejne hosty kompletną działającą kopię siebie i może niszcząco zużywać zasoby komputera [1]. Tym różni się od wirusa, który dopisuje swój kod do innych plików, i od konia trojańskiego, który musi zostać uruchomiony przez oszukanego użytkownika [3].
Jak działa
Robak łączy w jednym programie trzy funkcje: wyszukiwanie celów, włamanie i kopiowanie siebie. Sekurak opisuje robaki jako programy, które rozprzestrzeniają się szybko przez Internet, wykorzystując tak zwane eksploity [3]. Exploit otwiera drogę przez podatność w usłudze sieciowej, a robak na nowym hoście od razu zaczyna szukać kolejnych ofiar. Nie czeka na kliknięcie, otwarcie załącznika ani uruchomienie pliku.
Cykl rozprzestrzeniania pokazuje schemat poniżej.
Ponieważ każdy zainfekowany host staje się kolejnym źródłem infekcji, liczba ofiar rośnie wykładniczo, dopóki nie zabraknie podatnych systemów. Skutkiem ubocznym bywa samo obciążenie sieci i maszyn. Definicja ISO/IEC 2382 cytowana przez NIST zaznacza, że robaki są często projektowane tak, by zużywać dostępne zasoby, na przykład miejsce na dysku albo czas procesora [1].
Robak jest mechanizmem dostarczania. To, co robi po wejściu, zależy od ładunku. Może szyfrować dane jak ransomware, dołączać maszynę do botnetu, instalować tylną furtkę albo nie robić nic poza dalszym rozprzestrzenianiem.
Robak a inne złośliwe oprogramowanie
Podział według sposobu rozprzestrzeniania jest najczęściej spotykany w polskich źródłach popularnych [3]. Kategorie nie wykluczają się: ten sam program może być robakiem i ransomware jednocześnie.
| Rodzaj | Jak się rozprzestrzenia | Czy wymaga użytkownika |
|---|---|---|
| Robak | sam, przez sieć i luki w usługach [3] | nie [1] |
| wirus komputerowy | dopisuje kod do innych plików wykonywalnych [3] | tak, ktoś musi uruchomić plik |
| koń trojański | udaje inny, przydatny program [3] | tak, ofiara sama go instaluje [3] |
W WordPressie
Strony WordPress rzadko padają ofiarą klasycznych robaków sieciowych, które atakują usługi systemu operacyjnego. Znany jest jednak przypadek robaka nastawionego na same blogi. We wrześniu 2009 roku Matt Mullenweg ostrzegał na oficjalnym blogu WordPressa przed robakiem krążącym po starych, niezaktualizowanych instalacjach [6].
Według tego wpisu robak rejestrował użytkownika, przez błąd bezpieczeństwa wykonywał kod przekazany w strukturze bezpośrednich odnośników, nadawał sobie uprawnienia administratora, a potem ukrywał się JavaScriptem na stronie listy użytkowników [6]. Następnie wyciszał się i dopisywał ukryty spam oraz złośliwe oprogramowanie do starych wpisów [6]. Opis łączy kilka zjawisk znanych z dzisiejszych infekcji: zdalne wykonanie kodu, nieautoryzowane konto administratora i SEO spam.
Jedyną obroną, którą autor wpisu mógł obiecać na teraz i na przyszłość, była aktualizacja; bieżącą bezpieczną wersją był wtedy WordPress 2.8.4 [6]. Zasada pozostaje aktualna: robak wybiera cele automatycznie, więc szuka wszystkich stron z tą samą luką, a nie konkretnej witryny. Dlatego aktualizacja rdzenia, wtyczek i motywów ma tu większe znaczenie niż ukrywanie wersji.
Zagrożenia i skutki
- Skala. Robak nie potrzebuje operatora przy każdej infekcji. WannaCry szybko zainfekował dziesiątki tysięcy systemów w ponad 150 krajach [4]; Niebezpiecznik podawał w dniu publikacji ponad 200 tysięcy ofiar [5].
- Przestoje. Zużycie zasobów samo w sobie może sparaliżować maszyny, nawet gdy ładunek jest nieszkodliwy [1][2].
- Ruch wewnątrz sieci. Robak w sieci lokalnej wykonuje automatycznie to, co człowiek robiłby jako lateral movement. Niebezpiecznik opisywał, że WannaCry skanował sieć lokalną i segmenty Internetu w poszukiwaniu podatnych systemów [5].
- Ładunek. Robak dostarcza to, co autor w nim zapisał, w tym szyfrowanie danych dla okupu [4].
Jak się bronić
Robaki żyją z luk, dla których istnieje już łatka (patch), ale które nie zostały wdrożone. Poprawka Microsoftu dla podatności SMB MS17-010, wykorzystywanej przez WannaCry, pochodziła z 14 marca 2017 roku, czyli sprzed ataku [4]. Podstawą jest więc zarządzanie poprawkami.
CISA zaleciła w alercie o WannaCry między innymi wyłączenie SMBv1, blokowanie wszystkich wersji SMB na granicy sieci oraz plan tworzenia kopii zapasowych przechowywanych w osobnym, bezpiecznym miejscu [4]. Te zalecenia przekładają się na ogólne zasady:
- ograniczać liczbę usług wystawionych do Internetu i filtrować porty na zaporze sieciowej;
- stosować segmentację sieci, żeby infekcja jednego hosta nie obejmowała całej organizacji;
- utrzymywać kopie danych poza zasięgiem zainfekowanej sieci;
- uczyć użytkowników rozpoznawania podejrzanych wiadomości, bo CISA wskazywała pocztę phishingową jako dodatkową drogę infekcji WannaCry [4].
Historia i przykłady
Robak Morrisa (1988). CERT Polska w dwudziestą rocznicę przypominał, że 2 listopada 1988 roku po raz pierwszy w sieci Internet pojawił się robak komputerowy [2]. Autorem był Robert Tappan Morris, a robak atakował systemy uniksowe z rodzin BSD, Sun i VAX [2]. Według CERT Polska rozprzestrzenił się szybko na około 6 tysięcy komputerów, paraliżując je całkowicie; usuwanie skutków trwało osiem dni, a straty oszacowano na 10 milionów dolarów [2]. Autor twierdził, że robak miał tylko pokazać słabości systemów, a gwałtowne rozprzestrzenianie było skutkiem błędu w kodzie [2].
WannaCry (2017). Kampania ruszyła 12 maja 2017 roku [5]. CISA opisała WannaCry jako ransomware wykorzystujący podatność SMB MS17-010 do rozprzestrzeniania się, z żądaniem okupu około 300 dolarów w bitcoinach, i przypisała go rządowi Korei Północnej [4]. W kodzie znajdował się mechanizm wyłączający: przed startem robak łączył się z określoną domeną i jeśli połączenie się udało, przestawał działać [5].
Przypisy
6- [1] Worm — Glossary · NIST CSRC
- [2] 20. rocznica robaka internetowego – czas na podsumowania i wnioski (cz.1) · CERT Polska
- [3] Robak? Trojan? Wirus? O co w tym wszystkim chodzi? · Sekurak
- [4] Indicators Associated With WannaCry Ransomware · CISA
- [5] Zamknięte szpitale i zakłady pracy. Uderzenie robaka WANNACRY i olbrzymie straty na całym świecie · Niebezpiecznik
- [6] How to Keep WordPress Secure · WordPress.org
Hasła w tym artykule
19- złośliwe oprogramowanie
- wirus komputerowy
- koń trojański
- exploit
- podatność
- ładunek
- ransomware
- botnet
- tylna furtka
- zdalne wykonanie kodu (RCE)
- nieautoryzowane konto administratora
- SEO spam
- aktualizacja rdzenia WordPressa
- lateral movement
- łatka (patch)
- zarządzanie poprawkami
- kopia zapasowa
- zapora sieciowa
- segmentacja sieci