**Antivírus** alebo **antivírusový softvér** (nesprávne: *antivírový softvér*) je počítačový program, ktorého cieľom je identifikovať a eliminovať počítačové vírusy.ahoj

História
--------

História antivírusov sa začala písať spolu so vznikom prvých počítačových vírusov. Spočiatku šlo najmä o antivírusy jednoúčelové, ktoré sa sústredili len na jeden konkrétny vírus.

* 1988 – niekedy okolo tohto roku vznikol prvý antivírusový systém, schopný ničiť viacero vírusov. Prvým výrobcom je spoločnosť G DATA Software sídliaca v nemeckom Bochune. Prvý antivírus bol určený na počítače Atari ST.

Typy antivírusov
----------------

### Jednoúčelové antivírusy

Sú to antivírusové programy, ktoré sa zameriavajú na detekciu, príp. aj dezinfekciu jedného konkrétneho vírusu. Nedajú sa použiť ako plnohodnotná antivírusová ochrana. Používajú sa len ak vieme, že máme v počítači konkrétny vírus. Na rozdiel od plnohodnotného antivírusového systému ponúkajú dôkladnejšiu dezinfekciu a ďaleko väčšiu rýchlosť. Väčšinou vznikajú len na detekciu/dezinfekciu hojne sa vyskytujúcich vírusov.

### Balík jednoúčelových antivírusov

Ide o podobnú záležitosť ako v predošlom prípade, s tým rozdielom, že tento druh antivírusu dokáže nájsť a odstrániť väčšie množstvo obvykle hojne sa vyskytujúcich vírusov.

### On-demand skenery

Táto kategória antivírusových programov sa uplatní pri dezinfekcii počítačov, na ktorých nefunguje napr. MS Windows. Zaraďujú sa sem aj internetové on-line skenery. Obvykle sú to rôzne aplety, ktoré v spojení s internetovým prehliadačom dokážu prehľadať pevný disk používateľa. Väčšinou ide o freeware pre operačný systém MS-DOS (F-Prot antivirus for DOS).

### Antivírusové systémy

Najčastejšia forma antivírusových programov. Skladá sa z častí, ktoré sledujú všetky najpodstatnejšie vstupné miesta, ktorými by sa prípadná infiltrácia mohla do počítačového systému dostať (e-mail, www, média(disketa, CD-ROM, DVD, Flash,...)). Samozrejmosťou býva aj aktualizácia prostredníctvom internetu.

### Komplexné antivírusové riešenia ("balíky")

Obvykle sú to balenia niekoľkých produktov od rovnakého výrobcu, ktoré sú určené pre podnikové siete. Balenie je väčšinou zložené tak, aby jednotlivé produkty dokázali dohromady kontrolovať vstupné/výstupné miesta siete, ktoré sú pre infiltráciu populárne.
Často sa v balení vyskytuje:

* Antivírusový systém pre stanice
* Antivírus pre poštové servery – antispam
* Antivírus pre súborové servery
* Firewall
* Antispyware

Takmer všetky hore uvedené typy antivírusov je možné dostať legálne aj zadarmo, za komplexné antivírusové riešenia sa musí zaplatiť.

Súčasti antivírusového systému pre stanice
------------------------------------------

### Bežné súčasti

* vykonávajúcej nepretržitú kontrolu – antivírusovú kontrolu na dátami, s ktorými používateľ pracuje (on-access skener)
* umožňujúcej urobiť antivírusový test na vybrané oblasti – test je vyvolaný na základe požiadavku používateľa (on-demand) a obvykle sa tak táto časť označuje ako on-demand skener
* udržujúcej antivírusový systém v aktuálnej podobe – zaisťuje sťahovanie aktualizácií z internetu
* vykonávajúcej automatickú kontrolu prijatej a odoslanej elektronickej pošty

### Menej bežné súčasti

* Plánovač akcií (scheduler), ktorý umožňuje v zvolenom termíne automaticky vykonať naplánovanú úlohu
* Kontrola integrity dát
* Karanténa (quarantine)
* Monitorovací program
* Antivírusový plug-in pre aplikáciu MS Office
* Antivírusový šetrič obrazovky (screensaver)

ďalšie…

Aktualizácia antivírusového systému
-----------------------------------

V začiatkoch sa aktualizácie distribuovali pomocou papierového vydania časopisov, kde sa objavovali dlhé zoznamy detekčných reťazcov (sekvencií), ktoré si musel užívateľ sám prepísať do svojho antivírusového programu. Neskôr sa aplikovala aktualizácia prostredníctvom diskiet a CD. Tie rozosielali antivírusové firmy raz za mesiac, príp. raz za štvrť alebo pol roka. V dnešnej dobe sa táto aktualizácia vykonáva prostredníctvom internetu. 

Dôležitým parametrom je predovšetkým rýchlosť, s akou dokážu antivírusové firmy zareagovať na novo objavený problém.

Pre efektívnu činnosť aktualizácie je nutné zaistiť:

* Rýchlu reakciu zo strany spoločnosti
* Správne nastavenie časti sťahujúcej aktualizácie na strane používateľa.

Rýchlosť sťahovania aktualizácií ovplyvňuje najmä jej veľkosť. Jedna z metód, ako znížiť veľkosť aktualizácie je jej rozdelenie na dve nezávislé časti.

To akým spôsobom sa aktualizujú vírusové databázy je závislé na konkrétnom type antivírusu. Všeobecne existujú dva spôsoby:

* Plná aktualizácia – vždy sa sťahuje celá vírusová databáza znova. Veľkosť takejto aktualizácie sa pohybuje rádovo v megabajtoch.
* Inkrementálna aktualizácia – sťahujú sa len tie časti vírusovej databázy, ktoré na serveri výrobcu pribudli od poslednej aktualizácie, ktorú používateľ urobil. Výsledkom je, že sú sťahované len tie informácie, ktoré sa na stanici používateľa dosiaľ nevyskytujú (nesťahuje sa všetko opakovane ako v predchádzajúcom prípade). Pozitívom je zároveň aj rýchlosť a veľkosť aktualizácií (obvykle maximálne niekoľko desiatok KB).

Vírusová databáza
-----------------

Vírusová databáza je súhrn informácií, na základe ktorých dokáže antivírusový skener vyhľadávať známe vírusy. Vírusová databáza je obvykle označená dátumom vydania. Vďaka nej dokáže antivírusový skener detegovať väčšinu známych vírusov, ktoré vznikli pred dátumom vydania vírusovej databázy. Pravidelnou aktualizáciou je možné zaistiť, že rozdiel medzi súčasným dátumom a dátumom vydania bude čo najmenší a budú tak detegované aj najnovšie prírastky medzi vírusmi. 
Vírusová databáza obsahuje obvykle nasledujúce minimum:

* Názov vírusu
* Informácie, na základe ktorých je možné vírus detegovať

Antivírusové skenery
--------------------

Sú najstaršou súčasťou každého antivírusu. Umožňujú vykonávať proces skenovania, počas ktorého sú vyhľadávané počítačové vírusy. V dnešnej dobe existujú skenery, ktoré dokážu rozpoznať vírusy napriek tomu, že nie sú vo vírusovej databáze. A to vďaka špeciálnym metódam detekcie.

### Typy skenerov

* On-demand skener – je taký, ktorý vyhľadáva vírusy(skenuje) až po vydaní požiadavku používateľom. Tieto skenery sa používali najmä v dobe operačného systému MS-DOS. On-demand skener dokáže prehľadávať aj skomprimované súbory či už interne, alebo pomocou archivačných programov (RAR, ZIP,...).
* On-access skener – úplne automaticky a neustále vyhľadáva vírusy v dátach (najčastejšie v súboroch), s ktorými prichádza používateľ do styku.

On-access tak môže skenovať:

* + spustené súbory/programy
	+ otvárané súbory
	+ ukladané súbory

Hľadať vírusy v spustených súboroch je nutným minimom pre on-access skener. Z princípu je jasné, že skener spraví antivírusovú kontrolu súboru ešte pred okamihom, než príde k jeho spusteniu. Ak by súbor obsahoval vírus, skener k danému súboru zablokuje prístup do doby, než sa používateľ rozhodne, čo s ním spraví. „Otváranie" súborov je veľmi širokým pojmom, dochádza k nemu napríklad aj pri presúvaní či kopírovaní. Bežný on-access skener tak dokáže kontrolovať aj e-mailové prílohy. 
Oba typy skenerov robia antivírusovú kontrolu len na tých súboroch či systémových oblastiach, ktoré sú pre vírusy nejako zaujímavé. Bohužiaľ je veľmi ťažké zistiť, či je, či nie je daný súbor pre vírus zaujímavý. Antivírusové skenery tento problém riešia nasledovne:

* (1)Prezerajú všetky súbory (\*.\*). Vírus sa síce nikam „neschová", ale celý test trvá citeľne dlhšie a navyše môže priniesť aj veľa falošných poplachov.
* (2)Prezerajú súbory podľa dlhého zoznamu masiek (\*.EXE, \*.doc, \*.xls, \*.scr...). Vírus sa môže vyhnúť detekcii v prípade, že infikuje napríklad súbor typu \*.EXE, ktorý má neštandardnú príponu (t. j. nemá príponu .EXE). Proces skenovania je v tomto prípade najrýchlejší.
* (3)Pozerajú do hlavičiek všetkých súborov a na základe rýchleho úsudku rozhodnú, či bude súbor podrobený detailnému prieskumu v podaní skeneru (t. j. či je súbor pre vírus dôležitý alebo nie). Obvykle je táto metóda kombinovaná s bodom č.2. Výsledkom je rýchlosť na úrovni medzi bodom č.1 a č.2.

Heuristická analýza
-------------------

Heuristická analýza je rozbor kódu hľadajúc postupy pre činnosť typickú pre vírusy.Takto možno odhaliť aj dosiaľ neznáme vírusy. Zatiaľ čo zástancov tejto analýzy tešila možnosť detekcie neznámych vírusov, odporcovia sa obávali zvýšeného počtu falošných poplachov. Dnešná heuristická analýza je natoľko prepracovaná, že výskyt falošného poplachu je skôr náhodou. 
Heuristika môže byť:

* Pasívna – prehľadávala súbory a hľadala v nich typické príznaky (sekvencie znakov) pre vírusy. Nevýhodou bolo, že nedokázala preniknúť po „povrch" kódovaných či polymorfných vírusov a tak zložitejšie nedokázala detegovať.
* Aktívna – jej základom je emulátor kódu a s ním spojená existencia virtuálneho prostredia počítača. Dokáže spustiť súbor a jeho časť „odemulovať" podobne ako by to spravil používateľ. Emulátor kódu však všetku činnosť prevádza vo virtuálnom prostredí a skutočný počítač užívateľa tak v prípade „spustenia" infikovaného súboru nemôže ohroziť. Pokiaľ by bol spracovávaný súbor infikovaný, emulátor v podstate vykoná aj činnosť vírusu, preemuluje dekódovaciu slučku (dekryptor) a dostane sa tak priamo na povrch vírusu. Emulátor vykoná aj činnosť prípadného vírusu – preemuluje dekódovaciu slučku (dekryptor) a dostane sa tak priamo k „vnútornostiam" vírusu, kde už môže skener pokojne vyhľadávať podľa sekvencií. Pokiaľ sú počas emulácie zbierané informácie o aktivitách programu, môže byť do akcie zapojená aj aktívna heuristická analýza, ktorá na základe získaných informácií vyhodnotí, či nejde/ide o vírus. Nakoľko emulácie programu prebieha pomalšie než pri skutočnom spustený programu, má emulátor nastavený tzv. timeout – t. j. čas (či počet inštrukcií), po ktorom sa chod emulátoru na aktuálnom súbore zastaví. Tento časový limit niektoré vírusy dokážu využiť vo svoj prospech, viz. techniky vírusov – EPO.

Falošné poplachy
----------------

Za falošný poplach označujeme situáciu, keď antivírus deteguje vírus aj keď v skutočnosti o žiadny nejde. Okolnosti, ktoré môžu viesť k falošným poplachom a zároveň k znehodnoteniu celého antivírusu:

* Použitie krátkych sekvencií na detekciu vírusov. Pri použití krátkych sekvencií (dĺžky niekoľko bajtov) sa zvyšuje pravdepodobnosť, že rovnaká sekvencia bude nájdená aj v celkom vyhovujúcich oblastiach.
* Použitie nesprávnych sekvencií na detekciu vírusov.
* Zvýšenie citlivosti antivírusu za účelom zvýšenia úspešnosti detekcie môže mať aj opačný efekt. Príkladom je „precitlivená" heuristická analýza.

### Príklady antivírusových systémov

Medzi známe antivírusové programy patria ESET, Avast!, AVG, Norton, Kaspersky, McAfee, Panda, Ad-Aware, Dr.Web, Avira, Comodo Trendmicro, BitDefender, Microsoft Security Essentials, G Data a iné.

Pozri aj
--------

* Počítačový vírus
* Počítačový červ
* Trójsky kôň
* Spyware
* Malware
* Hoax
* Spam

Externé odkazy
--------------

* www.viry.cz