W szponach wirusa


BAT i CMD

5. Pliki wsadowe

Szkodliwy kod może chować się w pliku AUTORUN.INF, który jest odtwarzany automatycznie po włożeniu płyty do napędu CD-ROM. W tym przypadku nie uda Ci się zapobiec infekcji. Dlatego warto zablokować samoczynne uruchamianie pliku, wprowadzając zmiany do Rejestru.

Szkodliwy kod może chować się w pliku AUTORUN.INF, który jest odtwarzany automatycznie po włożeniu płyty do napędu CD-ROM. W tym przypadku nie uda Ci się zapobiec infekcji. Dlatego warto zablokować samoczynne uruchamianie pliku, wprowadzając zmiany do Rejestru.

Pliki wsadowe są zapisane w formacie tekstowym i zawierają dowolną liczbę poleceń, które wraz z przywołaniem danego pliku przetwarza kolejno interpreter systemu. Z założenia pliki tego typu miały grupować polecenia DOS-u i mogły być opatrywane prymitywnymi strukturami If (instrukcja warunkowa) oraz Goto (instrukcja skoku). Z czasem doszło jednak do znacznego rozszerzenia zasięgu możliwości. Oprócz poleceń interpretera (Command lub CMD) i programów DOS-u pliki wsadowe akceptują polecenia środowiska Windows, przywołania biblioteczne RunDLL i importy plików REG do Rejestru. Klikając dwukrotnie nieznany plik BAT, możesz spowodować poważne szkody w systemie lub np. dokonać niepostrzeżenie drobnych zmian w konfiguracji. Prosty język stosowany w plikach wsadowych jest za skromny, aby wystarczył do tworzenia złożonych, rozmnażających się wirusów. Użytkownicy, którzy potrafią interpretować kod używany w plikach wsadowych, powinni dokładnie kontrolować całą zawartość plików przed ich przywołaniem. Wrogie polecenie może być ukryte np. po stu pustych wierszach lub w pozornie pustym wierszu, poprzedzone kilkudziesięcioma spacjami.

Uwaga!

W środowiskach Windows 98/Me i 2000 (nie w Windows 95 i XP) pojawił się dość osobliwy błąd. Gdy rozszerzenie pliku EXE zostanie zmienione na BAT, dwukrotne kliknięcie pliku uruchomi program (podobnie jest w przypadku zbiorów PIF i SCR). Wymieniona właściwość systemu w dużym stopniu zwiększa ryzyko związane z plikami BAT.

REG

6. Import do Rejestru

Pliki wyeksportowane z Rejestru są opatrzone rozszerzeniem REG. Domyślne skojarzenie z Edytorem Rejestru REGEDIT.EXE sprawia, że dwukrotne kliknięcie takiego typu wprowadza jego treść do Rejestru. Przedtem system prosi użytkownika o potwierdzenie. Oprócz tego można ocenić zasięg modyfikacji, podglądając plik REG w dowolnym edytorze tekstowym. Dyskretne modyfikowanie Rejestru wymaga zastosowania programu lub skryptu. Dużą skuteczność działania zapewnia również rozwiązanie z użyciem skrótu. W ten sposób można ukryć zdradliwe rozszerzenie REG i uniknąć potwierdzenia w postaci okna dialogowego (patrz porada 9). Gdy wirusowi uda się dokonać importu do Rejestru, może w istotny sposób wpływać na działanie systemu. Większość szkodników wykorzystuje tę metodę, aby za pośrednictwem klucza "Run" zapewnić sobie automatyczne uruchamianie podczas rozpoczynania każdej sesji w systemie. Oprócz tego typowe dla wirusów jest wyłączanie przez Rejestr zabezpieczeń, aby nic im nie stanęło na przeszkodzie. Modyfikacje Rejestru mają jedynie charakter towarzyszący. Ich celem jest zazwyczaj takie przygotowanie systemu, aby atak stał się skuteczny.

SHS i SHB

7. Pakiety wyizolowane

Wycinki z dokumentów (tzw. shellscraps) składają się z nieszkodliwych fragmentów tekstowych. Powstają przez zaznaczenie tekstu w Wordzie i przeciągnięcia go na pulpit lub do okna Eksploratora Windows. Dzięki temu użytkownik nie musi tworzyć odrębnego pliku po to, aby zapisać kawałek tekstu. Jak widać, wycinki tego typu są dość wygodne, lecz stanowią pewne ryzyko. Równie dobrze można bowiem wstawić w Wordzie tzw. pakiet (menu Wstaw | Obiekt | Pakiet) zawierający polecenie DOS-u lub Windows, a potem zapisać je w postaci wycinka. Pakiet wyizolowany jako oddzielny plik sprawia wrażenie nieszkodliwego dokumentu tekstowego. Dwukrotnie kliknięty wykonuje zawarte w nim polecenie, nie prosząc użytkownika o potwierdzenie. Wprawdzie edytor Word uprzedza o niebezpieczeństwie spowodowanym przez osadzanie pakietów w dokumentach, jednak sam Eksplorator (najnowsze wersje) nie czuje się zobowiązany do wyświetlania stosownych ostrzeżeń.

Uwaga!

Można bardzo łatwo maskować polecenia plików wsadowych. Załóżmy, że dokument ZYCZENIA.DOC zawiera (oprócz zwykłego tekstu) ciąg poleceń wsadowych. Mimo rozszerzenia DOC polecenia te mogą być przekierowane do interpretera CMD lub Command:

cmd.exe < zyczenia.doc

Wykonanie tej operacji jest równoznaczne z dwukrotnym kliknięciem pliku ZYCZENIA.DOC o tej samej treści. Umieszczając kod

cmd.exe /c cmd.exe

< zyczenia.doc

w obrębie skrótu, wczytasz do pamięci niepozorny plik z rozszerzeniem DOC.

Siła rażenia podczas ataków z udziałem plików SHS i SHB jest ograniczona tym, że w pakiecie można umieścić tylko jedno polecenie. Na dodatek musi ono dać sobie radę w komputerze lokalnym bez odwoływania się do konkretnych ścieżek na dyskach. Zatem nie można w ten sposób zaprojektować bardziej złożonych struktur, nie mówiąc o wirusach. Największe szkody mogą być spowodowane za pomocą dosowych poleceń usuwania (np. deltree lub del /s z poziomu programu CMD.EXE). Jeśli masz do czynienia z plikami SHS lub SHB, włącz widok szczegółów w oknie Eksploratora (menu Widok | Szczegóły). Kolumna Typ podaje rodzaj pliku. Gdy trafisz na Obiekt wycinek lub Skrót do dokumentu, przeciągnij go do okna Worda. Dzięki temu od razu sprawdzisz, czy wycinek zawiera niebezpieczny obiekt.

INF

8. Skrypty instalacyjne

Pliki INF, przeznaczone przede wszystkim do instalowania sterowników, niekiedy są stosowane do konfigurowania instalowanych aplikacji. Zakresem działania obejmują usuwanie, kopiowanie, zmiany nazwy zasobów dyskowych, a także modyfikacje w Rejestrze. Według domyślnych ustawień w bieżących wersjach środowiska Windows dwukrotne kliknięcie pliku INF otwiera go do edycji. Aby uruchomić zbiór INF, należy kliknąć go prawym przyciskiem myszy i wskazać polecenie Instaluj. Alternatywnie można wymusić uruchamianie, tworząc dodatkowy plik skrótu lub zmieniając domyślne ustawienia systemu. Minimalizuje to ryzyko ewentualnego ataku z użyciem skryptów INF.

Typowy dla wielu płyt CD-ROM plik AUTORUN.INF nie ma nic wspólnego ze skryptami instalacyjnymi oprócz rozszerzenia nazwy. Zbiór ten kieruje się innym, znacznie prostszym zestawem poleceń. Pozwala przyporządkowywać płycie włożonej do napędu określoną ikonę (icon=...) i wczytywać określony program (open=...). Zatem duże ryzyko kryją nawet krążki nagrywane we własnym zakresie, jeśli pochodzą z obcego źródła. Korzystając z pliku AUTORUN.INF, można bowiem uaktywniać dowolny skrypt lub program - także wirusa. Jeżeli masz dużo do czynienia z płytami innych użytkowników, powinieneś wyłączyć mechanizm AutoRun. Przywołaj edytor Rejestru, znajdź klucz "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\ Policies\Explorer" i zmień dane "95 00 00 00" w wartości binarnej "NoDriveTypeAutoRun" na "B5 00 00 00". Taką samą zmianę wykonaj w kluczu: "HKEY_USERS\.DEFAULT\SOFTWARE\Microsoft\Windows\CurrentVersion\ Policies\Explorer".

LNK, URL, PIF i WSH

9. Skróty

Pliki wskazujące na inne zasoby dyskowe, czyli przede wszystkim skróty LNK, URL, i PIF (także SHS i BAT), zdają się nie stanowić takiego zagrożenia, jak pliki zawierające własny kod. Tymczasem są bardzo niebezpieczne, gdyż oferują ogromne możliwości kamuflażu. Na przykład skrót LNK o treści:

regedit /s zyczenia.doc

importuje niepostrzeżenie informacje Rejestru z niepozornie wyglądającego dokumentu DOC (w rzeczywistości musi to być plik tekstowy REG z rozszerzeniem zmienionym na DOC).

W podobny sposób skróty mogą przekazywać kod HTA do przeglądarki internetowej czy polecenia wsadowe do interpretera, niezależnie od rozszerzeń nazw plików, w których są zapisane.