Konie trojańskie - Michał A. Egler

Wirusem komputerowym jest program posiadający zdolność do samodzielnego powielania swojego kodu. Ale najgroźniejsze jest to, że niektóre wirusy, poza rozmnażaniem się, zawierają także groźny „ładunek”... 

Takim ładunkiem mogą być dowolne działania realizowane przez wirusy, zarówno o niegroźnym dla użytkownika charakterze, np. wyświetlanie napisów, obrazków, odtwarzanie muzyki, jak i działania destrukcyjne dla całego systemu komputerowego, do którego dostał się wirus: kasowanie plików na dysku, zamazywanie najważniejszych dla integralności danych sektorów dysków twardych, zamazywanie pamięci CMOS, Flash BIOS itp. Ładunek może być inicjowany, w zależności od pomysłowości autora, w różnych okolicznościach, np. po uruchomieniu danego pliku czy otwarciu dokumentu lub też samoczynnie, np. w określonym dniu. 
Pierwsze wirusy powstały na przełomie lat 60. i 70. Wtedy to Amerykanin F. Cohen rozpowszechnił określenie „wirus komputerowy”. Pod koniec lat 80. doświadczano epidemii takich wirusów, jak: Brain, Vienna, Cascade, Jerusalem czy PingPong. W sierpniu 1995 został napisany pierwszy wirus, który dał początek nowej fali tzw. makrowirusów, albowiem infekował nie programy, lecz dokumenty programu Microsoft Word. Liczba tego typu wirusów rośnie lawionowo. 
Innym zagrożeniem są pojawiające się wirusy atakujące dane z Accessa i PowerPointa. Skomplikowany format binarny plików Accessa i PowerPointa powoduje, że wielu producentów programów antywirusowych nie potrafi zastosować metod wykrywania tego typu wirusów. Z uwagi na gwałtowny wzrost roli Internetu będziemy świadkami powiększającej się liczby tzw. backdoorów i robaków internetowych. Nikt nie robił testów odporności wirusów na problem roku 2000. Jest spore prawdopodobieństwo, że niektóre wirusy mogą wtedy uaktywnić zawarty w sobie ładunek i uczynić dodatkowe szkody. 

Najnowsze typy wirusów

Wirusy HTML i VBS
Pod koniec października ubiegłego roku wykryty został pierwszy wirus, składający się z zaledwie kilkunastu komend, infekujący pliki skryptów Windows. Wirusy tej klasy działają pod wszystkimi wersjami 32-bitowych Windows (95/98/NT), w których zainstalowany jest Microsoft Scripting Host. Niebezpieczne jest to, że wirusy tego typu mogą rozmnażać się przez Internet, ponieważ nowoczesne przeglądarki będą uruchamiać zainfekowane skrypty na lokalnym komputerze, nawet jeśli skrypty ulokowane są w zdalnym serwerze Web. Obecnie znanych jest ponad 50 wirusów HTML i VBS, a nawet jeden infekujący skrypty programu CorelDRAW!. 

Robaki internetowe
Programy te – cieszące się ostatnio złą sławą – podczas uruchamiania „doczepiają się” do systemu lub podmieniają biblioteki systemowe. Po najbliższym restarcie systemu robak aktywuje się i pozostając niewidocznym dla użytkownika zaraża wysyłaną pocztę. W zależności od pomysłowości autora robaki mogą dołączać się do każdego wysyłanego listu lub automatycznie rozsyłać się (jako załączniki) do wszystkich osób zapisanych w książce adresowej użytkownika komputera, do którego wtargnęły. Same załączniki są niegroźne do momentu ich uruchomienia lub, w przypadku dokumentów np. Worda, ich otwarcia. W chwili uruchomienia robak natychmiast instaluje się w systemie. 

Wirus CIH (Czarnobyl)
Jego autorem jest Chen Ing-Hou z uniwersytetu w Tajpej na Tajwanie. Znanych jest kilka odmian wirusa CIH, które różnią się małymi fragmentami kodu i datą rozpoczęcia destrukcji (26 kwietnia każdego roku lub 26 dzień każdego miesiąca). Wirus CIH został nazwany Czarnobyl ze względu na przypadkową zbieżność daty aktywacji z datą katastrofy w Czarnobylu. 
Długość kodu wirusa wynosi ok. 1 kilobajta. Jest to wirus specyficzny dla plików wykonywalnych PE (Portable Executable) Windows 95/98. Podczas infekcji wirus szuka „dziur” w kodzie pliku PE, którego nieużywane fragmenty znajdują się pomiędzy tzw. sekcjami, opisanymi w nagłówku pliku. Po odnalezieniu takich dziur zapisuje tam swój kod, następnie zwiększa rozmiar sekcji o niezbędną wartość, tak aby rozmiar całego pliku nie wzrósł po infekcji. Jeśli dziura jest wystarczającej wielkości, wirus zapisuje swój kod do jednej sekcji. Jeśli nie, wirus dzieli swój kod na kilka części i zapisuje je na końcu kilku sekcji. Kod wirusa może być zatem podzielony wewnątrz zarażonego pliku na kilka części, co oczywiście utrudnia jego wykrycie przez program antywirusowy. 
Wirus szuka także dziur w nagłówku plików PE. Jeśli znajdzie nieużywany blok nie mniejszy niż 184 bajty, zapisuje tam swoją procedurę startową. Następnie zmienia adres wejścia do programu w nagłówku PE na wartość wskazującą wejście do własnej procedury, umieszczonej w nagłówku. Adres wejścia do programu wskazuje zatem nie na odpowiednią sekcję, lecz na nagłówek – poza ładowany obszar pliku. Mimo tego, zainfekowane programy mogą działać bez problemów – Windows ignoruje niebezpieczeństwo, ładuje nagłówek pliku do pamięci, ładuje sekcje programu, następnie przekazuje sterowanie do procedury startowej wirusa w nagłówku PE... 
CIH instaluje się w pamięci, przejmuje odwołania dostępu do pliku i infekuje otwierane pliki EXE. W niektórych przypadkach system zawiesza się podczas uruchamiania zainfekowanej aplikacji. Następnie wirus sprawdza datę systemową i uruchamia procedurę destrukcji, podczas której używa bezpośredniego dostępu do portów Flash BIOS i bezpośredniego dostępu do dysku. Zależnie od daty systemowej, CIH uruchamia swoją procedurę destrukcyjną, która próbuje zamazać Flash BIOS. Jest to oczywiście możliwe tylko wtedy, gdy płyta główna i chipset pozwalają na zapis do pamięci Flash. 
Zwykle zapis pamięci Flash może być zablokowany przez przełącznik DIP, o ile płyta główna na to pozwala. Następnie procedura destrukcyjna wirusa CIH zamazuje dane na wszystkich twardych dyskach. Zamazując sektory rozruchowe dysków, wirus korzysta z bezpośrednich odwołań zapisu na dysk i omija zabezpieczenia antywirusowe zaimplementowane w BIOS-ie. 

Programy typu backdoor
Aplikacje te cechuje pokrewieństwo z tzw. koniami trojańskimi. Składają się z dwóch elementów: klienta i serwera, które, wzajemnie się komunikując, pozwalają na przejęcie pełnej kontroli nad komputerem, na którym zainstalowany jest serwer. Najbardziej znanym programem tego typu jest Back Orifice (BO), w swej najnowszej wersji – BO2K – reklamowany jako narzędzie do zdalnej administracji. Aplikacja pozwala użytkownikowi kontrolować zdalny komputer poprzez połączenie TCP/IP za pomocą konsoli tekstowej lub interfejsu graficznego. Część serwerowa Back Orifice instaluje się niewidocznie dla użytkownika (np. po otwarciu zarażonego załącznika poczty elektronicznej) i przy każdym następnym starcie systemu uruchamia się automatycznie. Jedyną cechą pozwalającą klasyfikować to narzędzie jako zwykłego konia trojańskiego jest właśnie „cicha” instalacja i uruchamianie się – serwer nie ma aktywnego okna, ani nie można znaleźć tej aplikacji na liście menedżera zadań Windows. 
Głównym plikiem wykonywalnym BO jest BOSERVE.EXE, który może mieć jednak różne nazwy w zainfekowanym komputerze. Część serwerowa programu może być wywoływana przez oprogramowanie klienta z komputera zdalnego. Drugim plikiem jest BOCONFIG.EXE – służy do konfiguracji serwera BO, jak również może dołączać się do innych plików wykonywalnych w ten sam sposób, jak robią to wirusy. Podczas dołączania (infekcji) plik zarażany jest przesuwany „w dół”, a kod konia trojańskiego jest umieszczany na początku pliku. Gdy zainfekowane pliki są uruchamiane, koń trojański przywraca na dysk oryginalny kod zarażonego programu i wykonuje go bez żadnych efektów ubocznych. 
Główna procedura części serwerowej BO oczekuje na komendy wydane przez klienta na komputerze zdalnym. Komendy nadchodzą w postaci zaszyfrowanej. 
Podczas instalacji w systemie BO tworzy plik WINDLL.DLL, który przejmuje obsługę konsoli. Najnowsza wersja tego konia trojańskiego – BO2K – rozprowadzana jest wraz z kodami źródłowymi. Umożliwia to rozszerzanie standardowych możliwości przez zastosowanie tzw. wtyczek (plug-ins), które mogą być wysyłane do serwera i instalowane na zdalnym komputerze. 

WinHLP.Demo
W sierpniu tego roku odkryto po raz pierwszy wirusa osadzonego i rozmnażającego się w strukturze plików pomocy Windows. Gdy otwierany jest zainfekowany plik HLP, system pomocy przetwarza skrypt wirusa i uruchamia wszystkie umieszczone tam procedury. Co więcej, wirus zmusza także system do uruchomienia specjalnie przygotowanych danych binarnych, które zawarte są w jednej z instrukcji w skrypcie wirusa. Uruchamiane są procedury infekcji powodujące zarażenie wszystkich plików pomocy Windows. Przed procedurą zarażania wirus wyświetla komunikat: 
HLP.Demo
Trying to infect
a po jej zakończeniu:
HLP.Demo
Script comes to end!

Ifnis
Kaspersky Lab., światowy lider w technologii oprogramowania antywirusowego, zawiadomił o odkryciu pierwszego w świecie wirusa komputerowego, ingerującego w najwyższy poziom bezpieczeństwa systemu operacyjnego Windows NT. Jest to pierwszy wirus, który działa jak sterownik systemu Windows NT. Powoduje to bardzo trudne wykrywanie i usuwanie wirusa z pamięci komputera. Wirus WinNT.Infis został wykryty „na wolności” przez ekspertów Kaspersky Lab. 7 października br. 
Infis jest wirusem plikowym, rezydującym w pamięci systemu Windows NT 4.0 z zainstalowanymi Service Packami 2, 3, 4, 5, 6. Nie działa on uruchomiony w systemie Windows 95/98, Windows 2000 albo innych wersjach Windows NT. 
Głównym objawem zakażania jest niemożliwość uruchomienia niektórych programów, na przykład: MSPAINT.EXE, CALC.EXE, CDPLAYER.EXE itd. Z powodu błędów wirus uszkadza niektóre pliki podczas infekcji. Innym objawem obecności wirusa jest plik INF.SYS w folderze /WinNT/System32/Drivers. 
Podczas uruchamiania zakażanego pliku wirus kopiuje swój kod do pliku INF.SYS w folderze sterowników Windows NT WinNT\System32\Drivers. Wtedy to tworzy klucz z trzema sekcjami w rejestrze systemu Windows: 
\Registry\Machine\System\Current ControlSet\Services\inf

• Type = 1 – standardowy sterownik Windows NT
• Start = 2 – sterownik trybu uruchomienia
• ErrorControl = 1 – kontynuuje ładowanie systemu po błędzie w sterowniku 

Jako rezultat umieszczenia wirusa w pliku INF.SYS jest on aktywowany przy każdym uruchomieniu systemu. Po załadowaniu pliku INF.SYS wirus instaluje się w pamięci Windows NT. Po zakończeniu instalacji w pamięci wirus przejmuje kontrolę na NT, wykorzystując nieudokumentowane wewnętrzne funkcje Windows NT. Wirus przejmuje otwieranie plików, kontroluje nazwy plików i ich wewnętrzny format i wtedy uruchamia podprogram infekowania. 
Wirus Infis infekuje tylko pliki wykonywalne w formacie PE, za wyjątkiem CMD.EXE (procesor poleceń Windows NT). Zakażenie pliku powoduje zwiększenie jego wielkości o 4608 bajtów „czystego kodu” wirusa. Wirus unika powtarzania zakażania pliku. Zakażenie pliku powoduje zwiększenie jego wielkości o 4608 bajtów „czystego kodu” wirusa. Autor wirusa Infis nie zaimplementował żadnych funkcji destrukcyjnych. Jednak błędy w kodzie wirusa powodują uszkodzenia zainfekowanych plików, co powoduje zgłoszenie standardowego komunikatu o błędzie podczas ich uruchamiania. 
Procedury wykrywania i usuwania wirusa Infis były dodane w specjalnej aktualizacji baz danych AVP dostępnej na stronie www.avp.ru. 

Programy antywirusowe

AntiViren Kit (AVK)
Jest to zlokalizowana wersja niemieckiego programu. Interfejs oraz instrukcja obsługi programu dostępne są w języku polskim. W wyniku współpracy firm antywirusowych program używa zarówno silnika, jak i baz antywirusowych firmy Kaspersky Lab., (patrz AVP). Wykrywalność programu jest praktycznie identyczna jak programu AVP. Różny od AVP jest natomiast interfejs programu. Jego konfiguracja jest dosyć skomplikowana. Brak jest możliwości zapisu podsumowania testu, który jest jedynie wyświetlany w oknie po zakończeniu przeszukiwania. Program zawiera encyklopedię wirusów, ma także wbudowany scheduler. Domyślnie program instalowany jest do folderu „Programy”, a nie do standardowego folderu „Program Files”'. W ostatnich miesiącach producent programu AVK wypuścił na rynek nowy produkt – AVK dla Novell Netware. 

AntiViral toolkit Pro (AVP) 3.0 build 131
Program napisany przez firmę Kaspersky Lab., założoną przez znanego na całym świecie „wirusologa” Eugene Kaspersky’ego. Firma współpracuje z wieloma innymi firmami na świecie – m.in. program firmy G-Data AVK używa silnika programu AVP. Także program F-Secure firmy Datafellows używa, jako drugiego silnika, silnika i baz programu AVP. AVP wielokrotnie zajmował pierwsze miejsca w testach wielu czasopism na świecie. Także pierwsze miejsce uzyskiwał w testach Virus Bulletin oraz uzyskał certyfikat ICSA. Program charakteryzuje się bardzo elastycznymi możliwościami konfiguracji. W skład pakietu wchodzi monitor rezydentny, skaner, scheduler oraz moduł aktualizacji (nawet co tydzień) baz antywirusowych przez Internet. Program pozwala na sprawdzanie plików spakowanych i zarchiwizowanych wieloma metodami. Od początku roku firma Kaspersky Lab. wprowadziła na rynek wiele nowych produktów antywirusowych, takich jak: AVP dla Microsoft Exchange Server, AVP dla Linux, AVP, Daemon dla Linux, AVP dla BSD, narzędzia do administracji AVP w sieciach lokalnych: NCC i AVP Server, AVP dla Novell Netware 5. Niektóre z tych programów znajdują się jeszcze w fazie testów beta. 

F-Secure 
Program F-Secure powstał w wyniku podpisania umowy między firmami Datafellows i Kaspersky Lab. Jest programem mającym dwa silniki (F-Prot i AVP). Konfiguracja programu umożliwia użycie jednego silnika lub obu jednocześnie. Zwiększa to znacznie skuteczność programu. W planach firmy jest włączenie trzeciego silnika TunderBYTE. Program używa nowoczesnej technologii CounterSign. Jest pierwszym programem antywirusowym, łączącym dwa skanery dwóch różnych firm w jeden program.
W programie wszystkie mechanizmy ochronne zostały umiejscowione na poziomie wewnątrzsystemowych serwisów API, co wpłynęło na poprawę wydajności i zmniejszenie zapotrzebowania na zasoby komputera. Główne menu programu pozwala zdefiniować zadania. Każde spośród nich może być uruchomione czasowo. Na życzenie program potrafi testować pliki wewnątrz najbardziej popularnych archiwów ZIP, LZH, ARJ.
Podczas testów program F-Prot nie radził sobie z wykrywaniem wirusów Access. Wykrywany jest jedynie pierwszy wirus tej klasy. Jest to zastanawiające, ponieważ program bez problemów radzi sobie z wirusami PowerPoint mającymi o wiele bardziej skomplikowany format niż wirusy Access. W pakiecie F-Prot znajduje się, oprócz skanera, monitor rezydentny F-StopW. Program ma bardzo przejrzyste menu, pozwalające na konfigurowanie bardzo wielu ustawień często niedostępnych w innych programach antywirusowych (np. lista wykluczeń z testów – programy znajdujące się na liście nie będą testowane). Oprócz skanera i programu rezydentnego w pakiecie znajduje się także program F-MacroW. Jest to skaner wyspecjalizowany w działaniu przeciwko wirusom makro. Bazy antywirusowe makrowirusów uaktualniane są codziennie i dostępne przez Internet na serwerze firmy. W najnowszej wersji F-Prot 3.06 poprawiono też znacznie wykrywalność wirusów VBS. 
Z założenia F-Secure jest programem do zastosowań korporacyjnych. Jego cena znacznie maleje przy zakupie licencji na wiele stanowisk. 

InoculateIT Personal Edition Version 4.50 
Program antywirusowy firmowany przez Computer Associates. Jest nieco przestarzałą wersją programu VET australijskiej firmy Cybec. Program nie ma niektórych opcji dostępnych w programie VET. Zmienione zostały tylko nazwa firmy oraz nazwa programu. W Stanach program dostępny jest za darmo jako InncoulateIt PE 4. 

MkS_Vir 
Po wielu latach ukazywania się tego programu wyłącznie w wersji dla DOS, od niedawna jest on dostępny także w wersjach dla Windows 95/98/NT wraz ze specjalnym modułem administratora. MkS_Vir jest jedynym polskim programem antywirusowym w naszych testach. Ma możliwość zdefiniowania zadań z różnymi konfiguracjami, jednakże brakuje mu możliwości uruchamiania o określonym czasie. Program nie rozpoznaje wirusów Access, PowerPoint, Java, HTML/VBS, mIRC, a także nie potrafi testować plików wewnątrz archiwów (co stało się już pewnym standardem wśród programów antywirusowych). Wyświetlenie w czasie testu okna z informacjami o programie zawiesza test, który jest kontynuowany dopiero po zamknięciu okna. 

McAfee VirusScan 4.0.3 
Znany od wielu lat program Scan został w wersjach 4.xx zapatrzony w bardzo dobry silnik innej znanej firmy – Dr Solomons – co znacznie podniosło wykrywalność wirusów przez ten program. W skład pakietu, oprócz skanera, wchodzi monitor rezydentny (Vshield) i scheduler. Program doskonale radzi sobie z wykrywaniem wirusów skryptowych (VBS), jednakże nie rozpoznaje wirusów dokumentów programu PowerPoint. Ma możliwość aktualizacji definicji wirusów z folderu lub przez Internet (ftp). Nazewnictwo obecnie stosowane przez program jest w dużym stopniu zgodne ze standardem CARO. 

Norton AntiVirus 5.0 
Testom poddana została polskojęzyczna wersja programu Norton Antivirus. Zawiera wbudowany moduł rezydentny, sprawdzający na bieżąco uruchamiane pliki. W skład programu wbudowana jest także możliwość aktualizacji baz antywirusowych przez Internet. Minusem programu jest konieczność, podczas deinstalacji, osobnego odinstalowania programu LuveUpdate (modułu aktualizacji przez Internet). Brakuje też schedulera. 

Panda Antivirus 
Po instalacji podczas testów wystąpiły problemy z uruchomieniem programu. Jednak po poprawnym uruchomieniu program działał dosyć stabilnie. W programie poza typowym skanerem wbudowany jest scheduler oraz aktualizator definicji wirusów. Aktualizacja możliwa jest przez Internet lub z dowolnego katalogu np. CD lub dysku sieciowego. Wbudowany scheduler pozwala na zdefiniowanie zadań, które zostaną uruchomione automatycznie w określonym czasie. Program ma dwa tryby konfiguracji: prosty – dla niedoświadczonych użytkowników oraz zaawansowany. 

PC-cillin 6 
Program charakteryzuje się dużą szybkością testowania plików, ma wbudowany scheduler i możliwość automatycznego testu uruchamianego podczas startu komputera (ładowany jest do systemu przed procesem logowania się użytkownika). Zapewnia rezydentną ochronę przed skryptami Javy i ActiveX. Testowana wersja nie rozpoznaje wirusów PowerPointa. Jest możliwość aktualizacji definicji wirusów z katalogu lub przez Internet. Brak natomiast możliwości zapisania podsumowania testu do raportu. Dostępna jest za to encyklopedia wirusów. 

Sophos AntiVirus 
W skład programu wchodzą dwa elementy:
1. Sophos InterCheck Monitor,
2. Sophos Anti-Virus - SWEEP.

Skaner ma dwie zakładki. Pierwsza służy do definiowania zadań uruchamianych na życzenie, druga pozwala na definiowanie zadań uruchamianych czasowo. Istnieje możliwość uruchamiania zadań tylko w wybrane dni tygodnia. Brak natomiast możliwości uruchamiania zadań w wybrane dni miesiąca lub w określonych odstępach czasowych. 
Program InterCheck jest rezydentnym monitorem. Podczas pierwszego uruchomienia program znacznie spowolnił uruchamianie – było to wynikiem długo trwającego procesu zakładania sum kontrolnych dla plików wykonywalnych. Procesu tego nie można przerwać. Plik sum kontrolnych INTERCHK.CHK zakładany jest w głównym katalogu dysku C: z atrybutem „Ukryty”. Program nie ma możliwości konfiguracji. 

Mniej znane programy

DrWeb
Shareware'owy program rozpoznający dużą liczbę programów pakujących i archiwizujących. W program wbudowany jest moduł heurystycznego wykrywania nowych wirusów o dużym poziomie skuteczności. Aktualizacja baz wirusów przez Internet. 

F-mirc
Niemiecki program służący do wykrywania wirusów scriptowych oraz robaków mIRC. Program ma niewielkie możliwości konfiguracji. Jest jednak godny uwagi, ponieważ należy do nielicznych potrafiących wykrywać wirusy: mIRC, VBS, HTML. 

HMVS
Shareware'owy program służący do wykrywania i leczenia wirusów makro. Aplikacja używa mechanizmów sieci neuronowych. Jest dostępny w sieci Internet w wersji z wieloma modułami językowymi, także po polsku. Niestety jest nieregularnie aktualizowany. Kolejną zaletą programu jest możliwość generacji kodu źródłowego wykrytych makr. 

NOD
Interesujący program antywirusowy napisany przez firmę ze Słowacji. Program charakteryzuje wysoka skuteczność silnika heurystycznego wykrywania wirusów. Pakiet zawiera program antywirusowy oraz monitor rezydentny. Program ma możliwość aktualizacji definicji wirusów wyłącznie z katalogu lokalnego. Sporym minusem jest fakt, że aktualizacja przeprowadzona z katalogu jest aktywna dopiero po ponownym uruchomieniu programu. 

RAV7 
Program ma wbudowany mechanizm heurystycznego wykrywania wirusów, charakteryzujący się wysokim stopniem wykrywalności. Wyposażony jest w rezydentny monitor i scheduler. Baza danych jest aktualizowana przez Internet. Program RAV7 po instalacji powodował jednak załamania systemu Windows 98. Prawdopodobnie przyczyną była podmiana niektórych bibliotek systemowych. 

Wybór redakcji

W naszych testach najlepiej zaprezentował się program AntiViral toolkit Pro (AVP) 3.0 (build 131), wyprodukowany przez firmę Kaspersky Lab. i jemu przyznajemy „Wybór redakcji”. Program charakteryzuje się nie tylko bardzo wysoką skutecznością wykrywania różnego typu wirusów, ale także elastycznymi możliwościami konfiguracji. Ma on certyfikat ICSA (organizacji zajmującej się weryfikacją programów antywirusowych), a aktualizacji baz antywirusowych można dokonywać cotygodniowo za pośrednictwem Interentu. Nie bez znaczenia jest też przystępna cena programu wraz z rocznym abonamentem – 214 zł.

Co i jak testowaliśmy?

Do testowania programów antywirusowych użyto paru tysięcy różnych wirusów, dla których wygenerowano po kilka zainfekowanych próbek, a w przypadku wirusów polimorficznych po kilkadziesiąt, generowanych w różnych warunkach w zależności od mechanizmu polimorficznego wirusa. Każda odmiana wirusa znajdowała się w osobnym katalogu. Wszystkie wirusy znajdowały się w tzw. przynętach – specjalnych programach przeznaczonych do zainfekowania wirusem. Testy prowadzone były na komputerze Pentium MMX 233 MHz, zaopatrzonym w 48 MB pamięci RAM i z zainstalowanym systemem Windows 98 PL. 
Testowe środowisko wirusowe zawierało:
• boot wirusy (wirusy sektorów ładowania) – testy wykrywalności wirusów boot i MBR przeprowadzono na tzw. image'ach (obrazach sektorów w plikach). Do testów użyto około 60 znanych wirusów;
• wirusy plikowe – test przeprowadzono na kolekcji czystych próbek zainfekowanych ponad 1000 wybranych znanych okazów z całego świata. W oddzielnych katalogach dla każdego wirusa wygenerowanych było kilkanaście próbek; 
• makrowirusy: Word2, Word, Word97, Word2000, Excel, Excel97, AmiPro, Access, PowerPoint – testy przeprowadzono na ponad 1000 dokumentów zainfekowanych około 700 różnymi wirusami makro; 
• wirusy skryptowe HTML i VBS – do testów użyto ponad 50 znanych obecnie wirusów HTML i VBS; 
• wirusy Java – do testów użyto kilku próbek dwóch obecnie znanych wirusów tej klasy; 
• robaki internetowe – do testów użyto trzech znanych robaków internetowych; 
• robaki mIRC – do testów użyto około 100 znanych robaków mIRC.

Największą wykrywalność zanotowały w testach programy AVP, AVK, F-Prot, chociaż inne aplikacje antywirusowe nie odbiegały zbytnio od czołówki, co dotyczy także naszego, polskiego programu MkS_Vir (patrz: tabela wykrywalności). Wyniki testów wskazują, że doskonałym programem przeciwko wirusom makro jest program HMVS, natomiast przeciwko wirusom VBS i HTML – F-Mirc.  

Jak zapobiegać zarażeniom?

W zasadzie nie ma skutecznej metody ochrony danych przed atakami wirusów. Mało ostrożni użytkownicy, ściągający z Internetu i uruchamiający nieznane programy, narażeni są o wiele bardziej niż użytkownicy komercyjnych, licencjonowanych programów, bez dostępu do Internetu. Zdarzają się jednak przypadki zainfekowanych dyskietek ze sterownikami, dołączonymi do różnych elementów komputera. Bywają też przypadki zarażenia programów na płytach CD dołączanych do czasopism.
Skuteczną ochronę danych może zapewnić wyłącznie odpowiednio częste wykonywanie kopii zapasowych w połączeniu ze stosowaniem programów antywirusowych. Przede wszystkim należy pamiętać, aby zastosowany program antywirusowy miał aktualne bazy antywirusowe. To właśnie od ich aktualności zależy często, czy nasz program wykryje niebezpiecznego bakcyla. Rozsądną metodą jest stosowanie co najmniej dwóch programów antywirusowych. 

Jak leczyć zarażony system komputerowy?

Po ataku wirusa i uczynionych przezeń zniszczeniach nie należy wpadać w panikę. Trzeba uruchomić komputer z dyskietki systemowej, a następnie program antywirusowy w wersji dla systemu DOS. Często nawet niewidoczny w systemie dysk twardy można będzie odratować za pomocą programu antywirusowego. Wiele programów antywirusowych uruchomionych w zainfekowanym systemie potrafi unieszkodliwić rezydującego w pamięci wirusa, a nawet wyleczyć własny kod programu, jeśli program antywirusowy uległ infekcji.
Zdarzają się jednak przypadki krytyczne, jak np. zniszczenia poczynione przez wirusa CIH. Znanych jest kilka programów starających się odbudować strukturę dysku – tablicę partycji dysku (Master Boot Record) i tablicę alokacji plików na dysku. Więcej problemów powoduje zamazanie przez wirusa (np. CIH) pamięci Flash BIOS. W tym przypadku trzeba zaprogramować na nowo tę pamięć lub wymienić układ na płycie głównej komputera. 

Fałszywe alarmy

Fałszywe alarmy, czyli sygnalizowanie obecności wirusa w plikach w sytuacji, gdy takiego wirusa w rzeczywistości nie ma, zdarzają się od czasu do czasu w zasadzie wszystkim programom antywirusowym. Dotyczy to przypadków, gdzie stosowane są programy pakujące (a w tym także programy do tworzenia plików instalacyjnych) i szyfrujące. Czasem powodem są procedury tych programów pisane w asemblerze, mające podobne działanie jak wirus, czyli odczytywanie fragmentu pliku, przetwarzanie go (w tym przypadku zamiast infekowania pakowanie lub szyfrowanie) i zapisywanie na dysku. 
Mniej znane programy antywirusowe mogą sygnalizować obecność wirusa w plikach spakowanych. Taka sytuacja może mieć miejsce w przypadku, gdy antywirus nie zna programów pakujących, a procedura wykrywania jakiegoś wirusa, który mógł być zapakowany takim pakerem zawiera źle dobraną sygnaturę. Kilka lat temu niektóre programy sygnalizowały jako zainfekowane wszystkie pliki spakowane programem PGMPack w wersjach 0.13, 0.14, 0.15. 
Przy obecnej ilości wirusów, heurystyce, mnogości programów szyfrujących i pakujących nie da się czasem uniknąć fałszywych alarmów. Jednak producenci programów antywirusowych nieustannie analizują wszelkie informacje o „fałszywkach” i na bieżąco uaktualniają swoje produkty, aby były one jak najbardziej wiarygodne w swoim działaniu. 

Ważniejsze daty związane z wirusami komputerowymi

Sierpień 1995: pierwszy wirus makro infekujący pliki MS Word.
Luty 1997: pierwszy wirus systemu Linux – Bliss 
Listopad 1997: pierwszy wirus wielosystemowy PC & Mac – Esperanto 
Grudzień 1997: nowy rodzaj wirusów – robaki mIRC 
Marzec 1998: pierwszy wirus Microsoft Access –AccessiV 
Czerwiec 1998: masowa epidemia Windows 95 wywołana wirusem CIH 
Sierpień 1998: sensacja wywołana nowym programem tzw. BackOrifice, BO 
Listopad 1998: pierwszy wirus infekujący pliki VBS 
Sierpień 1999: nowa klasa wirusów WinHLP.Demo