Lek na wirusa

Lek na wirusa

Autor: Agnieszka Kopras

Opublikowano: 1/5/2007, 12:00 AM

Liczba odsłon: 9894

Zacznijmy od tego czym są wirusy. Są to programy, które z reguły piszą doświadczeni programiści, a które rozpowszechniają się np. pocztą elektroniczną. Wirus to tylko zwykły (choć szkodliwy) program, aktywowany przez uruchomienie, dlatego trzeba uważać co się uruchamia, ponieważ plikowi z wirusem można nadać dowolną nazwę. Szczególnie ostrożnym należy być otwierając maile od nieznanych nadawców. Tryumfy w sieci święcił niegdyś wirus "I Love You". Kopiował się sam, korzystając z baz danych i rozsyłał po sieci w zastraszającym tempie. Był o tyle mało szkodliwy, nie uszkadzał samego dysku, ale zapychał pamięć i dysk swoimi kopiami. Są jednak wirusy, które potrafią zaatakować sam system operacyjny. Wystarczy tutaj wspomnieć CIH. Jego destrukcyjny kod wykorzystują do dziś zapaleni programiści tworząc jego kolejne mutacje.

Wobec wirusów nie jesteśmy jednak zupełnie bezradni. Tak jak na każdą chorobę jest lekarstwo, tak skonstruowano i antidotum na wirusy, Mówię to programach zwanych popularnie antywirusami.

Co to w ogóle jest?

Antywirus działa jak wykrywacz metalu. Kiedy gramy w cokolwiek w Internecie, przeglądamy pocztę, nawet gdy przeglądamy strony automatycznie program powinien skanować pliki, których używamy (i w rezultacie często ściągamy na dysk bez naszej wiedzy). Z drugiej strony w ten sposób zwalnia nasz komputer. Stąd znalezienie i dostosowanie programu antywirusowego do naszych możliwości i potrzeb to nie lada wyzwanie. Dodatkowo programy antywirusowe są ostatnio łączone z firewallami (o których mowa będzie innym razem) i antyspywaerowymi aplikacjami, co średnio utalentowanemu użytkownikowi dodatkowo komplikuje sprawę.

O porządnego antywirusa jest niezwykle trudno, ale gdy uda nam się już to zrobić mamy spokój na lata. Czasem trzeba mu jednak trochę pomagać czyli skanować komputer raz na jakiś czas np. raz w tygodniu zrobić pełne skanowanie, usuwać znalezione wirusy z kwarantanny, uważać, na jakie strony wchodzimy i jakie maile otwieramy. Trzeba też powiedzieć, że antywirus to naprawdę lekarstwo. Nie działa bowiem na zasadzie szczepionki, czyli nie ma możliwości zapobiegania zainstalowaniu się wirusów. Usuwa natomiast te, które już istnieją na naszym komputerze, o ile ma aktualne bazy, a w nich narzędzia do walki z tym, co zaatakowało nasz komputer.

Poniżej prezentujemy interfejs jednego z programów antywirusowych.

Funkcjonalność programów antywirusowych

Jaki powinien być nasz idealny program antywirusowy? Przede wszystkim musi mieć dużą skuteczność wykrywania niebezpieczeństw, ale z drugiej strony nie może być zbyt skomplikowany. Antywirus zbudowany jest z szeregu funkcjonalnych modułów, odpowiedzialnych za wykonywanie określonych funkcji, ale o liczbie modułów decyduje producent oprogramowania. Poniżej przedstawione zostały najczęściej stosowane moduły programów antywirusowych.

  • Historycznie najstarszym modułem jest skaner antywirusowy. Jego zadanie polega na sprawdzaniu wybranych części systemu pod kątem występowania wirusów (tzw. skanowanie systemu). Aby zaczął działać, musimy go włączyć własnoręcznie, bowiem inaczej nie będzie usuwał ewentualnych zagrożeń.
  • Kolejna część to działający w tle monitor antywirusowy. Uruchamia się zazwyczaj automatycznie podczas startu systemu i działa aż do jego wyłączenia, dzięki czemu jest to obecnie podstawowe źródło ochrony antywirusowej. Nadzoruje wszystkie operacje systemu w czasie jego działania.
  • Dziś ogromne znaczenie ma skaner pocztowy, bowiem to przez nią trafia do nas najwięcej wirusów. Chroni on system przed niebezpieczeństwami pochodzącymi z poczty elektronicznej. Moduł ten sprawdza wiadomości wraz z załącznikami i w przypadku wykrycia wirusa podejmuje działania określone przez użytkownika (np. usuwa wirusa jeżeli jest taka możliwość, a jeżeli nie ma to usuwa zawirusowany plik).
  • Natomiast skaner skryptowy ma za zadanie sprawdzać uruchamiane skrypty pod kątem występowania niebezpiecznego kodu. Po znalezieniu takiego kodu uruchomienie skryptu zostaje wstrzymane. W zależności od producenta programu i przyjętych przez niego rozwiązań zarówno skaner pocztowy jak i skaner skryptowy są oddzielnymi modułami (samodzielne programy) lub są częścią składową monitora antywirusowego.
  • Ważnym elementem każdego programu antywirusowego jest jego uaktualnianie (aktualizacje systemu antywirusowego). Aktualizacji podlega przede wszystkim baza rozpoznawanych sygnatur wirusów, przez co program dowiaduje się o nowych zagrożeniach przed którymi ma chronić.
  • W celu zapewnienia jak największej funkcjonalności programu antywirusowego producenci wyposażają go w terminarz. Jego zadaniem jest automatyzacja czynności wykonywanych dotychczas przez użytkowników. Do jego zadań należy m. in. przeprowadzanie aktualizacji w odstępach czasu określonych przez użytkownika czy okresowe uruchamianie skanera antywirusowego (np. co piątek o 18:00 lub podczas działania wygaszacza ekranu). Dzięki temu nie musimy już więcej się tym zajmować.
  • Kolejnym modułem często pojawiającym się w programach antywirusowych jest kwarantanna. Polega ona na zapisywaniu nieuleczalnych w danej chwili plików w bezpiecznym formacie uniemożliwiającym dalsze rozprzestrzenianie się wirusa. Pliki takie można próbować wyleczyć przy pomocy nowszych aktualizacji lub wysłać do producenta programu w celu przeprowadzenia ich dokładnej analizy i ewentualnej naprawy.

Skuteczność działania antywirusów

Kiedy antywirus jest skuteczny? Cóż - nad tym chyba nie trzeba się specjalnie zastanawiać. Wtedy, kiedy sprawnie wykonuje swoje zadanie, czyli usuwa wirusy.

Równie dobrze powinno mu to wychodzić z wirusami znanymi, jaki i nieznanymi. Do pierwszego zadania wykorzystywane są bazy wirusów. Taka baza działa jak wzorzec, z którymi antywirus porównuje sprawdzane elementy i gdy znajduje podobieństwa - podejmuje konieczne działania. Drugie zadanie polega na przeprowadzeniu symulacji działania sprawdzanego kodu (np. pliku) i ocenie czy zawarte są w nim elementy typowe dla działalności wirusów (np. bezpośredni dostęp do dysku z pominięciem funkcji systemowych). Pewien problem stanowi ocena zagrożenia i konieczność podjęcia przez użytkownika ostatecznego werdyktu czy sprawdzany obiekt jest zainfekowany czy nie jest (ogromny problem szczególnie dla początkujących użytkowników). Z reguły oceny opracowują producenci programów antywirusowych i mogą się one znacznie różnić od siebie, jednak niezależnie od sposobu ich działania należy przyznać iż ich zastosowanie zwiększa skuteczność programu przynajmniej o kilka procent. W przyszłości obecne metody będą prawdopodobnie zastępowane przez coraz doskonalsze metody sztucznej inteligencji, które będą działały jak najbardziej automatycznie i jak najmniej angażowały użytkownika.

Przy ocenie skuteczności programów antywirusowych należy zwrócić uwagę także na rodzaj sprawdzanych obiektów. Im jest ich więcej tym lepiej, jednak szczególną uwagę należy zwrócić na obsługiwanie przez program używanego rodzaju obiektu (np. plików spakowanych ulubionym archiwizerem).

Wiele osób za punkt wyjścia w ocenie skuteczności bierze wyniki testów przeprowadzanych przez różne organizacje i magazyny komputerowe. Jest to dobre rozwiązanie, gdyż ciężko byłoby samemu dokonać takich testów, jednak trzeba pamiętać o okresowości tego typu testów, bowiem program który wykazuje się największą skutecznością w danej chwili po pewnym czasie może ustąpić pola innym programom. Dlatego też warto zwracać uwagę także na inne cechy programu, a przede wszystkim na jego dostosowanie do własnych potrzeb.

Obsługa i komfort pracy z antywirusem

Jak już wspomnieliśmy podstawowa zaleta programów antywirusowych to prostota w obsłudze. Użytkownik (nawet ten, który dopiero zaczyna pracę z komputerem) nie powinien zastanawiać się, co do czego służy. Najlepiej byłoby, gdyby program już podczas instalacji sam wybrał najbardziej korzystne ustawienia. Nawet najskuteczniejszy w testach program może stracić swoje walory przy jego niewłaściwej konfiguracji. Dlatego też bardzo ważne jest jak najlepsze skonfigurowanie ustawień domyślnych przez producenta. Podniesienie alarmu przez program nie powinno dezorientować użytkownika. Powinien on mieć czytelnie wyświetlane instrukcje, co do dalszego postępowania i to najlepiej w ojczystym języku.

Jak na razie swoją główną moc programy antywirusowe zawdzięczają bazom znanych wirusów, więc należy ją jak najczęściej uaktualniać. Aktualizacja polega na wgraniu odpowiednich plików przygotowanych przez producenta programu. Pliki te wgrywać można z dowolnego nośnika danych lub pobrać je z Internetu. Ta druga możliwość jest teraz najczęściej wykorzystywana. Programy zaopatrzone są w specjalną opcję, po wybraniu której łączą się z serwerem producenta lub dystrybutora, pobierają potrzebne pliki i dokonują automatycznej aktualizacji. W zależności od rozwiązania zastosowanego przez producenta aktualizacja może obejmować tylko bazy wirusowe lub bazy wraz z programem. Oczywistym jest, że to drugie rozwiązanie jest lepsze. Użytkownik włącza aktualizację i nie martwi się o nic więcej. Następna kwestia dotyczy sposobu aktualizacji baz: może to być cała baza lub jedynie różnica od ostatnio wydanego lub zainstalowanego uaktualnienia. Oba rozwiązania mają swoje wady i zalety: w pierwszym otrzymujemy całą aktualną bazę kosztem wielkości pliku (ważne dla posiadaczy modemów, dla których liczy się każdy impuls spędzony w sieci), a w drugim są małe pliki jednak zawierają jedynie część całej bazy i należy posiadać wszystkie poprzednie aktualizacje. Istnieje także rozwiązanie pośrednie: w dłuższych przedziałach czasowych wydaje się większe aktualizacje (np. miesięcznie), a w krótszych częściowe (np. co tydzień).

Ważnym czynnikiem wpływającym na komfort obsługi jest szybkość pracy programów antywirusowych. Różnica w działaniu poszczególnych programów może wynosić nawet kilkaset procent (np. zamiast sprawdzać system w godzinę można tego dokonać w kwadrans za pomocą innego programu).

Program antywirusowy powinien w jak najmniejszym stopniu obciążać sprawdzany system, jednak w przypadku włączenia skanera zaleca się wyłączenie innych programów i nie przeprowadzanie innych operacji. Jeżeli instalowanych jest wiele różnych programów może wyniknąć konflikt między monitorami i wówczas należy zdecydować się na jeden antywirus.

Koszty użytkowania oprogramowania antywirusowego

W koszt użytkowania programu antywirusowego wchodzą najczęściej opłaty aktualizacyjne. Zazwyczaj można wykupić coś na kształt abonamentu. Oznacza to, że przez np. rok korzystamy z bazy danych wirusów producenta. Bardzo rzadko spotyka się możliwość bezterminowego przeprowadzania aktualizacji lub do czasu pojawienia się nowej wersji programu (zmiana formatu plików baz).

Rozpiętość cen antywirusów dla pojedynczego użytkownika kształtuje się obecnie w granicach od kilkudziesięciu do kilkuset złotych. Każdy może sam ocenić czy jest to dla niego duży wydatek, biorąc pod uwagę swoje możliwości finansowe i  korzyści jakie niesie posiadanie aktualnego programu antywirusowego. Oczywiście licząc się z kupieniem antywirusa dla sieci komputerowej, musimy wziąć pod uwagę zdecydowanie większe koszty. Na dobrą sprawę należy jednak poważnie zastanowić się nad zakupywaniem ciągle nowych wersji programu antywirusowego. Najczęstszą zmianą jest bowiem zmiana interfejsu.

Nawet jednak bardzo oszczędni użytkownicy komputerów nie muszą się martwić, że ich PC zostaną bezbronne w obliczu antywirusów. Istnieją jeszcze darmowe programy antywirusowe. W testach skuteczności pozostają one daleko w tyle za płatnymi wersjami, ale lepiej mieć jakąkolwiek ochronę niż żadną.

Pośrednim rozwiązaniem są tzw. skanery on-line. Są to skanery antywirusowe wykorzystujące do komunikacji z użytkownikiem przeglądarki internetowe. Kod takich programów pobierany jest z Internetu jednak później połączenie z siecią służy jedynie do aktualizacji i można z nich korzystać także off-line (bez połączenia z Internetem). Należy pamiętać, że jest to jedynie skaner i nie zapewnia on ciągłej ochrony systemu. Ich największą zaletą jest posiadanie aktualnej wersji (wystarczy się połączyć i dokonać szybkiej aktualizacji) i cena, gdyż w większości przypadków są one darmowe (jak na razie tylko nieliczni producenci pobierają opłaty za korzystanie z ich skanerów on-line). Nic nie ma jednak samych zalet, więc są i wady, a największą z nich jest ograniczona funkcjonalność takich skanerów. Najczęściej wersje on-line skanerów sprawdzają tylko wybrane rodzaje obiektów (np. tylko pliki wykonywalne) czemu nie należy zbytnio się dziwić, bowiem są one głównie wizytówką firmy i pokazem jej możliwości. Zdarzają się jednak i skanery o pełnej funkcjonalności. Mimo szeregu wad i zalet tego rodzaju oprogramowania warto się nim zainteresować, a propozycja darmowego posiadania aktualnego skanera wydaje się bardzo kusząca.

Wybór programu antywirusowego

Wybór aktualnie dostępnych programów antywirusowych jest całkiem spory. Decydując się na wybór konkretnego antywirusa musimy pamiętać o kilku czynnikach. Przede wszystkim najważniejszy jest poziom ochrony, jaki nam zapewnia. Kolejny czynnik to oczywiście nasze możliwości finansowe. Warto też pomyśleć o dostępności aktualizacji. Esteci mogą jeszcze ewentualne wziąć pod uwagę wygląd interfejsu.

Najkrótsza droga do zainstalowania programu antywirusowego na swoim komputerze to ściągnięcie go przez internet. W zależności od posiadanego łącza pobieranie uaktualnień może trwać dłużej lub krócej. Czasem więc warto ominąć strony producentów i skorzystać ze stron popularnych serwisów. Tam znajdują takie pliki, których ściągnięcie zajmie nam zdecydowanie mniej czasu. Aktualizacje (jeśli nie są automatyczne) należy przeprowadzać co najmniej raz na miesiąc, a najlepiej raz w tygodniu. Z pewnością zaś trzeba to zrobić, gdy w sieci krążą wiadomości o nowym wirusie.

Kolejny dylemat stojący przed użytkownikiem to konfiguracja programu. Domyślne ustawienia zaproponowane przez producenta nie zawsze muszą być zbieżne z tym co jest dla nas optymalne. W celu zapewnienia bieżącej ochrony systemu należy ustawić uruchamianie monitora antywirusowego wraz ze startem systemu. Ponieważ monitor działa w tle sprawdzając na bieżąco system obciąża go w pewnym stopniu powodując spowolnienie pracy (coś za coś). Niektóre programy umożliwiają ustalenie dokładności sprawdzania (kosztem czasu). Optymalnym ustawieniem jest środkowa pozycja dla monitora i maksymalna dla skanera.

Antywirusy mogą integrować się z systemem operacyjnym i warto skorzystać z tej opcji. Objawia się to np. dodaniem opcji uruchomienia skanera w menu podręcznym i sprawdzaniu tylko wybranego pliku.

Aby skaner pocztowy mógł pełnić swoją rolę to przede wszystkim powinien być włączony. Następnie należy ustalić, które konta poczty elektronicznej maja być sprawdzane. Zmian w ustawieniach serwerów należy też dokonać w programach pocztowych, ale na szczęście w większości przypadków dla najpopularniejszych klientów pocztowych dokonywane są one automatycznie. W przypadku dodania nowego konta pocztowego należy pamiętać również o jego dodaniu w skanerze pocztowym. Konieczność ustawiania sprawdzanych kont pocztowych oraz ich aktualizacja jest w pewnym stopniu wadą i dlatego producenci starają rozwiązać ten problem, np. poprzez sprawdzanie portu, przez który komunikuje się program pocztowy z serwerem. Rozwiązanie takie jest najpraktyczniejsze i zwalnia użytkownika od dodatkowych konfiguracji.

W zależności od programu można także decydować czy sprawdzana ma być tylko poczta wysyłana lub odbierana albo obie. W przypadku ciągłego działania monitora antywirusowego sprawdzanie poczty wysyłanej można wyłączyć, ale sprawdzanie poczty odbieranej należy mieć bezwzględnie włączone.

Kilka słów o rootkits

Rootkits są instrumentem wykorzystywanym do uzyskania uprawnień root'a (konto administratora systemowego) i ukrycia swoich działań. Istnieją już ponad 10 lat. Początkowo były tworzone dla systemów Unix, a później, wraz z pojawieniem się Windows NT, zaczęły atakować i ten system. Obecnie programy i moduły z rootkits coraz częściej stosowane są w wirusach i oprogramowaniu szpiegującym dla Windows. Zdaniem ekspertów, niebezpieczeństwo wzrasta i rootkits jądra (kernel rootkits) staną się masowym zjawiskiem w oprogramowaniu wirusowym. Rootkits wchodzą w skład programów szpiegujących i mają możliwość wkompilowania się w jądro systemu. Można je usunąć tylko poprzez ponowne zainstalowanie systemu operacyjnego na czystym twardym dysku.

Programy modyfikujące pliki jądra lub przechwytujące procesy systemowe, mogą funkcjonować w systemie zupełnie niezauważalnie, kontrolować pracę z plikami i siecią, przetwarzać dane, pracować w Internecie oraz ukrywać swoją obecność na liście procesów. O działalności rootkits napisano wiele. Rosyjscy analitycy przestrzegali przed nimi już w grudniu 2004 roku, szczególnie zwracający uwagę na praktycznie zupełną bezużyteczność w tym zakresie, antywirusów i programów kontrolujących połączenia sieciowe. W Microsoft dopiero teraz zrozumiano realne zagrożenie jakie niesie ze sobą działanie rootkits. Programiści „giganta” stworzyli specjalny program-detektor Strider Ghostbuster.

Podsumowując: idealnego programu nie ma, czego należało się spodziewać. Jednak niektórym antywirusom pod pewnymi względami do idealności już niedaleko. Jakimi cechami powinien charakteryzować się najlepszy program antywirusowy? Przede wszystkim po instalacji powinien być niezauważalny dla użytkownika, a mimo tego powinien skutecznie chronić jego system, a dopiero w przypadku wątpliwości prosić użytkownika o pomoc w jak najbardziej zrozumiały dla niego sposób . Czy istnieje taki program? ...odpowiedź pozostawiam wnikliwym czytelnikom :)