Dělení podle oblastí, které jsou napadeny

Boot viry - Boot viruses

Tato první nejstarší skupina virů infikuje části nacházející se v určitých systémových oblastech disku. Těmito oblastmi mohou být: boot sektory disket a MBR (Master Boot Record) pevného disku. Napadením nějaké z těchto oblastí si boot virus zajistí svoje spuštění hned po startu počítače.

Uvedené viry se chovají tak, že obvykle přepíší svým vlastním kódem boot sektor, a původní přepsanou část boot sektoru uschovají na jiné místo disku. Buď do nějakého jiného sektoru, který je pak v tabulce FAT označen jako vadný, a nebo využijí běžně nevyužívané 40. stopy. Taková virová infekce se potom šíří pomocí boot sektorů disket, které přišly do styku s nakaženým systémem. Operační systém DOS je pro ně totiž velmi výhodným hostitelem vzhledem k malé možnosti jeho kontroly a vzhledem k vysoké frekvenci používání těch nejjednodušších povelů jako je zápis a čtení z disku, kopírování disket, prohledávání obsahu adresáře atd.

Bootový virus infikuje systém (tj. instaluje se do paměti a zapíše svoje tělo do MBR pevného disku při zavádění systému z infikované diskety. Virus se obvykle nainstaluje do paměti jako paměťově rezidentní, a jakmile dojde k novému zavádění systému, začne infikovat boot sektor disket, které nejsou ochráněny proti zápisu, a při tom přijdou do styku se systémem (například při kopírování na disketu apod).

V obou případech, jak u infekcí MBR nebo infekcí boot sektoru diskety, tento typ viru obvykle uloží původní boot sektor nebou tabulku rozdělení disku někam jinam na disketu či disk, ačkoliv to není vždy pravidlem. Jestliže virus zapíše původní boot sektor do kritické oblasti disku či diskety, jako je např. sektor obsahující část tabulky FAT, nebo hlavní diskový adresář, může dojít k tomu, že data na disku jsou navždy ztracena.

Charakteristickým symptomem přitomnosti infekce bootovým virem, který lze zaznamenat i u neznámých boot virů je skutečnost, že kapacita systémové paměti, oceněná programem chkdsk či mem, je většinou nejméně o 1024 bytů menší, než jaká je ve skutečnosti paměť instalovaná v systému (tj. není 640 KB, ale třeba jen 639 KB).

Souborové viry - File viruses

Druhou a svého času nejrozšířenější skupinou jsou viry souborové. Jak již z názvu vyplývá, jejich hlavním hostitelem jsou soubory.
Tyto viry bychom mohli dále třídit podle toho, jaké soubory při infekci napadají - v zásadě jsou to vždy proveditelné soubory (COM, EXE, SCR...), neboť cílem viru je, aby provedením hostitelského kódu došlo k rozmnožení virového kódu. Nějčastěji se tedy jedná o soubory spustitelné binární (COM, EXE, SCR...). Může se též jednat o souborové viry infikující batové soubory (BAT), ovladače (SYS). Navíc jsou souborové viry zaměřeny na různé operační systémy (DOS, Windows 3.x, Windows9x/NT/2000, OS/2, Macintosh, Unix...) Mechanismus činnosti souborových virů je však podobný ve všech případech. Podle metody infekce můžeme souborové viry rozdělit na několik skupin:

  • Overwriting viruses - přepisující viry

    Tato metoda infekce je jednoduchá. Virus přepíše obsah cílového spustitelného souboru vlastním kódem (tělem), a tak zníčí původní obsah souboru. Takto infikovaný soubor je již nefunkční a nemůže být opraven. Po jeho spuštění dojde pouze k aktivaci viru, který se ve většině případů rozmnoží do dalších spustitelných souborů. Snad ve všech případech se jedná o nerezidentní viry (viry přímé akce). Na masové rozšíření nemají přepisující viry žádnou šanci.

  • Parasitic viruses - parazitické viry

    Jako parazitické viry jsou označovány ty, které při infekci změní (většinou prodlouží) obsah cílového spustitelného souboru. Parazitické viry však obsah cílového souboru nepoškodí (narozdíl od přepisujících virů). Parazitické viry se dokážou umístit před původní program (prepending), nebo za něj (appending). Existují taky parazitické souborové viry, které se vloží do středu souboru (inserting). Nejčastěji se však parazitické viry připojují na konec souboru.
    Důležité je, aby virus upravil infikovaný soubor tak, aby při spuštění tohoto souboru došlo kromě aktivace původního programu i k aktivaci těla viru. Detaily k jednotlivým variantám parazitických virů naleznete na stránce "souborové viry - detaily".

  • Companion viruses - doprovodné viry

    Doprovodné viry jsou typem infekce, která se detekuje poměrně obtížně proto, že při jejich replikaci nejsou měněny ani soubory, ani systémové oblasti disku. Nástup operačního systému Microsoft Windows však způsobil téměř jistou smrt této skupiny virů. Zpět ale k tématu :)
    Virus napadá soubor typu EXE tak, že vytvoří nový soubor se stejným jménem, ale s příponou COM a do něj umístí jen svoje tělo. Při volání původního souboru se pak podle dosovských priorit volá při shodnosti jmen jako první vždy soubor s příponou COM - a tím se vlastně předá řízení přímo viru, aniž dojde ke spuštění žádaného programu.
    Druhou metoda je, že virus přejmenuje cílový soubor (například XCOPY.EXE na XCOPY.EXD) a pak sám sebe umístí do souboru, který nazve po původním jménu (v našem případě XCOPY.EXE). Při spuštění tohoto souboru pak virus převezme kontrolu jako první a pak nastartuje originální přejmenovaný soubor (XCOPY.EXD). Zajímavostí je, že tato metoda pracuje i v jiných operačních systémech.
    Třetí metodou jsou "Path companion" viry, které při infekci využívají priorit uvedených v proměnné DOS PATH. Pokud se totiž nachází na disku více souborů se stejným názvem, je nejdříve spuštěn ten, který se nachází v proměnné PATH jako první. Toho tyto viry využívají, a duplikáty umisťují do počátečních adresářů, uvedených v proměnné PATH.
    Jelikož tyto viry tvoří samostatné soubory, lze je odstranit pouze vymazáním infikovaných souborů. Odstraňování těchto virů je tak rychlé, efektivní a bez ztráty dat.

Detailnější informace o souborových virech naleznete v následujících článcích:
Souborové viry pro Windows - detaily
Souborové viry pro DOS - detaily

Multipartitní viry - Multipartite viruses

Jako viry multipartitní jsou označovány ty, které se chovají jako bootové viry, a zároveň jako viry souborové. Jinými slovy, jsou schopny infikovat různé oblasti disku - většinou je to tabulka rozdělení disku, a současně některé typy souborů. Díky tomu jsou tyto viry "všestranné". Do této skupiny patří i populární virus OneHalf.

Makro viry - Macro viruses

Makroviry jsou relativně mladou skupinou virů. První se začaly objevovat až v roce 1995. Makroviry souvisí především s „výrobky“ které vzniknou požíváním kancelářského balíku Microsoft Office. Makroviry se tak mohou vyskytnout v dokumentech MS Wordu (mají příponu DOC), v sešitech MS Excelu (s příponou XLS) a občas i v prezentacích MS PowerPointu (přípona PPT). Jak již název naznačuje, tyto viry jsou tvořeny makry. Makra jsou programy, které si uživatel může vytvořit sám pro usnadnění práce v některých aplikacích. Takovou typickou aplikací je právě Microsoft Office, tj. MS Word, MS Excel apod. Makrojazyk, ve kterém lze makra vytvářet je v těchto produktech natolik dokonalý, že v něm lze vytvořit i šířící se program - makrovirus. Celý chod makroviru je obvykle závislý na existenci auto-maker (samo-spouštěcí makra). Auto-makra jsou speciální makra, která se spouštějí automaticky při určité operaci (například při otevření dokumentu, uzavření dokumentu apod.). Pokud tedy dokáže makrovirus tyto auto-makra využít, může se úspěšně šířit (připojí se k dalšímu dokumentu opět ve formě maker). Důležité je poznamenat, že makra (ať už makroviru, či makra uživatele) jsou společně uloženy s dokumentem (v případě MS Wordu) či s sešitem (v případě Excelu) v jednom souboru. "Přestupným místem" se v případě makroviru pro MS Word stává globální šablona, která se jmenuje NORMAL.DOT. Tato šablona obsahuje některá nastavení uživatele (formát stránky apod.) a automaticky se otevírá při každém spuštění MS Wordu, takže pokud ji makrovirus napadne, má kontrolu nad MS Wordem hned po jeho startu. V případě MS Excelu hraje velkou roli adresář XLStart.

V dnešní době dokážou být makroviry:

  • Stealth - tyto makroviry maskují svoje makra, aby se tak bránily proti snadnému odhalení. Běžný makrovirus lze například jednoduše odhalit pomocí menu Tools/Macro, v němž uvídíme jednotlivé makra viru. Stealth virus tomu však dokáže zabránit, i když možná ještě podezřelejším způsobem. Menu Tools/Macro totiž úplně odstraní, nebo ho znefunkční... Jistou vyjímkou jsou makroviry označené jako "Class". Ty svoje tělo ukládají do speciálního modulu ThisDocument, popřípadě ThisWorkBook a tak se dokážou vyhnout detekci přes menu Tools/Macro i bez použití "stealth" technik. Metodu "Class" lze využívat až v jazyce VBA5.

  • Polymorfní - tyto makroviry dokážou modifikovat strukturu vlastního těla. Polymorfní makroviry pak nelze detekovat podle sekvencí, či podle klasických kontrolních součtů (CRC).

  • Multipartitní - tato skupina makrovirů se dokáže šířit několika způsoby. Například makrovirus Shiver je napsán tak, že se dokáže šířit jak v programu Word, tak i v programu Excel. Makrovirus však může vypouštět například i souborový virus (WM/Navrhar), čimž se makrovirus stává opět multipartitním.

  • Multiplatformní - některé makroviry se dokážou šířit pod různými systémy, kde se některé produkty, především společnosti Microsoft používají (PC, MAC...).

V dnešní době se vyskytují makroviry těchto typů (podobné označení používá i spousta antivirů):

    WM/
    šíří se pod produktem Microsoft Word 6.0/7.0. Využívají jazyk "WordBasic".

    W97M/
    šíří se pod produktem Microsoft Word 8/9 (Office 97/2000). Využívají jazyk VBA5.

    XM/
    šíří se pod produktem Microsoft Excel 5.0/6.0. Využívají jazyk VBA3.

    X97M/
    šíří se pod produktem Microsoft Excel 8/9 (Office 97/2000). Využívají jazyk VBA5.

    A97M/
    šíří se pod produktem Microsoft Access 8/9 (Office 97/2000). Využívají jazyk VBA5. Počet těchto makrovirů je však velmi malý, a nepředstavují větší hrozbu.

    P97M/
    šiří se pod produktem Microsoft PowerPoint. Využívají jazyk VBA5. Jelikož není aplikace Microsoft PowerPoint tolik používaná jako Word, či Excel, není moc šancí, že se makrovirus pro PowerPoint rozšíří.

    XF/ (Excel Formula)
    Ještě před vznikem jazyku VBA byl "Excel Formula" jedinou možností, jak v Excelu něco naprogramovat. Příkazy se zadávají přímo do buněk sešitu (!). Tyto makroviry se opět vyskytují v minimálním množství...

    Speciálním případem jsou makroviry, které se dokážou šířit v několika podobách - jako makrovirus pro Word, Excel, či PowerPoint (díky stejnému jazyku VBA). Typickým příkladem je makrovirus Triplicate (Tristate), jenž se někdy označuje také jako O97M/Triplicate.

    S příchodem Microsoft Office 2000 přichází i nové označení pro makroviry určené pro tuto platformu. Všechny aplikace Office 2000 používají společný jazyk - VBA6 (Visual Basic for Application). Názvy makrovirů pro Office 2000 se většinou označují jako: W2KM/ (W2000M/), X2KM/ (X2000M/), podle aplikace, kterou pro šíření využívají.

O makrovirech by se toho dalo napsat daleko více, proto jsou k dispozici i následující články:
Makro viry - ochrana / léčení
Makroviry - vše o nich

Adresářové viry - Cluster viruses

Miniaturní skupina virů, zastoupenou virem Dir II, jsou tzv. clusterové viry. Tyto viry modifikují vstupy adresářové tabulky tak, že virus je zaveden do paměti a spuštěn dříve než program, který uživatel chce spustit. Samotný virus se na disku nachází pouze jednou, někde na konci disku. Léčení tohoto viru je velmi jednoduché (ale zdlouhavé). Stačí pouze "zavirovaný soubor" překopírovat do jiného adresáře a změnit mu příponu (aby nebyla COM, EXE). První obrázek je situace před napadení virem (data adresáře směřují na první klastry souborů). Druhý obrázek je situace po infekci adresářovým virem (data adresáře ukazují na virus):


Generické viry - Generic viruses

Jedná se o viry, založené na stejném základě, které jsou si navzájem velmi podobné. Obvykle vznikají drobnou úpravou již existujícího viru. Typickým příkladem můžou být makroviry W97M/Melissa apod.