Roku 1983 saprvý raz objavil pojem Počítačový vírus pre program, ktorý ovplyvňuje činnosťiných programov tým, že sa do nich skopíruje. Zrodila sa počítačová biológia.
Rozlišujemeniekoľko druhov počítačových vírusov:
Ø vírusy
Ø červíky
Ø trójske kone
Ø n-árna infiltrácia
Ø trpaslíci
Ø škriatkovia
Ø bomby a míny
Ø špióni
Ø kombinácia prostriedkov
4.1 Červíky
Červík (anglicky worm) jesoftwarový infiltračný prostriedok, ktorý sa rozmnožuje špecifickým spôsobom -prostredníctvom počítačovej siete, presnejšie povedané prostredníctvom jejkomunikačného programového vybavenia. Kópie tohto prostriedku sídlia vpočítačoch siete a dohromady tvoria články červíka. Ktorýkoľvek článok, ktorýzíska riadenie, zistí prostredníctvom siete, či sa v susedných počítačochnachádzajú jeho kópie. Ak nie, postará sa, aby sa tam dostal.
Stačí, aby sa hoci len dojedného počítača siete dostal zárodočný článok červíka a onedlho sa objaviajeho kópie vo všetkých počítačoch siete. Likvidácia červíka nie je jednoducházáležitosť, lebo treba zlikvidovať naraz všetky jeho články. Odstránenie článkučervíka z jedného alebo viacerých uzlov siete nič nerieši. Ak zostane existovaťv sieti čo len jediný článok, onedlho sa červík po nej znova rozrastie.
Články červíka tvoriadohromady vyšší celok – akýsi softwarový organizmus,ktorý sa drží pri živote obzvlášť silno.
4.2 Trójskekone
S týmto druhom infiltračnýchprostriedkov je spojených najviac nejasností a dohadov.
Trójsky kôň sám o sebeneškodí, škodlivé je to, čo sa v ňom nachádza. Softwarový trójsky kôň je lesťoua skrýšou zároveň. Prísľubom niečoho atraktívneho sa votrie užívateľovi dopozornosti tak, že si ho sám ho zavedie do počítača. Nie je podstatné, či toatraktívne naozaj splní alebo nesplní. V oboch prípadoch sa aktivovaním programu, ktorýfunguje ako softwarový trójsky kôň, začne vykonávať aj užívateľovi neznáma časťkódu. Výsledkom je niečo, čo užívateľ nečaká, obvykle pohroma, akonapríklad premazaný disk. Jednoduché trójske kone sa nereplikujú,rafinovanejšie nasadia do počítača niečo, čo sa rozmnožovať vie - napríkladvírus, alebo zárodočný článok červíka.
Ešte rafinovanejšie jeumiestniť trójskeho koňa do kompilátora alebo iného systémového programu,prostredníctvom ktorého vytvárame programy. Proces, ktorým sa dostane trójskykôň do kompilátora pozostáva z niekoľkých krokov. V každom kroku sa prekladajúzdrojové texty kompilátora - modifikované istým spôsobom - kompilátoromsamotným:
- na začiatku existuje kompilátor verzie v a jeho zdrojové texty, pričom ani v kompilátoreani v jeho zdrojových textoch sa žiaden trójsky kôň nenachádza,
- v prvom kroku sa obohatí zdrojový text kompilátora o kód,ktorým sa realizuje trójsky kôň; takto modifikovaný text prekladača dostaneverziové číslo v+1
- text verzie v+1 prekladača sa preloží prekladačom verzie v, čím sa získa binárny tvarprekladača verzie v+1 s trójskym koňom.
„Takto modifikovaný prekladačdokáže vypraviť do prekladaného programu napríklad škriatka (ktorý potom kreslievamedvedíka na kraj papiera súradnicového zapisovača), alebo do prekladaného moduluoperačného systému vsadí trpaslíka (ktorý gratuluje k novému roku). Autor programu, ktorýje postihnutý činnosťou trójskeho koňa, nenájde samozrejme v zdrojovýchtextoch svojho programu žiadnu príčinu jeho obohateného správania.
Je úlohou trójskeho koňa, abyrozpoznal, že prekladač práve prekladá napríklad istý program alebo istý moduloperačného systému. Vtedy sa trójsky kôň otvorí a do práve prekladanéhoprogramu sa vpašuje kód infiltračného prostriedku, ktorý je v ňom skrytý.
Obdobným spôsobom môžeme dokompilátora vpraviť dva trójske kone, a pokračovať v postupnosti rekompiláciíkompilátora:
- zo zdrojového textu prekladača sa odstráni text oboch trójskych koňov, texttak získa pôvodnú podobu verzie v,
- text verzie v sa preloží prekladačom verzie v+1, čím sa získa prekladač verziev+2,
- odvtedy existuje binárny tvar prekladača verzie v+2 s dvoma trójskymi koňmi azdrojové texty prekladača verzie v, vktorých niet ani stopy po trójskych koňoch.“ (1)
Úlohou druhého trójskeho koňaje rozpoznať kompiláciu novej verzie kompilátora a vpraviť doňho kópie oboch trójskych koňov. Tým sadosiahne, že oba kone sa budú prenášať nielen do nasledujúcej verziekompilátora, ale i do každej ďalšej verzie, takže sa stanú večnými.
4.3 n-árnainfiltrácia
Infiltračný prostriedok môžepozostávať z dvoch alebo viacerých častí. Každá takáto časť sa samostatne môže javiť ako nevinnýprogram. Až v cieľovom počítači, po splnení danej podmienky, sa časti navzájompohľadajú a pospájajú do výsledného infiltračného prostriedku.
Zhotovenie čo len binárnehoinfiltračného prostriedku je obtiažnejšie než zhotovenie obyčajného infiltračnéhoprostriedku. Avšak jednotlivé časti, ak sú vhodne maskované, majú väčšiu šancuvniknúť do chráneného počítačového systému. Jednotlivo poskytujú väčšiu šancuutajiť zmysel ich existencie ako celku, pretože i pri ulovení a analýzeniektorej časti sadá zistiť lenjej dielčie poslanie.
4.4 Trpaslíci
Za posledné obdobie mohliužívatelia počítačov získať dojem, že všetky infiltračné prostriedky spôsobujúiba škodu. Nie je to pravda.
Predstavme si užívateľa,ktorý je tak usilovný, že pracuje na počítači aj v noci z 31. decembra na 1.januára a o polnoci sa mu z ničoho nič objaví na obrazovke gratulácia knovému roku. Alebo iný užívateľ dostane od počítača ráno 1. apríla dobre mienenú radu,aby si dal pozor na prvoaprílových vtipkárov.
Podobné prípady sú prejavomsoftwarových produktov, ktoré nazývame trpaslíci. Softwaroví trpaslíci, podobne akorozprávkoví, neškodia ba ani nevhodne nežartujú. Cieľom ich existencie jespríjemniť užívateľovi aspoň niektoré momenty pri práci s počítačom, poskytnúťdobrú radu alebo službu. Trpaslíci sa nerozmnožujú, treba ich do počítača nasadiť. Pokiaľ nie sú príliš vtieraví,nepotrebujeme proti nim žiadne prostriedky.
4.5 Škriatkovia
Škriatok nie je takmierumilovný ako trpaslík, ale ani tak zákerný ako vírus. Existuje preto, abysi urobil z užívateľa vtip, recesiu, aby ho trochu podpichol alebo urobilnejakú drobnú neplechu. Iba v krajnom prípade, ak s ním užívateľ odmietavychádzať podobrom, môže mu niečo vyviesť.
Jeden škriatok sa prejavovalprostredníctvom súradnicového zapisovača [Witten 87]. Z času načas sa stalo,že zapisovač nakreslil na okraj papiera malého medvedíka. Pre programátorov tobol dobrý žart, pre vedúcich už menej.
Iný, trochu drzejší škriatok[Witten 87], si pýtal od užívateľa raz za čas keksík výpisom I want a cookie.Stačilo odpovedať cookie a škriatok sa uspokojil. Ak keksíknedostal, časom pohrozil, že zožerie pár súborov. Bolo na užívateľovi, ako sazachová.
Škriatok dokáže často riadnevyľakať. Užívateľ napríklad zbadá, že pevný disk (jeho osobného počítača)vykonáva veľké množstvo operácií, iniciátor ktorých je neznámy. Po pársekundách obdrží správu:
„ ... práve premazávamdisk... „
Užívateľ v panike vypnepočítač a po nahraní záložnej kópie operačného systému z diskety a dlhomhľadaní zistí, že sa nič nestalo, že to bol len drsný žart.
Škriatok, podobne akotrpaslík, sa nerozmnožuje. Ani proti škriatkom v princípe nepotrebujeme žiadneprostriedky. Na príliš komunikatívneho škriatka stačí jednoduchýprogram, ktorý bude uspokojovať jeho potreby miesto užívateľa.
4.6 Bombya míny
Bomby a míny sú najstaršímiinfiltračnými prostriedkami. Bomby sú súčasne základnými prostriedkamipočítačovej kriminality. Časovaná (alebo logická) bomba je kus kódu, ktorýpáchateľ vpraví do programu alebo do operačného systému, ktorý vybral ako cieľútoku. Po uplynutí nejakého času alebo splnení nejakej podmienky (napríkladvýpočet polročných odmien) spôsobí kód bomby nejakú deštruktívnu akciu:znehodnotenie programu, vymazanie dát, likvidáciu operačného systému.
Bombu používajú častojednotlivci ako prostriedok pomsty, vydierania alebo teroru voči organizácii.Softwarová bomba je útočným prostriedkom.
Mína funguje v princíperovnako ako bomba. Podobne ako ozajstná mína, aj softwarová mína slúži akoprostriedok aktívnej ochrany skutočných alebo domnelých práv jednotlivca, skupinyalebo organizácie. Typickým je použitie míny na ochranu softwarového produktupred neautorizovaným použitím. Napríklad kompilátor, odovzdaný užívateľovi naodskúšanie ešte pred uzavretím dohody o predaji, môže byť zamínovaný. Ak užívateľ prekročí dohodnutý početaktivácií alebo dohodnuté obdobie skúšobného používania, kompilátor bude mínouzničený.
Výbuch softwarovej míny nemá (narozdiel od bomby) trestný charakter. Mína užívateľovi zničí len ten software,na ktorý už podľa dohody nemá právo. Všetky ostatné jeho programy a dátazostávajú mínou nedotknuté. Keďže mienka kupujúceho nie je pri zamínovávaní nijakbraná do úvahy, je aj mína infiltračným prostriedkom.
Ani bomby ani míny sanerozmnožujú, nemajú replikačný algoritmus.
4.7 Špióni
Tento druh infiltračnýchprostriedkov sa neprejavuje deštrukciou. Cieľom špióna je dostať sa v počítačik utajeným dátam alebo programom, získať ich kópiu a doručiť ju svojmu majiteľovi. Z týchto dôvodovsa prejavuje užívateľom počítača čo najmenej. Po splnení úlohy sa obvykle sámzničí. Ak ide o rozmnožujúceho sa špióna, prvý úspešný špión dáva echo svojimpríbuzným, aby sa zničili.
Ak užívateľ nepristihnešpióna v akcii, tak sa o jeho účinkovaní spravidla dozvie až nepriamo, keďzistí, že údaje, ktoré pokladal za dôverné alebo tajné (a nedostupné), niektozneužíva.
4.8 Kombinácieprostriedkov
Často sa používajúinfiltračné prostriedky aj v rôznych kombináciách. Zvláštnu kombináciuinfiltračných prostriedkov predstavuje červík. Všetky jeho časti-články súrovnaké a starajú sa o nahradenie článkov, ktorým sa nepodarilo prežiť.
Inou kombináciou je n-árnainfiltrácia. Samostatne existujúce diely infiltračného prostriedku saposkladajú dohromady až v prípade potreby. Dovtedy môžu úspešnejšie maskovaťsvoju prítomnosť a význam výsledného prostriedku ako celku.
„Asi najviac kombináciíumožňuje trójsky kôň, ktorý nemusí v sebe obsahovať niečo, čo škodí priamo. Celkom dobre tomôže byťvírus, zárodočný článok červíka, špión, bomba alebo ďalší trójsky kôň. Môže to byt hocii kus kódu, ktorý trójsky kôň vpašuje do programu na prihlasovanie užívateľovdo systému. Tento kus kódu potom fungujeako tajný kľúč (Thompson 84], [Witten 87]. Užívateľ, ktorý ho pozná, nemusívedieť žiadne heslo, a predsa sa dostane do počítačového systému, ktorý jevybavený takto upraveným prihlasovacím programom.“ (1)
Kombinácie metód aprostriedkov infiltrácie poskytujú veľké bohatstvo možností. Toto treba mať napamäti predovšetkým pri analýze infiltračných prípadov a pri návrhuantivírusových programov. Obzvlášť nebezpečné sú tandemy a tímy infiltračnýchprostriedkov, ktoré sa vzájomne strážia a pomáhajú si. Odstránením jedného znich (spravidla najnápadnejšieho) vznikne situácia, ktorú niektorý jehopartner ohodnotí ako trestuhodnú a nejakým spôsobom sa za to pomstí. Takýmtonekvalifikovaným protiinfiltračným zásahom môže vzniknúť škoda, ku ktorej byinak vôbec nemuselo prísť.
5. Akosa chrániť?
„Jediný spôsob, ako stopercentne zabrániťnákaze, je nepoužívať počítač. Denne totiž vznikajú nové a nové vírusy, ktorýchprítomnosť v počítači ani nemusíme odhaliť, a kvôli nim si "zdravím"svojho počítača nemôžeme byť úplne istý nikdy.
Hovorí sa, že dôležitejšia ako samotnéliečenie je prevencia. Ako teda zabrániť preniknutiu vírusu do vášho počítača?
Ø nepoužívať cudzie, neznáme diskety,
Ø neotvárať neočakávané dokumenty vo svojeje-mailov ej schránke,
Ø pravidelne zálohovať údaje.
Ø záložné diskety chrániť voči zápisu,
Ø nenechávať pri štarte počítača disketu vmechanike,
Ø používať originálny software od autorizovanýchdistribútorov,
Ø pokiaľ možno, obmedziť prenos údajov a programovmedzi počítačmi.
Nič a ani dodržiavanie týchto zásad vás nemusí ochrániť prednapadnutím, preto je rozumné okrem spomínaných zásad používať aj antivírovéprogramy.“ (2)
6. Čoje antivírový program?
Programy, ktoré sa zaoberajú hľadaním aodstraňovaním (liečením) sa nazývajú antivírové programy. Čo by mal dokázaťdobrý antivírový program?
Ø nájsť vírus ukrytý v pamäti, na disku alebodiskete,
Ø dokázať ho odstrániť, zničiť,
Ø odstrániť (pokiaľ je to možné) aj napáchanéškody, 4. mal by byť rýchly, aby príliš nespomaľoval prácu.
„Ďalej by mal byť schopný zapnúť ochranupočítača počas činnosti, t.j. byť neustále v pamäti a strážiť počítač predrizikovými operáciami, ktoré sú pre vírusy charakteristické (zapisovanie do FAT-tabuľky,priamy prístup na disk ... ). Väčšina dokáže zálohovať aj citlivé časti disku(partition table, boot-sektor) a CMOS (BrOS).
Štandardom je používanie kontrolnýchsúčtov (CRC). Každý vírus po zapísaní (prepísaní) zmení kód programu (súboru). Metódakontrolných súčtov je založenú na sčítaní číselnej (ASCII) hodnoty znakovtvoriacich súbor. Pri zapnutí ochrany sa urobí CRC súčet pre vybrané súbory apri kontrolách sa zisťuje jeho modifikácia. Zmena CRC súčtu však nemusí vždyznamenať prítomnosť vírusu, pretože existujú programy, ktoré menia svoj kódsamé.“ (2)
Vzhľadom na to, že autori vírusov sú vždyo krok pred autormi antivírových programov (zlé jazyky tvrdia, že výrobcoviaantivírových programov rozširujú vírusy, aby užívatelia kupovali ich programy),rozšírilo sa hľadanie vírusov heuristickou analýzou.
Pri bežnom hľadaní (hovorí sa mu scanovanie)sa prezerajú súbory a porovnáva sa ich kód s kódom evidovaných vírusov. Aksa v súbore nájde časť, ktorú zodpovedá kódu vírusu, vyhlási sa za nakazený.Nevýhodou je, že scanovanie dokáže nájsť len evidované vírusy.
Okrem toho existujú aj vírusy, ktoré počasexistencie menia svoj programový kód (polymorfné). Nájsť polymorfnývírus pomocou scanovania je prakticky nemožné.
„V snahe o vyriešenie tohto problémuzakomponovali tvorcovia antivírových programov do svojich systémov heuristickúanalýzu, ktorá dokáže odhaliť aj neznáme vírusy, ktoré sa prejavujú typickýmiinštrukciami (priamy zápis na disk, modifikovanie citlivých sektorov na disku... ).
Prepracovanejšia heuristická analýzadokáže krok po kroku (inštrukciu po inštrukcii) simulovať činnosť programu a aknarazí na inštrukciu charakteristickú pre vírusy, upozorní užívateľa, že danýsúbor môže byť (ale nemusí) infikovaný. Táto je však oproti klasickémuscanovaniu oveľa pomalšia, pretože nielen porovnáva kód, ale musí simulovať ajčinnosť programu.“ (2)
Okrem polymorfných vírusov existuje ďalšiaskupina - stealth vírusy. Tieto vírusy zmanipulujú operačný systém tak,že dokážu skryť svoju prítomnosť pred antivírovým programom. Vírusy tohto typu mámešancu nájsť len v prípade, ak spúšťame antivírový program z nenakazenejsystémovej diskety.
6.1 Ako odhaliť napadnutie?
„Pokiaľ považujete pravidelné scanovanie akontrolu počítača za zbytočné, môžete rozpoznať vírus podľa neobvykléhosprávania sa vášho počítača:
Ø pomalé vykonávanie operácií (najmä čítanie azápis na disk),
Ø zlé reakcie na klávesnicu,
Ø zamŕzanie,
Ø náhodné resetovanie,
Ø odmietanie poslušnosti a netradičné správanie saprogramov.“ (2)
Napriek tomu, že ide o najčastejšiepríznaky, netreba panikáriť, pretože na každú z týchto možností existuje aj inévysvetlenie (preťaženosť systému, chybný hardware ... ).
6.2 Čo robiť v prípade napadnutia?
Ak nadobudneme istotu, že náš počítač jenapadnutý, treba uvažovať o náprave. Pokiaľ v ňom máme dôležité údaje anedisponujeme zručnosťami skúseného užívateľa, je lepšie ponechať riešenie naodborníkov. Inak je potrebné:
1. vypnúť počítač,
2. reštartovať ho s použitím systémovej diskety (odolnejvoči zápisu), na ktorej je okrem základných súborov aj antivírový systém,
3. spustiť antivírový program a pokúsiť sa napadnutésúbory (časti disku) vyliečiť,
4. pokiaľ sú napadnuté súbory nevyliečiteľné, treba ichzmazať a nanovo inštalovať,
5. nezabudnúť informovať všetkých, ktorí sa mohli u násnakaziť.
Akje napadnutá niektorá zo systémových oblastí, je potrebné najprvskopírovať' dôležité (najmä údajové, trebárs aj nakazené) súbory na diskety,aby nám v prípade straty celého disku zostalo aspoň čosi. Ak používame niektorýz diskových nástrojov na komprimovanie (Double Space, Drive Space,Stacker atď.), treba zálohu vytvoriť v každom prípade.
Ak sú napadnuté systémové oblasti a vírusnemožno odstrániť, netreba ho formátovať (niekedy to pomôže, no stretávame saaj s prípadmi, že vírus formátovanie "prežije"). Vtedy je potrebné zohnať si lepší antivírovýprogram alebo lepšieho odborníka.
Mat'raz jeden antivírový program neznamená byt' zabezpečený na celý život, pretoževírusy sa neustále vyvíjajú a čo bolodobré pred mesiacom, môže byť už zajtra zastaralé. Väčšina výrobcov aktualizujesvoje programy (databáza vírusov) v priebehu trochmesiacov a pokiaľ chceme mať aspoň akú-takú istotu, že náš počítač je zdravý,snažme sa mať vždy aktuálne verzie.