104. Skąd się wzięły wirusy komputerowe?
Wirusy
komputerowe potrafią bardzo skutecznie sparaliżować nawet najlepszy komputer. Liczba
obecnie istniejących wirusów jest trudna do oszacowania, może ona sięgać nawet
do kilkunastu tysięcy. Na szczęście istnieją sposoby skutecznego, choć nie
pełnego zabezpieczenia przed tymi "cyfrowymi chorobami".
Cała historia z wirusami
zaczęła się od niewinnej zabawy studentów, którzy chcąc zabłysnąć
"wyprodukowali" malutki programik przeszkadzający w pracy przy
komputerze rówieśnikom. Dziś też autorzy takiego typu programów chcą przede
wszystkim pokazać, że i oni są zdolni stworzyć "szkodnika", choć są i
tacy, których bardziej bawi niszczenie danych znajdujących się w komputerach
innych użytkowników. Tak więc wynika z tego, że są wirusy niezbyt groźne, ale i
są takie, których trzeba się bać. Wirusa trzeba zniszczyć, zanim on zniszczy
nasz komputer. Pierwsze wirusy komputerowe dla IBM PC pojawiły się już w 1986 r., ale jeszcze dwa lata później
wiele postaci świata informatycznego wątpiło w ich istnienie. Sytuacja zmieniła
się dopiero kilka lat później, po odkryciu, wykreowanego przez media wirusa
Michael Angelo. Dzięki nagłośnieniu jego istnienia i masowej akcji
ostrzegawczej, Michael Angelo wywarł pozytywny wpływ na środowiska
informatyczne i uświadomił milionom użytkowników komputerów na całym świecie
grożące im (oraz ich danym) niebezpieczeństwo.
W
ciągu minionych kilku lat zainteresowanie wirusami komputerowymi znacznie
spadło. Wielu użytkowników oswoiło się z możliwością infekcji i nauczyło się
minimalizować jej skutki. Niestety, w dalszym ciągu liczne grono osób
korzystających z komputerów nie zdaje sobie sprawy z potencjalnego zagrożenia.
Grupa ta traktuje informacje i ostrzeżenia pojawiające się w środkach masowego
przekazu jako wyssane z palca bądź uważa, że wirusy komputerowe są wyłącznie
problemem użytkowników nielegalnego oprogramowania i samych
"piratów". Niestety, większość ludzi zaczyna wierzyć w istnienie
wirusów dopiero pod odkryciu ich we własnym komputerze. Ale wtedy jest już za
późno...
Zdecydowana
większość wirusów została napisana dla systemu DOS i nie działa w innych
środowiskach. Nie dotyczy to jednak Windows 95 (a raczej MS-DOS-a 7.0), który
stwarza sprzyjające warunki dla niemałej części "szkodników". OS/2
Warp i Windows NT nie należą do ścisłego kręgu zainteresowań twórców wirusów.
Wynika to po części ze skutecznych mechanizmów bezpieczeństwa tych systemów i
stosunkowo krótkiej (w porównaniu z DOS-em) obecności na rynku. Osoby, które
zetknęły się już z wirusami komputerowymi, wiedzą, że nie ma z nimi żartów.
Nawet (pozornie) nieszkodliwe okazy - nie niszczące danych - zwiększają
awaryjność systemu komputerowego, ponieważ sama ich obecność w pamięci może
blokować niektóre operacje programu lub wywoływać przypadkowe działania.
Wirusy stwarzają
i stwarzać będą w przyszłości potencjalne zagrożenie, od którego nie ma
ucieczki. Użytkownik może w dużym stopniu zmniejszyć ryzyko infekcji, ale
praktycznie nie jest w stanie jej uniknąć, chyba że... odetnie się od świata
zewnętrznego.
105. Jakie są zadania i metody działania wirusów?
Pod względem
działania wirusy komputerowe przypominają swoje biologiczne pierwowzory.
Zamiast ludzkiego organizmu infekują dysk (dyskietkę) lub program, umieszczając
w nich swój kod. Główne zadanie wirusa komputerowego polega na jak najszerszym
rozpowszechnieniu się, a nie "szkodzeniu", jak mylnie sądzi wielu użytkowników.
Niszczenie danych na dysku, wyświetlanie informacji na ekranie, blokowanie
systemu i nienormalne zachowanie się komputera to drugorzędne cele wirusów
komputerowych. Wynika to z prostej zasady: pozostając dłużej w ukryciu, mogą
wygenerować większą liczbę potomków.
Pierwszym krokiem na drodze do
zabezpieczenia się przed wirusami jest poznanie zasad ich działania, w
szczególności metod "rozmnażania". Każdy wirus związany jest z
konkretnym systemem operacyjnym lub programem. Pierwsze z nich nazywać będziemy
systemowymi a drugie aplikacyjnymi. Na pytania dotyczące
wirusów aplikacyjnych odpowiadałem już wielokrotnie: porównaj odpowiedź na
pytanie 37 i 49. Dlatego w swojej odpowiedzi ograniczę się do wirusów
systemowych. Istnieją dwa typy wirusów systemowych, zarażające pliki wykonywalne i obszary systemowe dysku (boot sektor na
dyskietce i Master Boot Record na dysku twardym). Przedstawiciele obydwu typów
mogą "zagnieżdżać się" w pamięci i stamtąd infekować dyski lub
programy. Mówi się wtedy o wirusach rezydentnych. Wirusy "doklejające
się" (typu link) infekują programy przez wpisanie swojego kodu w określone
miejsce pliku "nosiciela". W systemie DOS atakowane są pliki COM i
EXE, czyli wykonywalne programy. Zdarza się, że wirusy posługują się plikami pośrednio
wykonywalnymi (np.: OVR, OVL), a ostatnio zaczęły nawet "nadużywać"
windowsowych DLL-i. Kiedy uruchamiamy zarażoną aplikację, wirus ładuje się do
pamięci, ewentualnie rozmnaża się i ładuje program nosiciela. Jego działanie
pozostaje często niewidoczne dla użytkownika, a zbyt późne rozpoznanie infekcji
może prowadzić do utraty wszystkich danych na dyskach. Drugi rodzaj wirusów
systemowych atakuje boot sektor na dyskietkach lub tzw. Master Boot Record (w
skrócie MBR) na dysku twardym. Istnieją dwa sposoby zarażenia systemu
klasycznym wirusem bootsektorowym: start komputera z zainfekowaną dyskietką w
stacji A: (nie ma znaczenia, czy zawiera ona jakiekolwiek pliki) i
wystartowanie komputera z zarażonego dysku twardego. Aby uchronić się przed
pierwszym rodzajem infekcji, należy zawsze wyciągać dyskietkę ze stacji A:
przed uruchamianiem i resetowaniem komputera. Równie skuteczne jest wyłączenie
(w BIOS-ie) możliwości bootowania z napędu A:. W tym celu należy zmienić tryb
startowania z A:, C: na C: (albo C only). Ustawienie kolejności C:,
A: nie daje pełnego zabezpieczenia: dopóki na dysku twardym aktywna
partycja zawiera pliki systemowe i nie jest uszkodzona, jesteśmy bezpieczni,
ale w przeciwnym wypadku BIOS szuka systemu w napędzie A:, co może prowadzić do
infekcji.
106. Jak skutecznie zorganizować polowanie na wirusy?
Wirusy
komputerowe stają się uciążliwą plagą. Stosunkowo małym nakładem sił i środków
można uniknąć infekcji albo przynajmniej zminimalizować jej skutki. Oprogramowanie
antywirusowe nie jest doskonałe. Odnajduje tylko wirusy znane producentowi w
chwili tworzenia programu i często straszy fałszywymi alarmami. Wykrywanie
nieznanych "szkodników" sprawdza się niemal wyłącznie w przypadku
schematycznych wirusów tworzonych na podstawie utartych schematów. Programy
antywirusowe nie odtworzą również zniszczonych przez "szkodniki"
danych, a "wyleczone" aplikacje nie zawsze odpowiadają swojej
pierwotnej postaci. Dobre uzupełnienie skanera antywirusowego stanowi program
do tworzenia sum kontrolnych, ale wyłącznie własna, unikalna tablica kodów
gwarantuje bezpieczeństwo. Metody obliczania sum kontrolnych stosowane przez
znane i popularne programy (np. przez dostarczany z DOS-em program
antywirusowy) zostały już dawno "rozgryzione" przez programistów, a
wirusy aktualizują (albo kasują)
"odciski plików" po zainfekowaniu.
Bezpieczeństwa
nie zapewnia również oprogramowanie zabezpieczające. Wprawdzie utrudnia ono
zainstalowanie się wirusów w pamięci lub na dysku, ale ciągle pojawiają się
nowe "szkodniki" obchodzące najwymyślniejsze zabezpieczenia. Kupując
komputer lub jego części, ufamy sprzedawcy, że dysk twardy i dyskietki
instalacyjne nie zawierają wirusów. Tymczasem niejednokrotnie w ten właśnie
sposób narażamy się na działanie wirusa. Dzieje się tak nawet wtedy, gdy
sprawdzamy te nośniki programem antywirusowym (wykrywającym dany typ wirusa)
uruchomionym z zabezpieczonego przed zapisem i wolnego od wirusów dysku.
Istnieje bowiem cały klan "niewidzialnych" wirusów (stealth), które
przejmują kontrolę nad systemem DOS i w momencie sprawdzania podstawiają
skanerom antywirusowym oryginalną strukturę dysku. W rezultacie prawie nie
można ich wykryć. Aby skaner miał w ogóle szansę je "namierzyć",
trzeba wystartować komputer z wolnej od wirusów systemowej dyskietki i dopiero
wtedy uruchomić program antywirusowy. Niektóre skanery dostarczane są na
systemowych dyskietkach i zalecają sprawdzanie dysków po zrestartowaniu
komputera ( w SETUP-ie na czas testu zmieniamy kolejność bootowania z C: albo C:, A: na A:, C:). Tylko
"polowanie" w takich warunkach gwarantuje odnalezienie wszystkich
(znanych autorowi skanera) wirusów.
107. Jak uniknąć strat spowodowanych atakiem wirusów?
Nawet wtedy, gdy
zostanie "napadnięty" zaledwie jeden komputer, straty mogą być
ogromne. Bezpowrotnie utracone dokumenty, faktury i sprawozdania finansowe nierzadko
warte są więcej niż komputer, w którym są przechowywane. Jeżeli nawet możliwe
jest odtworzenie danych z dokumentów "papierkowych", to i tak nakład
pracy potrzebny do przeprowadzenia tej operacji będzie przynajmniej 20-krotnie
większy niż koszt tworzenia kopii zapasowych i abonament programu
antywirusowego. Inny problem związany jest ze stresem wywołanym utratą danych
prywatnych czy danych
przedsiębiorstwa i trudnościami związanymi z ich odtworzeniem. Trzeba
pamiętać, że liczba wirusów w ciągu ostatnich lat szybko rośnie. Przyczynia się
do tego powstawanie mutacji istniejących "wirusów" i stosowanie kilku
form rozmnażania przez jeden wirus. Z tego powodu mówi się o rodzinach wirusów,
które się ciągle na nowo szyfrują, a kolejne egzemplarze "szkodnika"
nie przypominają swoich przodków. W ciągu ostatnich lat pracowano nad
mechanizmami ukrycia wirusów. W ten sposób powstały wirusy typu stealth.
"Tajniacy" dostarczają skanerowi danych w oryginalnej ("nie
zarażonej") postaci, a wykrycie ich staje się możliwe dopiero po restarcie
systemu z wolnej od wirusów dyskietki.
W celu
uchronienia się przed atakami wirusów i minimalizowania skutków ich infekcji
należy przestrzegać szeregu reguł tworzących regulamin bezpiecznej pracy. Wymienione poniżej operacje mają sens
tylko wtedy, gdy użytkownik będzie stosował je konsekwentnie i nieprzerwanie.
Tak więc należy:
1. wprowadzić zakaz używania
prywatnych dyskietek w pracy
2. w SETUP-ie komputera
wyłączyć bootowanie z
A: lub zmienić kolejność bootowania z A:,
C: na C: (ewentualnie C:, A:)
3. wykupić abonament programu
antywirusowego (jego koszt jest znacznie mniejszy niż koszt odtworzenia danych)
4. pamiętać, że oprogramowanie
zabezpieczające uodpornia system, ale nie zabezpiecza go przed inwazją wirusów
5. używać tylko oprogramowania
pochodzącego z pewnych źródeł (BBS, giełda to nie są pewne źródła!)
6. przed instalacją programów
sprawdzać i natychmiast zabezpieczać dyskietki instalacyjne (niestety wielu
producentów dostarcza produkty na nie zabezpieczonych przed zapisem dyskietkach)
7. sprawdzać każdą dyskietkę,
CD-ROM i pliki ściągnięte za pomocą modemu
8. dekompresować archiwa przed ich
sprawdzaniem (chyba że skaner "rozumie" pliki typu ARJ, LZH, ZIP i
in.)
9. dekompresować programy
spakowane programami PKLITE, DIET, LZEXE
i innymi
10. regularnie przeprowadzać
archiwizację swoich danych na dyskietki
(najlepiej codziennie)
11. regularnie sprawdzać wszystkie
dyski po zastartowaniu z nie zawirusowanej dyskietki
113. W jaki sposób bronić się przed atakiem konia trojańskiego
i jak go usunąć z komputera?
Zainwestuj w markowy program antywirusowy i
zdobądź jego najnowszą bazę wirusów. Można je przeważnie znaleźć w Internecie
na serwerze producenta programu antywirusowego lub innych stronach związanych z
ochroną przeciwwirusową. Nie przyjmuj od nikogo aplikacji, jeśli nie ufasz mu
całkowicie. Skanuj programem antywirusowym każdą aplikację, jaką dostajesz od
znajomych. Oni mogą nie wiedzieć o tym, że ich pliki mogą być zarażone. Oprócz
sprawdzania plików pobieranych z Internetu skanuj cały dysk twardy np. raz w
tygodniu. Rób to zwłaszcza po otrzymaniu nowej bazy wirusów. Jeśli nie masz
najnowszej wersji markowego programu antywirusowego, a uważasz, że stałeś się
ofiarą "ataku z zewnątrz", zaopatrz się w aplikacje wykrywające
najpopularniejsze konie trojańskie
Często zdarza się tak, że program nosi
nazwę innej, niegroźnej aplikacji. Gdy użytkownik go uruchomi, ten pozornie nie
wykona żadnej operacji. Wystartuje i zaraz zakończy działanie, a w
rzeczywistości umieści w naszym systemie konia trojańskiego. Jest to
najczęstsza metoda instalowania "bakcyla". Nie można go nazwać
wirusem, gdyż koń trojański nie ulega replikacji i nie dołącza się do innych
plików. Użytkownik sam uruchamia program, nie będąc świadom jego przeznaczenia
Najczęściej koń trojański instaluje się w głównym katalogu Windows lub w
folderze systemowym (C:\Windows\System) i przybiera niepozorną nazwę jednego ze
sterowników lub narzędzi Windows. Wpisuje się także do sekcji Autostart
Rejestru, dzięki czemu uruchamia się za każdym startem systemu.
"Trojan" pozostaje w pamięci jako proces z atrybutem
"ukryty", czyli nie ma aktywnego okna i nie jest widoczny w
menedżerze zadań. Wcześniejsze wersje koni trojańskich nie wpisują się do
Rejestru (a więc ich działanie jest jednorazowe - trzeba je instalować za
każdym razem, gdy uruchamiamy Windows). Niektóre nie zmieniają ścieżki i
startują wciąż z tego samego katalogu, z którego je zainstalowano. Jeszcze inne
nie zmieniają nazwy (dzięki temu są łatwe do wykrycia) lub wymagają ręcznej
konfiguracji. W jaki sposób można zdekonspirować włamywacza? Istnieje kilka
sposobów. Najprostszym jest zainstalowanie programu antywirusowego z najnowszym
zbiorem wirusów znanych producentowi (w przypadku wielu aplikacji taką bazę
można pobrać ze strony WWW programu). Program wykryje próbujący zainstalować
się serwer i zaproponuje usunięcie go z dysku. Niestety, jest on nieskuteczny w
wykrywaniu mniej znanych "trojanów", na przykład rodzimej produkcji.
Innym sposobem jest użycie specjalnego programu, który wykryje konia
trojańskiego obecnego już w systemie. Z reguły te aplikacje są tworzone do
wykrywania pojedynczych "trojanów". Najbardziej chyba uniwersalnym
jest The Cleaner 2.0. Potrafi on wykryć kilka "trojanów",
m.in. Back Orifice'a, Master's Paradise. Inne to: NetBus
Remover (usuwa trzy najpopularniejsze mutacje NetBusa), BOClean 2.01,
Bored 0.2 executable, BoDetect 1.0.2 (usuwają Back
Orifice'a). Interesującym programem, który wprawdzie
nie usuwa serwera Back Orifice'a, ale potrafi skutecznie "zagłuszyć"
jego działanie, jest NOBO. Ta prosta aplikacja nasłuchuje na porcie
wykorzystywanym przez "trojana" do transmisji danych i blokuje dostęp
do niego poprzez wysyłanie informacji o zainstalowanym oprogramowaniu
wykrywającym działania włamywacza. Jeśli jednak z jakichkolwiek powodów wyżej wymienione sposoby usunięcia
intruza zawiodą, można spróbować zrobić to ręcznie. Za pomocą specjalnego
programu zwanego skanerem sprawdza się otwarte porty na swoim komputerze. Jest
to jednak czynność daleko wykraczająca poza umiejętności przeciętnego
użytkownika komputera.
149. Jak usunąć z komputera XRomeo&XJuliet i nie
dopuścić do powtórnego
zainfekowania? Czytelnicy tej
rubryki, pamiętają zapewne pytania dotyczące skutecznej walki z wirusami oraz
metody działania zawarte w moich odpowiedziach 104-107, 111 i 113. Wtedy
panowało przekonanie, że wystarczy nie otwierać podejrzanych załączników do
poczty elektronicznej, to nie zainfekujemy sobie komputera. Niestety to
powiedzenie nie jest już aktualne! W ostatnich tygodniach pojawiła się w
Przemyślu nowa wersja popularnego ostatnio robaka Romeo&Juliet o nazwie
XRomeo&XJuliet. Zwykle robak pojawia się w komputerze ofiary w postaci
listu elektronicznego w standardzie HTML z załączonymi plikami xromeo.exe i
xjuliet.chm. List ma jeden z kilku możliwych tematów: Romeo&Juliet albo
where is my juliet ? albo where is my romeo ? albo hi last wish ??? albo lol :)
albo ,,... albo !!! albo newborn albo merry christmas! albo surprise ! albo
aution: NEW VIRUS ! albo scandal ! albo ^_^.Treść listu napisana w HTMLu
zawiera odwołania do identyfikatorów załączonych plików, co wymusza zapisanie
ich na dysku oraz uruchomienie pliku xjuliet.chm dla samego wyświetlenia podglądu
listu w programie Outlook Express. Po ewentualnej infekcji nie należy
uruchamiać żadnych plików z rozszerzeniami:.doc .xls .exe .avi .bmp .jpg .jpeg .jpe .gif .mpg .mpeg .mp3 .mp2
.wmf .wma .wmv .vqf .arj .lha .zip .rar .reg.
Kliknięcie na takim pliku powoduje zamianę oryginalnego
pliku na kopię robaka. Oryginalne pliki zostają skopiowane do katalogu
c:recycled pod zmienioną losową nazwą i rozszerzeniem. Pliki z załącznika
zapisywane są w katalogu c:\windows\temp, a uruchomiony plik myjuliet.chm
uruchamia program xromeo.exe. Możliwe jest to dzięki błędowi w obsłudze plików
pomocy w standardzie HTML. Program xromeo.exe tworzy swoją kopię w katalogu
c:\windows\system w pliku sysrnj.exe, a następnie modyfikowany jest Rejestr
systemu Windows, czego efektem jest zamienianie wszystkich plików o wyżej
wymienionych rozszerzeniach w momencie uruchomienia ich przez użytkownika na
kopie robaka, o oryginalnej nazwie pliku z dodanym rozszerzeniem exe - np.
moj_dokument.doc zostaje zamieniony na moj_dokument.doc.exe. Robak rozsyła się
za pomocą poczty elektronicznej używając do tego wielu znanych serwerów. Usuwanie
robaka XRomeo&XJuliet
1.Nacisnąć jednocześnie klawisze Ctrl+Alt+Del i gdy pojawi
się okienko Menadżera Zadań, zamknąć (przy pomocy przycisku
"Zamknij") zadania o nazwie: "Romeo&Juliet",
"Xromeo"
2.Zainstalować najnowszą wersję oprogramowania mks_vir (z
grudnia 2000) MKS_DEMO.EXE
3.Należy z menu programu do obsługi poczty elektronicznej
Outlook (lub Outlook Express) wybrać: Widok -> Układ - odhaczyć 'Pokaż
okienko podglądu' (ma być pusty kwadrat [ ])
4.Skasować w programie pocztowym zarażone listy.
5.Pobrać z internetowej strony mks.com.pl plik
rejestru usunxrom.reg zapisać na dyskietce i ochronić ją przed
zapisem.(z wymienionej strony m.in. korzystałem odpowiadając na to pytanie)
6.Uruchomić ponownie komputer w trybie MS-DOS (Start >
Zamknij system > Uruchom ponownie w trybie MS-DOS), a gdy pojawi się znak
zachęty, włożyć dyskietkę przygotowaną w poprzednim punkcie i następnie wpisać:
regedit a:\usunxrom.reg
7.Po pomyślnym dodaniu zawartości pliku z dyskietki do
Rejestru należy wyjąć dyskietkę z napędu i ponownie uruchomić system Windows.
8.Używając Skanera mks_vir przeskanować dysk twardy
komputera, usuwając wszystkie pliki, w których zostanie wykryty robak
XRomeo&XJuliet, a w szczególności plik: c:\windows\sysrnj.exe
Na koniec dobra rada: zainwestujmy w markowy program
antywirusowy i posiadajmy jego najnowszą bazę wirusów. Nie przyjmujmy od
nikogo aplikacji, jeśli nie ufamy mu całkowicie. Oprócz sprawdzania plików
pobieranych z Internetu skanujmy cały dysk twardy np. raz w tygodniu. W
nadchodzącym 2001 roku życzę użytkownikom komputerów wszystkiego najlepszego a
zwłaszcza częstych komunikatów: Nie znaleziono wirusa!