Wirusy komputerowe są małymi programami powielającymi się przez zarażanie:

  • plików wykonywalnych
  • jednostek alokacji plików
  • sektora startowego nośnika danych (HDD lub FDD)
  • dokumentów pochodzących z pakietów biurowych, jak na przykład MS Office

Ogólny termin "wirus" obejmuje cztery podstawowe rodzaje programów:

  1. wirusy - ich ogólna definicja jest tożsama z powyższą
  1. konie trojańskie - są to wirusy ukrywające się w na pozór pożytecznym oprogramowaniu (program antywirusowy, przeglądarka plików graficznych), które po uruchomieniu obok wykonywania prawdziwych zadań, dokonują również spustoszenia
  1. bomby logiczne - jest to rodzaj wirusów pozostających przez dłuższy czas w ukryciu, których aktywacja ma miejsce w chwili wykonania określonej czynności (skasowanie określonego pliku) czy też nadejścia określonej daty
  1. robaki (worms) - są to niewielkie, niezwykle szkodliwe wirusy, które nie wymagają obecności nosiciela; powielają ciągle, w samoistny sposób, przez co powodują w niedługim czasie całkowite wyczerpanie zasobów systemu (robaki w krótkim czasie potrafią sparaliżować nawet dużą sieć komputerową)

Pierwsze ataki wirusów miały miejsce jeszcze w roku 1986, co wcale nie było jednoznaczne z przyjęciem ich jako prawdziwego zagrożenia dla użytkowników komputerów (nawet specjaliści z tej dziedziny nie byli w stanie uwierzyć w ich istnienie). Niewątpliwą popularność środowisku wirusów przyniósł szkodnik o nazwie Michał Anioł (Michael Angelo), który na początku lat dziewięćdziesiątych podniósł poziom świadomości w zakresie zagrożenia, także wśród zwykłych internautów. Nagłośnienie przez media faktu zaistnienia owego wirusa oraz jego niszczycielskiej działalności poskutkowało więc pozytywnie w postaci poważnego traktowania tego zjawiska oraz chęci zabezpieczenia się przed nim. Dynamika zainteresowania światem wirusów w ostatnich latach nieco opadła - istnienie ich stało się niepodważalnym i wszechobecnym faktem, dlatego nikt już nie robi z tego tragedii, lecz stara się po prostu w optymalnym stopniu uchronić przed ewentualnym atakiem. Należy tutaj jednak zaznaczyć, iż nadal istnieje wiele osób ignorujących możliwości tych małych szkodników lub co najwyżej traktujących to zjawisko, jako nie dotyczące ich samych, dlatego też wiele jest przypadków "uwierzenia w wirusa" dopiero w chwili bezpośredniego starcia z nim na własnym komputerze.

Istniejące wirusy można podzielić w następujący sposób:

  • wirusy plikowe (file viruses) - są to tak zwane "zwykłe wirusy", stanowiące najstarszą rodzinę tych programów; wirusy te przed rozpoczęciem niszczycielskiej działalności ulegają najpierw replikacji, stąd też ich rozwój związany jest z szukaniem coraz to nowszych nosicieli; w pierwszych fazach atakiem tych wirusów narażone były jedynie pliki wykonywalne (*.com, *.exe) i wsadowe (*.bat), jednak ich dalszy rozwój poszerzył to grono o zbiory posiadające fragmenty kodu, sterowniki urządzeń, biblioteki (*.bin, *.ovl, *.dll, *.lib, *.drv, *.obj, *.sys, *.vxd); zasada działania tych wirusów polega na dołączeniu swojego kodu do pliku (starsze - na końcu, wirusy nowsze - modyfikacja początku oraz dopisanie kodu na środku bądź na końcu), a uaktywnienie wirusa powoduje załadowanie takiego pliku do pamięci systemu (istnieje wiele wirusów, które nie niszczą atakowanego pliku, przez co wykonują one po aktywacji program nosiciela ukrywając swoją obecność przed użytkownikiem komputera)
  • wirusy sektora startowego dysku (boot sector viruses) - nosicielem wirusa stać się może także sektor startowy nośnika danych - dysk twardy (Master Boot Record) bądź dyskietka (Boot Sector); te wirusy są szczególnie niebezpieczne - zaraz po uruchomieniu, komputer stara się wczytać system zapisany w pierwszym sektorze dyskietki lub dysku (należy pamiętać, iż wszystkie sformatowane dyskietki, nawet te nie zawierające plików systemowych, posiadają boot sektory, więc potencjalnie mogą być nosicielami wirusów); zasada działania - na przykład umieszczenie wirusa w MBR i zniszczenie jego zawartości uniemożliwiając dostęp do dysku, inny przykład to przeniesienie przez wirusa kodu inicjującego system z sektora startowego w inne miejsce na dysku oraz zajęcie jego miejsca, czego efektem jest załadowanie go jeszcze zanim system zostanie wystartowany (więc również przed startem programu antywirusowego)
  • wirusy FAT (link/FAT viruses) - są to wirusy tablicy alokacji plików, które do swojej replikacji wykorzystują jednostki alokacji plików (JAP), na które tablica FAT dzieli DOS-ową partycję dysku twardego; aby uzyskać dostęp do pliku, system DOS szuka w FAT jego numer pierwszej jednostki alokacji oraz wczytuje kolejno wszystkie jednostki, które są zajmowane przez plik; zasada działania tych wirusów polega na tym, iż zmieniają one wartość pierwszej JA (jednego bądź wielu plików) w numer wskazujący JA kodu wirusa, przez co wczytanie tego pliku uruchamia wirusa (może on również załadować odpowiedni program)
  • makrowirusy - wirusy te stanowią najmłodszą rodzinę szkodników - ich narodziny wiążą się z wprowadzeniem do pakietów biurowych (MS Office, Corel WordPerfect czy Lotus SmartSuite) języków umożliwiających tworzenie makr (na przykład Visual Basic for Applications - VBA); zasada działania większości wirusów makro polega na tym, iż wykorzystują one fakt posiadania przez szablony dokumentów makr - wirus zaczyna swoją aktywność w momencie otworzenia zainfekowanego dokumentu zarażając zbiory o rozszerzeniu *.doc i zapisując je w postaci szablonów, następnie jedno bądź kilka automatycznie wykonywanych makr zastępuje kod wirusa
  • wirusy typu stealth (stealth viruses) - powstanie ich wiąże się z postępem w wykrywaniu wirusów - początkowo każdy wirus posiadał swoją sygnaturę, czyli indywidualny ciąg bajtów, co uległo zmianie z chwilą, Dark Avenger (Bułgar o takim pseudonimie) stworzył metodę umożliwiającą tworzenie wirusów samoistnie się mutujących (do tej grupy mogą należeć wszystkie wcześniej wymienione wirusy); wirusy stealth w trakcie prób dostępu przez program antywirusowy do zainfekowanego pliku bądź sektora dysku, są w stanie bardzo szybko naprawić chwilowo uszkodzone dane oraz zatuszować swoją obecność
  • wirusy polimorficzne (polymorphic viruses) - ta grupa wirusów nie posiada stałej sygnatury, gdyż kod ich samoczynnie się zmienia z każda kolejną infekcją

Programy antywirusowe

Programy antywirusowe stanowią najlepsze dotąd powstałe narzędzie do walki z wirusami. Różne oprogramowania zaczęto tworzyć już od chwili ataku pierwszego wirusa, a istniejące obecnie oraz nieustannie rozwijające się programy dają możliwość ochrony systemu komputerowego przed jego zainfekowaniem, szybkie wykrycie wirusa oraz (zazwyczaj) usunięcie skutków takiego ataku. Oprogramowanie antywirusowe można podzielić na różne grupy funkcjonalne:

1. programy sprawdzające sumy kontrolne plików - programy te zakładają bazy danych o pewnych cechach zbiorów dyskowych oraz newralgicznych obszarów dysków; ich systematyczne stosowanie pozwala na zidentyfikowanie źródła infekcji jak również nieraz odzyskanie straconych informacji

2. programy diagnostyczno-leczące - programy tego typu wyszukują na dysku oraz w pamięci znane wirusy, a w sytuacji ich odkrycia - (w oparciu o charakterystyczne algorytmy zawarte w plikach) - usuwają skutki infekcji; programy te są najbardziej powszechne przez ich wysoką skuteczność w profilaktyce, jednak nie radzą sobie one zupełnie z atakiem nieznanych wirusów oraz sytuacjami, w których wirus uaktywnia się od razu po zainfekowaniu dokonując nieodwracalnych zmian; wśród tych programów do najlepszych należy Mks_Vir (Marka Sella)

3. blokery - stanowią one programy, które starają się (jako jedyne) przeciwdziałać atakom wirusowym; monitorują one działalność poszczególnych programów i alarmują użytkownika w sytuacji, gdy odkryją jakieś "podejrzane" operacje pozostawiając mu dalsze decyzje w sprawie działania; do wad blokerów należy głównie ich stosunkowo niska skuteczność (nowe wirusy posiadają zazwyczaj mechanizmy, które nie pozwalają na wyodrębnienie z nich podejrzanych operacji) oraz to, iż zajmują one część zasobów komputera i obciążają w pewnym stopniu pracę procesora; częste są również fałszywe alarmy w ich wykonaniu, co wiąże się z mylnym definiowaniem wykonywanych przez programy operacji

Wyróżnić można następujące skanery antywirusowe on-line:

  • Trend Micro HouseCall
  • Symantec Security Check Virus Detection
  • Panda ActiveScan
  • MKS mks_vir Skaner On-Line
  • McAfee FreeScan
  • F-Secure Online Virus Scanner
  • Computer Associates eTrust Antivirus Web Scanner
  • BitDefender Online Scanner
  • ArcaBit ArcaOnline

Poniżej znajdują się dostępne programy antywirusowe:

  • VirusBuster
  • Ukrainian National Antivirus
  • Trend Micro OfficeScan
  • Symantec Norton AntiVirus
  • Sophos Anti-Virus
  • SOFTWIN BitDefender
  • Panda Antivirus
  • Norman Virus Control
  • MKS mks_vir
  • McAfee VirusScan
  • Kaspersky Anti-Virus
  • Grisoft AVG Anti-Virus
  • GeCAD RAV AntiVirus
  • G DATA AntiVirenKit
  • F-Secure Anti-Virus
  • FRISK F-Prot Antivirus
  • Eset NOD32
  • Dr.Web Anti-virus
  • Computer Associates eTrust EZ Antivirus
  • Central Command Vexira Antivirus
  • Cat Quick Heal Anti-Virus
  • BullGuard
  • Avira AntiVir
  • Authentium Command Antivirus
  • ArcaBit ArcaVir
  • ALWIL avast!

Oczywiście, najskuteczniejszym sposobem walki z wirusami jest po prostu nie zarażanie się nimi, a więc przestrzeganie choć podstawowych zasad profilaktyki w tym zakresie. I tak, z uwagi na fakt, iż najwięcej wirusów przenosi się na dyskietkach, pierwszą zasadą profilaktyki powinno być to, by bezwzględnie nie wkładać do napędu dyskietek, których źródeł nie znamy (można taką dyskietkę poddać skanowaniu antywirusowemu). Szczególnie niebezpieczne są również różnego rodzaju pliki ściągane z Internetu - te powinno się sprawdzać zaraz po ściągnięciu. W celu zabezpieczenia się przed rozsiewaniem wirusów, należy również kontrolować wszelkie programy oraz dane z twardego dysku. Dobrze jest również posiadać zdrową dyskietkę systemową (tworzy się ją poprzez wybranie polecenia "Formatuj" a następnie opcji "Kopiuj tylko pliki systemowe").

Brak kompetencji w zakresie dziedziny wirusów często powoduje wybuchy paniki, takie jak na przykład trwający dwa dni paraliż w światowych systemach informatycznych z powodu informacji o wirusie Michael Angelo czy też ostrzeżenia o rzekomych wirusach w internetowej poczcie: "join the crew" czy też "penpal greetings". Takie zjawiska należy zwalczać poprzez właściwą edukację zarówno młodych jak i starszych użytkowników komputerów, którą można prowadzić za pośrednictwem różnego rodzaju informatycznych czasopism (dobry przykład stanowi tutaj magazyn PC World Komputer). Akcja tego typu na szerszą skalę z pewnością spowodowała by, że użytkownicy komputerów mieli by znacznie mniej zmartwień wynikających z własnej niewiedzy.