Počítačové viry Roman Bartoš
Copyright © iStudium, 2005, http://www.istudium.cz Žádná část této publikace nesmí být publikována a šířena žádným způsobem a v žádné podobě bez výslovného svolení vydavatele. Produkce, technický redaktor: Roman Bartoš Vnitřní úprava: Matouš Horáček
Obsah Obsah................................................................................................................................................... 1 Počítačové viry.................................................................................................................................... 2 Co je to počítačový virus?............................................................................................................... 2 Jak dělíme počítačové viry? ............................................................................................................ 2 Podle viditelných projevů............................................................................................................ 2 Podle způsobu šíření ................................................................................................................... 2 Podle času projevu ...................................................................................................................... 3 Podle nebezpečnosti .................................................................................................................... 3 Podle napadených oblastí ............................................................................................................ 3 Podle umístění v paměti .............................................................................................................. 4 Podle chování .............................................................................................................................. 4 Podle rychlosti šíření................................................................................................................... 4 Vznik virů........................................................................................................................................ 4 Techniky detekce ............................................................................................................................ 4 Kde se skrývají? .............................................................................................................................. 5 Projevy virů................................................................................................................................. 5 Likvidace..................................................................................................................................... 5 Způsoby prevence ....................................................................................................................... 5 Literatura:............................................................................................................................................ 6
1
Počítačové viry Co je to počítačový virus? Počítačový virus je program napsaný programátorem. Ačkoliv je virus cizí a někdy i destruktivní element, jehož reprodukční cyklus je podobný lidskému viru, žádná jiná podobnost tu není. Dostane-li se virus na pevný disk, počítač „neonemocní“. Pracuje i nadále naprosto normálně. Počítačový virus byl napsán nejčastěji z toho důvodu, aby potrápil či poškodil ostatní lidi tím, že si pohrává s jejich daty. Někdy je cílem viru způsobit v počítači co největší škodu. I když to není tak běžné, jiní autoři virů mají teroristické cíle a požadují výkupné za zrušení následků virové nákazy. Virus se skládá ze dvou programů s nezávislými funkcemi. Cílem prvního programu je virus množit – tvoří tolik kopií sama sebe, kolik jenom může. Druhý program viru provádí buď ničení dat, nebo pouze ukazuje přítomnost viru a posmívá se uživateli. Během své inkubační fáze je virus velmi nenápadný. Provede se první reprodukční program. V určitém okamžiku (možná k určitému datu nebo po namnožení dostatečného počtu kopií viru, nebo když uživatel provede určitou operaci) se spustí druhý program. Může například zformátovat celý pevný disk, zobrazit humorný vzkaz na obrazovku. Může také znemožnit čtení na obrazovce (například převrácením obrazu či roztřesením písmen).
Jak dělíme počítačové viry? Počítačové viry a škodlivé kódy vůbec můžeme dělit podle různých hledisek a podle různých faktorů. V praxi se lze setkat s kódy, které kombinují vlastnosti několika kategorií.
Podle viditelných projevů Viry bez projevů Drtivá většina škodlivých kódů se snaží projevovat co nejméně. Důvod je celkem jednoduchý: jakýkoliv projev způsobí, že se škodlivý kód prozradí a že s ním uživatel zpravidla začne bojovat. A právě to je důvod, proč se v současné době snaží programátoři omezovat projevy na zcela nezbytné minimum. Viry s grafickými projevy Pokud už se autor rozhodne do škodlivého kódu „zamontovat“ nějaký projev, zpravidla se jedná o projev grafický. Může jít třeba o zobrazení nějakého poselství na obrazovce (zastavte pokusy na zvířatech, zastavte kácení pralesů apod.), nebo třeba o modifikaci pracovní plochy. Viry se speciálními projevy Existují třeba škodlivé kódy, které jsou schopny přinutit systémové hodiny v počítači, aby se rozběhly pozpátku.
Podle způsobu šíření Počítačový virus Je to kus programového kódu, který je schopen se prostřednictvím hostitelské aplikace replikovat, a to více než jednou. Virus je počítačový program, který se šíří, aniž by o tom člověk sedící za počítačem věděl. Žádnou jinou vlastnost nemá. Nemusí škodit, nemusí na sebe jakkoliv jinak upozorňovat. To jsou jen jakési „extra“ projevy, které autoři virů do svých „dítek“ z rozličných důvodů přidávají.
2
Trojský kůň Je to vlastně jakýkoli počítačový program, jenž sice vykoná činnost, kterou uživatel očekává, ale zároveň provede činnost, o které nemá ani ponětí – a s níž by pravděpodobně nesouhlasil. Síťový červ Je to vlastně počítačový virus, který pro své šíření využívá služeb jakékoliv sítě (lokální i globální). Červ je zpravidla škodlivým kódem sám o sobě.
Podle času projevu Viry aktivující se okamžitě Většina soudobých škodlivých kódů se aktivuje ihned po vstupu do počítače. Je to proto, že současné antivirové metody umožňují reagovat na výskyt nového viru během několika hodin. A právě těchto několik málo hodin je jediná doba, během níž může kód cokoliv vykonat. Pak už začínají mít navrch antivirové technologie. Viry aktivující se k určitému datu Pokud chtěl programátor způsobit skutečnou globální epidemii, stačilo stanovit vhodné datum: ani příliš blízké, aby se virus měl čas rozšířit, a ani příliš vzdálené, aby jej antivirové firmy nestačily vymýtit. Viry aktivující se při určitém úkonu Speciálním případem škodlivých kódů byly ty, které se aktivovaly při provedení nějakého úkonu – třeba při každém osmém restartu počítače nebo při každém stisknutí určité klávesy.
Podle nebezpečnosti Viry nedestruktivní Snahou je, aby na sebe viry neupozorňovaly, protože upozornění rovná se likvidace ze strany napadeného uživatele. A destrukce dat v celém počítači se navíc rovná vyklizení už dobyté pozice. Viry destruktivní Cílem těchto virů je poškození dat v počítači.
Podle napadených oblastí Boot viry Boot viry infikují systémové oblasti, které jsou velmi důležité pro zavádění operačního systému do paměti počítače. Při spuštění počítače se pak i s operačním systémem natáhne do paměti počítače i virus. Souborové viry Souborové viry napadají spustitelné soubory (jedná se o soubory s příponou exe, com, bat, bin, sys atd.). Cílem je, aby s každým spuštěním napadeného souboru (programu) se aktivoval i virus. Makroviry Hlavní nebezpečnou stránkou makrovirů je to, že jsou nezávislé na platformě a operačním systému. Na rozdíl od boot virů a souborových virů se makroviry zaměřují na soubory datové.
3
Podle umístění v paměti Rezidentní viry Jsou to viry, které se po spuštění infikovaného souboru usadí v operační paměti počítače. Odtud pak provádí škodlivou činnost Nerezidentní viry Tyto viry nepotřebují pro svoji škodlivou činnost nutně být umístěny v operační paměti. Stačí, když jsou aktivovány společně s hostitelským programem. Pak přebírají řízení jako první, provedou svoji činnost, a po té předají řízení zpět hostitelskému programu. Nerezidentní viry jsou většinou souborovými viry.
Podle chování Stealth Neviditelné viry ukrývají modifikace, které na souborech provedly. Monitorují systémové funkce, jež používá operační systém pro čtení souborů z paměťového média a pak simulují výsledky volání těchto funkcí. Znamená to, že program, který se pokouší číst napadený soubor, vidí místo něj jeho původní, nepozměněný tvar. Polymorfní viry Polymorfní virus své tělo zašifruje, a tak se snaží zašít svou signaturu před antivirovým programem.
Podle rychlosti šíření Rychlé infektory Pod pojmem rychlý infektor chápeme souborový virus, který infikuje nejen spouštěné soubory, ale i otvírané (při kopírování, přesouvání apod. ). Pomalé infektory Pomalé viry je těžké odhalit, protože infikují soubory, které operační systém modifikuje nebo kopíruje. Zvláštní skupinou jsou pak tzv. hoaxy. Hoax : varování před virem, který neexistuje (žertík) Je to zpráva, která varuje před mimořádným nebezpečným a právě objeveným virem, proti kterému není lék a který je nesmírně agresivní. Zároveň příjemce vybízí, aby vykonal dobrý skutek a pomohl šíření viru zastavit tím, že zprávu o něm předá dál.
Vznik virů Každý virus je vlastně program, který někdo musel napsat. Podle statistik jsou programátoři virů velmi mladí, převážně od 1230 let. A většinou je píší, aby se vytáhli před spolužáky, jinými slovy před svým okolím. Je taky docela možné, že viry píši programátoři z firem, které vyrábějí antivirové programy, aby se jim zvýšily tržby.
Techniky detekce Antivirové programy hledají viry různými způsoby. Nejrozšířenější způsob je přes tzv. „virové indikátory“. To znamená, že antivirový program má v sobě napsané popisy virů a ty porovnává s testovaným souborem. Jinými slovy to znamená, že pokud nějaký soubor obsahuje určité pořadí znaků a to samé pořadí je i ve virové databázi antivirového programu tak je váš počítač napadený virem. Nevýhodou této spolehlivé metody je to, že je potřeba neustále aktualizovat 4
databázi zmíněných virových indikátorů. Dalším nejpoužívanějším způsobem detekce virů je tzv. „heuristická analýza“. Ta spočívá v tom, že si antivirový program kontroluje soubor instrukci po instrukci, a pokud obsahuje instrukce, které by měli něco mazat nebo nějak jinak počítači škodit, tak ten soubor označí jako napadený a oznámí to uživateli. I tato metoda má své nevýhody. Největším problémem je to, že muže vyvolat planý poplach. Určitě je ale lepší planý poplach než neznámý virus na disku. Dalším způsobem detekce je tzv. „sledování změn“ resp. „test integrity“. Spočívá v tom, že si antivirový program zapamatuje popis souboru (velikost, datum, čas, atributy a obsah). Když virus napadne nějaký soubor, tak se ten soubor změní (velikost, atd.). Podle toho lze zjistit, zda se se souborem něco dělo. Tato metoda má také své nevýhody. Například tuto metodu nemůžeme používat na dokumenty, protože ty si mění každou chvíli (aktualizujete si soubory). A nové typy virů, podstrčí antivirovému programu původní popis, takže tato metoda je neúčinná.
Kde se skrývají? Nejčastější skrýše jsou spustitelné soubory (EXE, COM). Přípona COM se dnes moc už nevyskytuje, protože byla používaná v éře DOSu (před rokem 95 - v tomto roce v srpnu uvedl Microsoft na trh Windows 95. Například COMMAND.COM, tento soubor se používá při startu PC, nebo WIN.COM, i bez tohoto souboru se počítač neobejde, protože bez tohoto nelze spustit Windows. Další skrýší jsou systémové oblasti, jako například boot sektor. A pokud pracujete s Internetem tak jsou to složky Temporary Internet Files a Downloaded Program Files.
Projevy virů Na to nelze úplně přesně odpovědět, protože na sebe upozorňují nejrůzněji. Například tím, že pořád vypisují na obrazovku nějaké nesmysly, jako například "Dej mi sušenku.". Jiné se projevují tím, že klidně smažou nebo zformátují pevný disk, nebo smažou složku Dokumenty nebo odešlou kopie vašich dokumentů autorovi viru nebo přepíší pevný disk nějakými nesmysly atd. V současné době už jsou viry natolik inteligentní, že na sebe příliš neupozorňují, aby nebyly odhaleny a následně zlikvidovány antivirovým programem.
Likvidace Nejúčinnější způsob jak se zbavit zavirovaného souboru, je se ho hned zbavit, tedy vymazat z disku. Ale co když je to nějaký startovací soubor systému Windows. V tomhle případě je lepší, nastartovat počítač ze záchranné diskety, soubor vymazat a znova nainstalovat Windows (to se dělá, pokud by počítač bez toho souboru nemohl nastartovat).
Způsoby prevence Vždy když vložíme do disketové mechaniky disketu tak ji hned projet antivirovým programem. Ale pokud nemusíte tak do počítače žádné cizí diskety nestrkejte. Kontrolovat soubory stažené z internetu Neotevírat přílohy emailu neznámého původu (soubory s příponou EXE, COM, BAT, VBS, SCR) Nezapomínat diskety v disketové mechanice (Boot viry) Zálohujte si data, například programem WinZip Nepřeceňovat antivirový program
5
Literatura: [1] T. Přibyl a kolektiv, PC World, Počítačové viry v roce 2004 (PC World, Praha, 2004)
6