Krótki wstęp, czyli o historii słów kilka

Historia wirusów komputerowych jest tak stara jak historia rozwoju komputerów do użytku osobistego. Od kiedy na świecie pojawiły się komputery ogólnodostępne, hakerzy rozpoczęli prawdziwy szturm na wszelkie maszyny cyfrowe, czyniąc niejako spustoszenie wśród oprogramowania i sprzętu. Warto zauważyć, że początkowo nie wierzono w istnienie takich "ewenementów" jak wirusy komputerowe, Wielu ekspertów uważało je w najgorszym razie za wymysł mediów, a w najlepszym - za plotkę. Przez długi czas traktowano wirusy jak mit. Kiedy jednak okazało się, jak niebezpieczny okazał się ów "mit", jak grzyby po deszczu zaczęły na świecie wyrastać firmy zajmujące się tworzeniem oprogramowania antywirusowego.

Największym szokiem dla opinii publicznej było ujawnienie katastrofalnych skutków pierwszego wylansowanego przez media wirusa komputerowego, Michelangelo. Michał Anioł uświadomił wielu użytkownikom i producentom komputerów, że wirusy komputerowe istnieją i mało tego, są w stanie poważnie zagrozić przechowywanym w komputerach danym, a nawet niszczyć cały sprzęt.

Obecnie wiodącymi firmami na rynku oprogramowania antywirusowego są Symantec, razem ze swoim Nortonem AntiVirus, oraz firma zajmująca się produkowaniem systemu antywirusowego Kaspersky. Warto na marginesie zauważyć, że nazwa ta wzięła się od nazwiska prominentnego naukowca, który stworzył podwaliny pod nowoczesną walkę z wirusami.

Całe szczęście, w obecnych czasach użytkownicy są bardziej "uświadomieni", jeżeli chodzi o zagrożenia płynące zewsząd do naszych komputerów. Wiele komputerów, zwłaszcza tych podłączonych do Internetu, jest wyposażonych w nowoczesne narzędzia chroniące je przed różnymi typami wirusów. Dzięki nim możliwe jest uniknięcie zainfekowania wirusem, a nawet jeśli taka infekcja nastąpi, możliwe jest zminimalizowanie jej skutków.

Większość komputerów jednak nie posiada odpowiedniego oprogramowania, które chroniłoby je przed nieautoryzowanym dostępem z zewnątrz i zainfekowaniem. Wielu użytkowników wychodzi z błędnego założenia, że "hakerzy nie mają powodu, aby mnie zaatakować". Jest to przekonanie jak najbardziej błędne. Zainfekowanie wirusem rzadko jest celowym działaniem hakera akurat w związku z tym konkretnym komputerem. Dla hakerów im więcej będzie komputerów zainfekowanych, tym większa ich gloria i chwała, a czy będą to komputery bankowe czy prywatne - to już nie jest ważne. Dlatego większość wirusów rozprzestrzenia się w taki sposób, że każdy, dosłownie każdy komputer może być celem ich ataku.

Często momentem refleksji nad swoim postępowaniem jest chwila, kiedy dojdzie już do infekcji wirusowej na komputerze. Pół biedy, jeśli jest to niegroźny wirus napisany "dla zabawy", który na przykład wyświetla tylko obraźliwe teksty na ekranie i nie robi nic złego z danymi z dysku. Niestety, takich "próbnych" wirusów jest dość mało. Większość z nich to szczwane bestie, które pod przykrywką swojego nosiciela potrafią narobić wielkich szkód w systemie, a następnie ulotnić się, pozostawiając użytkownika w stanie głębokiego szoku. Niestety, wówczas na obronę jest najczęściej za późno.

Definicja, czyli co to jest tak właściwie ten wirus?

Wirus komputerowy jest najczęściej niewielkim objętościowo programem komputerowym, złośliwi twierdzą, że są to programy napisane najlepiej ze znanych programów komputerowych. Rzeczywiście, aby wirus mógł spełnić swoją rolę, musi być niewielki, aby mógł się rozprzestrzeniać szybko, zgrabnie napisany, o określonej funkcji i zasadzie działania. Wirusy tym różnią się od zwykłych programów, że potrafią się powielać, czyli podlegają samoreplikacji. Zarażają dzięki temu różne pliki, najczęściej pliki wykonywalne lub posiadające tak zwane elementy aktywne, lub też na przykład sektory startowe dysków czy tablice alokacji. Istnieją cztery zasadnicze rodziny wirusów. Pierwszą z nich można określić jako wirusy właściwe. Działają one właśnie na powyżej wymienionej zasadzie, zarażając pliki i sektory dyskowe. Drugą rodziną wirusów są tak zwane konie trojańskie. Dostają się one do systemu razem z bardzo popularnymi i pomocnymi programami, często nawet z programami antywirusowymi i pod przykrywką ich działania dokonują spustoszenia w systemie. Nazwa wzięła się oczywiście od drewnianego konia, którego Grecy zostawili pod morami Troi jako podarunek, a po wprowadzeniu konia do miasta zaatakowali z jego wnętrza powodując upadek Troi. Trzecią grupą wirusów są tak zwane bomby logiczne. Ten typ wirusów działa jak inne wirusy, jednak są to zagrożenia "z opóźnionym zapłonem". Często przez długi czas istnieją w systemie niezauważone, uśpione. W momencie nadejścia konkretnej daty bądź wykonania przez użytkownika konkretnej czynności bomba uaktywnia się i jest w stanie wypełnić swoje zadanie jako wirusa. Ostatnią grupą wirusów, które zasługują na uznanie to tak zwane robaki, przez wielu uważane za wirusy najbardziej niebezpieczne. Są to programy, które działają samodzielnie, zwykle bez nosiciela, dlatego bardzo łatwo jest zarazić nimi system. Po inicjalizacji robaki zaczynają namnażał się w zastraszającym tempie, pożerając wszystkie zasoby systemowe i w krótkim czasie powodując zawieszenie, a nawet zniszczenie systemu operacyjnego. Wirusy takie są też niebezpieczne dla sprzętu. Potrafią tak intensywnie wykorzystywać procesor, że ten może ulec przegrzaniu i w konsekwencji przepaleniu, co równa się z jego nieodwracalna awarią.

Podział wirusów ze względu na to, co są w stanie zainfekować

Największą obecnie grupą wirusów są tak zwane wirusy plikowe. Ich łupem padają zwykle pliki wykonywalne, chociaż coraz częściej zdarzają się wirusy plikowe atakujące takie pliki jak dynamiczne biblioteki, sterowniki urządzeń, pliki z wstępnie przetworzonym kodem źródłowym programów. Takie wirusy potrafią bardzo mocno namieszać w systemie, ponieważ bardzo łatwo jest znaleźć dla nich nowych nosicieli. Wirusy takie dopisują swój kod do pliku, który jest potem ładowany do pamięci i w momencie jego wykonania, odpalony zostaje także kod wirusa. Hakerzy udoskonalili ten mechanizm tak, aby wirus potrafił dopisać swój kod nie tylko na końcu pliku, gdzie bardzo łatwo może zostać zauważony przez pierwszy lepszy program antywirusowy, ale także na początku pliku, czy też w środku, a nawet w kilku miejscach. Całe szczęście nowoczesne oprogramowanie antywirusowe radzi sobie z takimi problemami całkiem łatwo, oczywiście o ile kod wirusa jest znany twórcom takiego oprogramowania. Kiedy wirus zostanie już załadowany do pamięci, zaczyna wykonywać swoją destrukcyjną pracę. Najczęściej w międzyczasie jest wykonywany program - nosiciel, wszystko po to, aby użytkownik nie był świadomy tego, że posiada w swoim systemie wirusa.

Drugą ważną i bardzo niebezpieczną grupą wirusów są wirusy sektorów startowych dysków. Jeśli wirus nie wykryty dostanie się do głównego rekordu rozruchowego dysku systemowego, przy kolejnym uruchomieniu systemu może być bardzo groźny dla komputera. Wiąże się to z faktem, że kod wirusa zajmuje miejsce kodu, który zwykle jest wykorzystywany przy starcie systemu. Najczęściej wirus, który w ten sposób zostaje załadowany do pamięci komputera, uruchamia potem system, tak, aby wypełnić funkcję kamuflażu. Chodzi o to, by wirus niezauważony mógł jak najdłużej działać w systemie. Wirusy rekordu rozruchowego są o tyle niebezpieczne, że jeśli nie zostaną wykryte w momencie infekcji, potem jest już za późno, ponieważ zaczynają swoją pracę jeszcze przed startem systemu, a więc zanim do głosu dojdzie jakikolwiek system ochrony antywirusowej. Szkody, jakie może wywołać wirus od momentu załadowania do pamięci, a uruchomieniem programu antywirusowego są niewyobrażalne.

Kolejną ważną grupą wirusów są wirusy tablicy alokacji, chociaż dziś spotyka się ich coraz mniej ze względu na coraz mniejszą popularność systemów operacyjnych opartych o system tablic alokacji FAT. Jednak wirusy, które opanowały swego czasu systemy DOS i wczesne Windowsy działały na następującej zasadzie. System, aby określić gdzie na dysku znajduje się dany plik, korzystał z tablic alokacji. Wirusy tablic alokacji fałszowały wpisy w tablicach, dzięki czemu naprowadzały system na swój kod, a potem same ładowały do pamięci żądany plik. Obrywało się bogu ducha winnym plikom za to, że są nosicielami wirusów, a sprawa tkwiła głębiej - w strukturze tablic alokacji.

Bardzo ważnym rodzajem wirusów są tak zwane makrowirusy. Atakują one dokumenty i szablony aplikacji biurowych takich jak Microsoft Office i zarażają istniejące tam tak zwane makra, czyli miniprogramy, znane jako elementy aktywne dokumentów. Wirusy te rozprzestrzeniają się wśród szablonów dokumentów, tworząc w nich makra i czekając na odpowiedni moment, kiedy makra te zostaną uruchomione - wtedy ładują się do pamięci i rozpoczynają działanie.

Co jest bezpieczne, a na co należy uważać?

Większość strachu przed wirusami bierze się stąd, że użytkownicy nie potrafią rozróżnić, jakie zachowania są dla ich komputerów bezpieczne, a jakie nie. Brak fachowej literatury, a także wstręt wielu użytkowników do słowa pisanego, pozwalają mniemać, że nadal wielu z nich święcie wierzy w mity dotyczące wirusów. Jest ich wiele.

Najbardziej powszechnym mitem jest fakt, że zarazić się można poprzez odczytanie maila. Często słyszy się w Internecie: "Kiedy dostaniecie maila o tytule "Jakimśtam", nie otwierajcie go, ponieważ może to spowodować zawirusowanie komputera". Nic bardziej błędnego! Samo przeczytanie informacji nie jest w stanie zagrozić naszemu komputerowi w najmniejszym nawet stopniu. Niebezpieczne może być dopiero przeglądanie i uruchamianie załączników do wiadomości, które często są źródłem wirusa komputerowego. Dlatego też wiele programów pocztowych samoistnie blokuje odbiór potencjalnie niebezpiecznych plików, zwłaszcza plików wykonywalnych czy zawierających fragmenty kodu, takie jak na przykład pliki "*.js", z kodem JavaScriptu czy też "*.dll" z kodami dynamicznych bibliotek dołączanych do wielu programów. Rzeczywiście, tego typu załączniki, zwłaszcza jeżeli pochodzą od nieznanych nam nadawców, należy traktować ze szczególną ostrożnością.

Do niedawna mitem było to, że można się zarazić poprzez przeglądanie stron internetowych. O ile większość z nich używa samych bezpiecznych elementów, takich jak HTML, aplety Java, cookies czy Flash, istnieją także bardzo niebezpieczne elementy, stworzone przez nikogo innego jak firmę Microsoft. Mowa tutaj oczywiście o formantach aktywnych, tak zwanych ActiveX. Nie należy ufać takim formantom, o ile nie są rekomendowane przez znane strony internetowe, takie jak Onet.pl. Dlatego tak - poprzez przeglądanie stron WWW można się zarazić wirusem, jednak jeśli będziemy działać rozsądnie i nie będziemy ufać większości formantów, możemy czuć się w Sieci naprawdę bezpiecznie.

Oprogramowanie antywirusowe

Głównym zadaniem dobrego systemu antywirusowego jest oczywiście pilnowanie, aby do systemu komputerowego nie dostał się żaden wirus. Program antywirusowy przez cały czas monitoruje system i zapobiega ewentualnemu zainicjowaniu wirusa. Dzięki aktualizacjom przez Internet, tego typu programy bardzo często uzupełniają swoją wiedzę na temat najnowszych wirusów.

Do głównych zadań programów antywirusowych należy:

  1. monitorowanie rejestru systemowego
  2. monitorowanie programów przy ich starcie
  3. kontrolowanie włożonych i odczytywanych dyskietek i dysków
  4. monitorowanie każdego ruchu do i z Internetu, głównie uważna obserwacja ściąganych z Internetu plików, dzięki czemu możliwe jest szybkie zareagowanie na wirusa
  5. skanowanie plików, folderów i dysków, aby zapobiegać załadowaniu wirusa, który jest rodzajem bomby logicznej
  6. wykonywanie skanowania antywirusowego zgodnie z pewnym harmonogramem (na przykład raz w tygodniu)
  7. aktualizacja siebie samego, czyli głównie bibliotek wirusów

Dobry pakiet antywirusowy spełnia szereg funkcji. Przede wszystkim powinien blokować wirusy, jeszcze zanim zostaną one zainicjowane. Dzięki temu możliwe jest zapobieganie infekcji, zamiast żmudnego i często niemożliwego usuwania jej skutków. Blokowanie jest komputerowym odpowiednikiem jakże prawdziwego powiedzenia, że lepiej zapobiegać niż leczyć. Kiedy taki program blokujący wykryje plik, który może być podejrzany o bycie zainfekowanym, natychmiast wyświetla alert aby poinformować o tym użytkownika, a także aby zapytać go o wytyczne dotyczące dalszego działania.

Niestety, często jest tak, że blokery nie są w stanie zabezpieczyć przed wszystkimi wirusami. Dlatego oprócz programów tego typu, w skład pakietu antywirusowego powinny wchodzić aplikacje, które potrafią rozpoznać skutki działania wirusa i są w stanie "leczyć" system. Programy tego typu wykonują skanowanie dysków i w momencie wykrycia infekcji, starają się usunąć jej skutki. Często wiąże się to nie tylko z usunięciem zainfekowanego pliku, ale także z odtwarzaniem niektórych danych, zniszczonych przez wirusa. Istnieje także metoda zwana kwarantanną plików, dzięki której możliwe jest uwolnienie pliku od wirusa bez konieczności jego usuwania. Jest to o tyle istotne, że często łupem wirusów padają pliki bardzo ważne, których utrata mogłaby być znacząca nie tyle dla samego systemu, ale dla użytkownika (na przykład wirus zainfekował szablon, w którym zapisana była jedyna kopia pracy magisterskiej pisanej przez trzy miesiące).