Detekční programy: co je to v oblasti antivirové ochrany? Antiviry Zda detektor vždy rozpozná infikovaný program

PROGRAMY PRO DETEKCI A OCHRANU VIRŮ

Pro detekci, odstranění a ochranu před počítačovými viry bylo vyvinuto několik typů speciálních programů, které umožňují detekovat a ničit viry. Takové programy se nazývají antivirus.

Existují následující typy antivirových programů (obr. 11.11):

§ programy-detektory;

§ doktorské programy nebo fágy;

§ programy-auditoři;

§ filtrační programy;

§ Očkovací programy nebo imunizátory.

Rýže. 11.11. Typy antivirových programů

Programy-detektory vyhledá v paměti RAM a v souborech sekvenci bajtů charakteristickou pro konkrétní virus (virovou signaturu) a v případě zjištění vydá odpovídající zprávu. Nevýhodou těchto antivirových programů je, že mohou najít pouze viry, které znají vývojáři takových programů.

Lékařské programy nebo fágy, a očkovací programy virem napadené soubory nejen najít, ale také "ošetřit", tzn. odstranit tělo virového programu ze souboru a vrátit soubory do původního stavu. Na začátku své práce fágové hledají viry v RAM, ničí je a teprve potom přistupují k „léčbě“ souborů. Mezi fágy patří polyfágy, těch. doktorské programy určené k nalezení a zničení velkého množství virů. Nejznámějšími polyfágy jsou programy Aidstest, Scan, Norton AntiVirus A web lékaře.

Vzhledem k tomu, že se neustále objevují nové viry, detekční programy a lékařské programy rychle zastarávají a je nutné pravidelně aktualizovat jejich verze.

Auditorské programy patří mezi nejspolehlivější prostředky ochrany proti virům. Auditoři si pamatují počáteční stav programů, adresářů a systémových oblastí disku, když počítač není infikován virem, a pak pravidelně nebo na žádost uživatele porovnávají aktuální stav s původním. Zjištěné změny se zobrazí na obrazovce videomonitoru. Stavy se porovnávají zpravidla ihned po načtení operačního systému. Při porovnávání se kontroluje délka souboru, cyklický řídicí kód (kontrolní součet souboru), datum a čas úpravy a další parametry. Auditorské programy mají poměrně pokročilé algoritmy, detekují stealth viry a dokážou dokonce rozlišovat mezi změnami ve verzi kontrolovaného programu a změnami provedenými virem. Auditorské programy zahrnují program široce používaný v Rusku ADinf firma "Dialogue-Science".

Filtrovat programy nebo "hlídač" jsou malé rezidentní programy určené k detekci podezřelé činnosti počítače, která je charakteristická pro viry. Takové akce mohou být:



§ pokusy o opravu souborů s příponami COM a EXE;

§ změna atributů souboru;

§ přímý zápis na disk na absolutní adresu;

§ zápis do zaváděcích sektorů disku;

Když se jakýkoli program pokusí provést zadané akce, „hlídač“ odešle zprávu uživateli a nabídne zákaz nebo povolení odpovídající akce. Filtrační programy jsou velmi užitečné, protože jsou schopny detekovat virus v nejranější fázi jeho existence před rozmnožováním. Soubory a disky však „neuzdravují“. Chcete-li zničit viry, musíte použít jiné programy, jako jsou fágy. Mezi nevýhody hlídacích programů patří jejich „otravnost“ (například neustále upozorňují na jakýkoli pokus o zkopírování spustitelného souboru), ale i možné konflikty s jiným softwarem. Příkladem filtračního programu je program v bezpečí, součástí obslužného balíčku operačního systému MS DOS.

Vakcíny nebo imunizátory - Jedná se o rezidentní programy, které zabraňují infekci souborů. Vakcíny se používají, pokud neexistují žádné lékařské programy, které by tento virus „léčily“. Očkování je možné pouze proti známým virům. Vakcína upraví program nebo disk tak, že to neovlivní jejich práci a virus je bude vnímat jako infikované, a proto se nezakoření. Vakcinační programy mají v současnosti omezené využití.

Včasná detekce virem infikovaných souborů a disků, úplné zničení detekovaných virů na každém počítači pomáhá zabránit šíření virové epidemie na další počítače.

Antivirová sada JSC "Dialogue-Science"

Mezi množstvím moderních softwarových nástrojů pro boj s počítačovými viry by měla být dána přednost antivirové sadě společnosti Dialog-Science JSC, která zahrnuje čtyři softwarové produkty: polyfágy Aidstest a Doctor Web (zkráceně Dr.Web), diskový inspektor ADinf a ADinf Cure Module. Pojďme se krátce zamyslet nad tím, jak a kdy tyto antivirové programy používat.

Polyfágový program AIDStest.Aidstest je program, který dokáže detekovat a zničit více než 1300 počítačových virů, které se staly nejrozšířenějšími v Rusku. Verze Aidstest pravidelně aktualizovány a aktualizovány informacemi o nových virech.

Na zavolání Aidstest měli byste zadat příkaz:

AIDSTEST []

kde cesta je název jednotky, úplný název souboru nebo specifikace, maska ​​skupiny souborů:

* - všechny oddíly pevného disku,

** – všechny jednotky, včetně síťových jednotek a jednotek CD ROM;

možnosti - libovolná kombinace následujících kláves:

/F - opravit infikované programy a vymazat poškozené;

/G - kontrola všech souborů v řadě (nejen COM, EXE a SYS);

/S - pomalá práce při hledání poškozených virů;

/X – smaže všechny soubory s porušením virové struktury;

/Q - požádat o povolení k odstranění poškozených souborů;

/B – nenabízí zpracování další diskety.

Příklad 11.27. Aidstest pro kontrolu a "ošetření" disku V:. Zjištěné infikované programy budou opraveny. Všechny soubory na disku podléhají ověření. Pokud soubor nelze opravit, program požádá o povolení k jeho odstranění:

aidstest b: /f/g/q

Program-polyfágový doktor Web. Tento program je určen především pro boj s polymorfními viry, které se nedávno objevily ve světě počítačů. Používání Dr. Web ke kontrole disků a odstranění zjištěných virů obecně, jako je program Aidstest. V tomto případě prakticky nedochází k duplicitě ověřování, protože Aidstest A Dr. Web pracovat na různých sadách virů.

Program Dr. Web dokáže efektivně řešit složité mutantní viry, které jsou nad síly programu Aidstest. Na rozdíl od Aidstest program Dr. Web dokáže detekovat změny ve vlastním programovém kódu, efektivně detekovat soubory infikované novými, neznámými viry, pronikající do šifrovaných a zabalených souborů a také překonat „očkovací krytí“. Toho je dosaženo díky přítomnosti dostatečně výkonného heuristického analyzátoru.

V režimu heuristické analýzy program Dr. Web zkoumá soubory a systémové oblasti disků a snaží se detekovat nové nebo neznámé viry pomocí sekvencí kódu specifických pro virus. Pokud je nějaký nalezen, zobrazí se varování, že objekt může být infikován neznámým virem.

Existují tři úrovně heuristické analýzy. V režimu heuristické analýzy jsou možné falešné poplachy, tzn. detekce souborů, které nejsou infikované. Úroveň "heuristiky" znamená úroveň analýzy kódu bez přítomnosti falešných poplachů. Čím vyšší je úroveň "heuristiky", tím vyšší je procento chyb nebo falešných poplachů. Doporučují se první dvě úrovně heuristického analyzátoru.

Třetí úroveň heuristické analýzy poskytuje dodatečnou kontrolu souborů na "podezřelou" dobu jejich vytvoření. Některé viry při infikování souborů nastavují nesprávný čas vytvoření jako znamení, že tyto soubory jsou infikovány. Například u infikovaných souborů může být 62 sekund a rok vytvoření může být zvýšen o 100 let.

Dodáváno s antivirovým softwarem Dr. Web může také zahrnovat doplňkové soubory do hlavní virové databáze programu, čímž se rozšíří jeho možnosti.

Práce s programem Dr. Web k dispozici ve dvou režimech:

§ v režimu rozhraní celé obrazovky pomocí nabídek a dialogových oken;

§ v režimu ovládání z příkazového řádku.

Pro jednorázové nepravidelné použití je výhodnější první režim, ale pro pravidelné používání za účelem systematické vstupní kontroly disket je lepší použít druhý režim. Při použití druhého režimu odpovídající příkaz spuštění Dr. Web musí být zahrnuto buď v uživatelské nabídce operačního shellu Norton Commander nebo ve speciálním dávkovém souboru.

spustit příkazový řádek Dr. Web jak následuje:

DrWeb [jednotka: [cesta] ] [klávesy]

kde je disk:

X: je logický pevný disk nebo fyzická disketová jednotka, například F: nebo A:,

* - všechna logická zařízení na pevném disku,

cesta je cesta nebo maska ​​požadovaných souborů.

Nejdůležitější klíče:

/AL - diagnostika všech souborů na zadaném zařízení;

/CU[P] - "ošetření" disků a souborů, odstranění nalezených virů;

P - odstranění viru s potvrzením uživatele;

/DL - mazání souborů, se kterými nelze správně zacházet;

/NA[úroveň] - heuristická analýza souborů a hledání neznámých virů v nich, kde je úroveň

může nabývat hodnot 0, 1, 2;

/RP[název souboru] – zápis operačního protokolu do souboru (standardně do souboru REPORT.WEB);

/CL - spustí program v režimu příkazového řádku, při testování souborů a

systémové oblasti nepoužívají celoobrazovkové rozhraní;

/QU - odchod do DOSu ihned po testování;

/? - zobrazení obrazovky s krátkou nápovědou.

Pokud nejsou v příkazovém řádku Dr.Web zadány žádné přepínače, budou všechny informace pro aktuální spuštění načteny z konfiguračního souboru DRWEB.INI umístěného ve stejném adresáři jako soubor DRWEB.EXE. Konfigurační soubor se vytváří při práci s programem Dr. Web pomocí příkazu uložíte parametry potřebné pro testování.

Příklad 11.28. Spuštění antivirového programu Dr. Web ke kontrole a ošetření disku V:. Zjištěné infikované soubory budou „vyléčeny“. Všechny soubory na disku podléhají ověření. Pokud soubor nelze "vyléčit", program požádá o povolení k jeho odstranění. Pro vyhledávání virů by se měla používat heuristická analýza úrovně 1. Program by měl být spuštěn pouze v režimu příkazového řádku, po dokončení testování by měl být ukončen DOS:

DrWeb B: /AL /CUP /HA1 /QU / CL

Metody ochrany.

Definice antivirových programů a jejich klasifikace.

Bez ohledu na virus musí uživatel znát základní metody ochrany před počítačovými viry.

K ochraně před viry můžete použít:

Obecné nástroje pro zabezpečení informací, které jsou také užitečné jako pojištění fyzického poškození disků, nesprávně fungujících programů nebo chybného jednání uživatele;

Preventivní opatření ke snížení pravděpodobnost virová infekce;

Specializované programy na ochranu před viry. Existují dvě hlavní varianty obecných nástrojů pro zabezpečení informací, které poskytují:

Kopírování informací - vytváření kopií souborů a systémových oblastí disků;

Kontrola přístupu, která zabraňuje neoprávněnému použití informací, zejména ochrana před změnami programů a dat viry, nefunkčními programy a chybnými akcemi uživatele.

Pro detekci, odstranění a ochranu před počítačovými viry bylo vyvinuto několik typů speciálních programů, které umožňují detekovat a ničit viry. Takové programy se nazývají antivirové programy. Existují následující typy antivirových programů:

Detekční programy;

Lékařské programy nebo fágy;

Programoví auditoři;

Filtrační programy;

Očkovací programy nebo imunizátory.

Programy-detektory proveďte vyhledání kódu (podpisu) charakteristického pro konkrétní virus v paměti RAM a v souborech a v případě zjištění vyšle příslušnou zprávu. Nevýhodou těchto antivirových programů je, že mohou najít pouze viry, které znají vývojáři takových programů.

Lékařské programy nebo fágy, stejně jako očkovací programy, nejen najdou virem infikované soubory, ale také je „ošetří“, tj. odstraní tělo virového programu ze souboru a vrátí soubory do původního stavu. Na začátku své práce hledají fágové viry v RAM, ničí je a teprve poté přistupují k „léčbě“ souborů. Mezi fágy se rozlišují polyfágy, tedy lékařské programy určené k vyhledávání a ničení velkého množství virů. Nejznámější z nich jsou: Aidstest, Scan, Norton AntiVirus, Doctor Web.

Vzhledem k tomu, že se neustále objevují nové viry, detekční programy a programy lékařů rychle zastarávají a jsou nutné pravidelné aktualizace.

Polyfágové antiviry jsou nejběžnějšími antimalwarovými nástroji. Historicky byli první, kdo se objevil a stále drží nepochybné prvenství v této oblasti.

Práce polyfágů je založena na jednoduchém principu – vyhledávání programů a dokumentů po známých částech virového kódu (tzv. podpisy viry). Obecně je podpis takový záznam o viru, který umožňuje jednoznačně identifikovat přítomnost virového kódu v programu nebo dokumentu. Nejčastěji je podpis přímo částí viru kód nebo jeho kontrolní součet (digest).



Zpočátku fungovaly polyfágové antiviry na velmi jednoduchém principu – postupně skenovaly soubory na přítomnost virových programů. Pokud byla nalezena signatura viru, pak byl kód viru odstraněn z těla programu nebo dokumentu. Před zahájením kontroly souborů fágový program vždy zkontroluje RAM. Pokud je virus v paměti RAM, je deaktivován. To je způsobeno skutečností, že virové programy často infikují ty programy, které jsou spuštěny nebo otevřeny v okamžiku, kdy je virus v aktivní fázi (to je způsobeno snahou ušetřit na úsilí o hledání objektů infekce). Pokud tedy virus zůstane aktivní v paměti, pak celková kontrola všech spustitelných souborů povede k totální infekci systému.

V dnešní době jsou virové programy mnohem sofistikovanější. Objevily se například takzvané „stealth-viry“. Jejich práce je založena na skutečnosti, že operační systém při přístupu k periferním zařízením (včetně pevných disků) používá mechanismus přerušení. Zde je nutné udělat malou odbočku na téma „Jak funguje mechanismus přerušení“. Když dojde k přerušení, řízení se přenese na speciální program - "Obsluha přerušení". Tento program je zodpovědný za vstup a výstup informací do/z periferního zařízení. Kromě toho jsou přerušení rozdělena do úrovní interakce s periferiemi (v našem případě s pevnými a disketovými disky). Existuje úroveň operačního systému (v prostředí MS DOS - přerušení 25h), existuje základní vstupní / výstupní systémová úroveň (úroveň BIOS - přerušení 13h). Zkušení systémoví programátoři mohou také pracovat přímo s přístupem k I/O portům zařízení. Ale to je poměrně vážný a obtížný úkol. Takový víceúrovňový systém je vytvořen především proto, aby byla zachována přenositelnost aplikací. Díky takovému systému bylo například možné spouštět aplikace DOS v multitaskingových prostředích, jako jsou MS Windows nebo IBM OS / 2.

Ale v takovém systému je zpočátku také skrytá zranitelnost: ovládáním obsluhy přerušení můžete řídit tok informací z periferního zařízení k uživateli. Zejména stealth viry používají mechanismus únosu, když dojde k přerušení. Nahrazením původní obsluhy přerušení vlastním kódem řídí stealth viry čtení dat z disku.

Pokud je z disku načten infikovaný program, virus si „vykousne“ svůj vlastní kód (nejčastěji se kód doslova „nevykousne“, ale nahradí se čitelné číslo sektoru disku). Výsledkem je, že uživatel dostane „čistý“ kód ke čtení. Dokud je tedy vektor obsluhy přerušení modifikován kódem viru, je virus sám aktivní v paměti počítače a není možné jej detekovat pouhým načtením disku pomocí operačního systému. Podobný maskovací mechanismus používají boot viry, o kterých bude řeč později. V rámci boje proti stealth virům se dříve doporučovalo (a v zásadě i nyní doporučuje) alternativně nabootovat systém z diskety a teprve poté hledat a odstraňovat virové programy. V současnosti může být problematické bootování z diskety (v případě Win32 je antivirové aplikace neumějí spustit). S ohledem na výše uvedené jsou polyfágové antiviry nejúčinnější pouze v boji proti již známým virům, tedy těm, jejichž signatury a chování jsou vývojářům známé.

Pouze v tomto případě bude virus detekován se 100% přesností a odstraněn z paměti počítače a poté ze všech skenovaných souborů. Pokud je virus neznámý, pak může docela úspěšně odolávat pokusům o jeho detekci a léčbu. Proto je hlavní věcí při použití jakéhokoli polyfága co nejčastěji aktualizovat verze programů a virové databáze.

Takzvaný heuristické analyzátory. Faktem je, že existuje velké množství virů, jejichž algoritmus je prakticky zkopírován z algoritmu jiných virů.

Takové variace zpravidla vytvářejí neprofesionální programátoři, kteří se z nějakého důvodu rozhodli napsat virus. Pro řešení takových „kopií“ byly vynalezeny heuristické analyzátory. S jejich pomocí je antivirus schopen najít podobné analogy známých virů a informovat uživatele, že se zdá, že má virus. Spolehlivost heuristického analyzátoru samozřejmě není 100%, ale přesto je jeho účinnost více než 50%. Viry, které nejsou rozpoznány antivirovými detektory, mohou napsat pouze ti nejzkušenější a nejzkušenější programátoři.

Heuristický analyzátor kódu je sada rutin, které analyzují kód spustitelných souborů, paměti nebo spouštěcích sektorů za účelem detekce různých typů počítačových virů v nich. Hlavní částí heuristického analyzátoru je emulátor kódu. Emulátor kódu pracuje v režimu zobrazení, to znamená, že jeho hlavním úkolem není spustit kód, ale detekovat všechny druhy událostí v něm, tj. sadu kódu nebo volání konkrétní funkce operačního systému, zaměřené na konverze systémových dat, práce se soubory nebo detekce často používaných virových konstruktů. Zhruba řečeno, emulátor se dívá na kód programu a identifikuje akce, které tento program provádí. Pokud akce tohoto programu zapadají do určitého vzoru, je učiněn závěr o přítomnosti virového kódu v programu.

Pravděpodobnost úspěšného a falešně pozitivního výsledku je samozřejmě velmi vysoká. Při správném použití heuristického mechanismu však může uživatel nezávisle dojít ke správným závěrům. Pokud například antivirus vydá zprávu o podezřelém viru pro jeden soubor, pak je pravděpodobnost falešného poplachu velmi vysoká. Pokud se to stane na mnoha souborech (a předtím antivir v těchto souborech nic podezřelého nezjistil), pak lze s pravděpodobností blízko 100% hovořit o napadení systému virem. Nejvýkonnější heuristický analyzátor má v současnosti antivirus Dr.Web.

Použití heuristického analyzátoru, kromě všech výše uvedených, vám také umožňuje vypořádat se s generátory virů A polymorfní viry.

Klasický způsob detekce virů pomocí signatury je v tomto případě obecně neúčinný Generátory virů jsou specializovanou sadou knihoven, které uživateli umožňují snadno sestavit vlastní virus i s malými znalostmi programování Knihovny generátorů jsou napojeny na napsaný program, vloženo do potřebných Místy volání k externím procedurám - a nyní se elementární virus proměnil v poměrně složitý produkt. Nejsmutnější na tom je, že v tomto případě bude signatura viru pokaždé jiná, takže je možné dohledat virus pouze charakteristickými voláními do vnějších postupů - a to už je práce heuristického analyzátoru Polymorfní virus má ještě složitější strukturu.Tělo viru se samo mění z infekce na infekci, přičemž si zachovává svůj funkční obsah.

V nejjednodušším případě, pokud v těle viru náhodně rozptýlíte prázdné operátory, které nic nedělají (například „mov sekera, ax“ nebo „pore“), tělo virového kódu projde významnými změnami a algoritmus zůstane stejný. V tomto případě přichází na pomoc také heuristický analyzátor.

Vakcíny nebo imunizátory jsou rezidentní programy, které neumožňují infikovat soubory. Vakcíny se používají, pokud neexistují žádné lékařské programy, které by tento virus „léčily“. Očkování lze použít pouze proti známým virům. Podstata této metody spočívá v tom, že vakcína upraví program nebo disk tak, že se to v jejich práci neprojeví a virus je bude považovat za infikované, a proto se nezakoření. V současné době je použití očkovacích programů omezené.

Existují dva typy imunizátorů: imunizátory, které upozorňují na infekci, a imunizátory, které zabraňují infekci jakýmkoli virem. První se nejčastěji zapisují na konec souborů a při každém spuštění souboru se kontroluje, zda nedošlo ke změnám. Druhý typ imunizace chrání systém před napadením konkrétním typem viru.

Filtrovat programy

Filtrační programy, nazývané také rezidentní hlídací psi a monitory, jsou vždy v paměti RAM a zachycují daná přerušení, aby je zkontrolovali na podezřelou aktivitu. Jsou také schopni zablokovat „nebezpečné“ akce nebo vydat požadavek na uživatele.

Akce, které mají být řízeny, mohou být následující: úprava hlavního spouštěcího záznamu (MBR) a spouštěcích záznamů logických disků a GMD, zápis podle absolutní adresy, nízkoúrovňové formátování disku, ponechání rezidentního modulu v RAM atd. Stejně jako auditoři filtry jsou často "rušivé" a vytvářejí určité nepříjemnosti v práci uživatele.

Všechny typy antivirových programů jsou zaměřeny především na ochranu vašeho počítače před útoky virů.

Každá osoba, která instaluje antivirový program, se snaží dosáhnout určitých výsledků. Pro některé je hlavním úkolem zabránit úniku informací. Jiní dbají na integritu informací. Za třetí na prvním místě je bezproblémový provoz informačních systémů. Byly případy, kdy viry zablokovaly práci organizací a podniků. Před několika lety byl navíc zaznamenán případ, kdy počítačový virus způsobil smrt člověka - v jedné z nemocnic v Nizozemsku byla pacientovi podána smrtelná dávka morfia, protože počítač byl infikován virem a nesprávné informace.

Pro detekci, odstranění a ochranu před počítačovými viry existuje několik typů programů. Takové programy se nazývají antivirové programy. Existují následující typy antivirových programů:

1. vakcíny;

2. detektory;

3. revizoři;

4. hlídač;

5. monitory;

6. polyfágy;

7. heuristické analyzátory.

Vývojáři antivirového softwaru v poslední době nabízejí uživatelům komplexní řešení, která zahrnují většinu nebo dokonce všechny výše uvedené programy.

Vakcíny- jedná se o programy určené k zabránění napadení souborů jakýmkoliv konkrétním virem. Vakcíny se používají, pokud neexistují žádné programy, které by dokázaly tento virus neutralizovat. Očkování je možné pouze proti známým virům, které lze detekovat, ale z nějakého důvodu nelze neutralizovat. Vakcinační program upraví chráněný program nebo disk tak, že to neovlivní jeho činnost, ale zároveň skutečný virus považuje chráněný program za infikovaný, a proto nepronikne do jeho spustitelného kódu.

Působení očkovacích programů je založeno na jedné ze základních vlastností počítačových virů – znovu neinfikují již infikovaný program. Pro tyto účely viry při infikování programů využívají tzv. „černou značku“, která by umožnila odlišit již infikované programy od neinfikovaných. Může to být například nastavení času vytvoření souboru na 24 hodin 1 minutu a 62 sekund. Protože normální programy nemohou mít takový čas vytvoření, poté, co zjistil, že soubor byl vytvořen v tomto okamžiku, virus považuje za infikovaný a nepokouší se jej infikovat znovu.

Vakcinační program tedy jednoduše vytvoří "černou značku" konkrétního viru na chráněném programu, aniž by změnil jeho spustitelný kód, a virus, který takovou značku detekuje, se již nepokouší tento soubor infikovat.

"detektory" nebo "skenery"- jedná se o programy, které vyhledávají signaturu charakteristickou pro konkrétní virus v paměti RAM počítače nebo v souborech na pevném disku a po zjištění zobrazí příslušnou zprávu. Nevýhodou této třídy antivirových programů je, že mohou najít pouze viry, které jsou vývojářům známé.

"auditoři"- Jedná se o programy, které patří mezi nejspolehlivější prostředky ochrany před viry.

Při infikování počítače virus provede změny na pevném disku: připojí svůj kód k infikovanému souboru, změní systémové oblasti disku a tak dále. Na detekci takových změn je založena práce antivirových programů nazývaných „auditoři“.

Jsou postaveny na principu opačném k principu stavby skenerů. Auditoři neznají konkrétní viry od vidění, ale pamatují si informace o každém konkrétním logickém disku a změnou těchto informací dokážou spolehlivě detekovat známé i nové, neznámé viry.

Pokud je zjištěna změna informací o datech dostupných na disku, jsou uživateli poskytnuty všechny relevantní informace o změněném objektu. A on sám se musí rozhodnout, zda například tento soubor zkontroluje na přítomnost viru (pokud se jedná o spustitelný soubor) nebo bude hlášení ignorovat, pokud soubor změnil sám uživatel.

Porovnání stavu se zpravidla provádí ihned po načtení operačního systému. Při porovnávání se kontroluje délka souboru, jeho kontrolní součet, datum a čas úpravy a některé další parametry. Auditorské programy mají dostatečně vyvinuté algoritmy, které jim umožňují detekovat i viry takových tříd, jako jsou „stealth“ viry a „polymorfní“ viry, a některé mohou dokonce obnovit původní verzi kontrolovaného programu odstraněním změn provedených virem.

Výhodou auditorů je nejvyšší rychlost skenování disků (mnohokrát vyšší než rychlost skenerů) a vysoká spolehlivost detekce i neznámých virů.

"hlídač"- Jedná se o malé rezidentní programy určené k detekci podezřelých akcí, ke kterým dochází, když uživatel pracuje na počítači a jsou charakteristické pro viry. Takové akce mohou zahrnovat:

1. pokusy o opravu souborů s příponami COM, EXE, DLL atd., které jsou obvykle neměnné;

2. změna atributů souboru;

4. zápis do spouštěcích sektorů disku;

Když se jakýkoli program pokusí provést zadané akce, „hlídač“ odešle zprávu uživateli a nabídne zákaz nebo povolení odpovídající akce.

Jednou z největších nevýhod programů této třídy je, že pokud jsou nakonfigurovány špatně (a někdy i když jsou správné), doslova „polykají“ uživatele varováními, v důsledku čehož jsou obvykle vypnuty.

"Monitory"(neboli filtrovací programy) jsou antivirové programy založené na principu polyfágů a využívající databázi svých signatur k detekci virů. Antivirový monitor je umístěn rezidentně v paměti počítače a kontroluje na přítomnost virů pouze ty programy, se kterými uživatel nebo operační systém provádí jakoukoliv manipulaci.

Antivirové monitory obvykle kontrolují všechny soubory, se kterými je manipulováno následujícími způsoby:

1. spuštění programu k provedení;

2. změna atributů souboru;

3. otevření dokumentu (Microsoft Office);

4. kopírování nebo přesouvání souboru;

5. úprava souborů;

Filtrační programy jsou užitečné v tom, že pomáhají uživateli detekovat virus ve velmi rané fázi jeho existence, ještě před okamžikem, kdy se šíření viru stane epidemií.

"polyfágy"- jedná se o programy, které jsou schopny bezpečně odstranit virus a obnovit funkčnost poškozených programů.

U každého viru analyzuje jeho kód, jak jsou soubory infikovány atd. je přidělena nějaká, pouze pro něj charakteristická, sekvence bajtů. Tato sekvence se nazývá signatura daného viru. Hledání virů v nejjednodušším případě spočívá v hledání jejich signatur. Po zjištění viru v těle programu (nebo v zaváděcím sektoru, který však obsahuje i zaváděcí program) jej polyfág zneškodní. K tomu vývojáři antivirových nástrojů pečlivě studují práci každého konkrétního viru: co poškozuje, jak poškozuje, kde skrývá, co poškozuje atd.

Skenování je nejtradičnější metodou vyhledávání virů. Spočívá ve vyhledávání signatur izolovaných od dříve objevených virů. Virové databáze moderních skenerů obsahují více než 40 000 virových masek.

Nevýhodou jednoduchých skenerů je jejich neschopnost detekovat „polymorfní“ viry, které zcela mění svůj kód. Moderní polyfágy používají k vyhledávání virů jiné metody. K tomu využívají složitější vyhledávací algoritmy, včetně heuristické analýzy kontrolovaných programů. Vzhledem k tomu, že se neustále objevují nové viry, detekční programy a polyfágové programy rychle zastarávají a je nutná pravidelná aktualizace verzí databáze obsahující signatury nově objevených virů. Výsledkem je, že skenery zastarají, jakmile je vydána nová verze.

Heuristické analyzátory- programy, které se spouštějí pod jejich kontrolou, programy, které jsou kontrolovány a detekují akce charakteristické pro viry. Díky tomu dokážou heuristické analyzátory detekovat „polymorfní“ viry stejně snadno jako běžné viry, které nevyužívají maskovací mechanismus, a dokážou detekovat i viry dosud neznámé autorům antivirového programu.

K detekci těchto maskovacích virů se používají speciální metody. Patří mezi ně metoda emulace procesoru. Metoda spočívá v simulaci provádění programu procesorem a podsouvání fiktivních řídicích prostředků viru. Takto oklamaný virus pod kontrolou antivirového programu dešifruje svůj kód. Poté skener porovná dešifrovaný kód s kódy ze své skenovací databáze.

Antivirové programy se dělí na: programy detektorů, programy pro lékaře, programy auditorů, programy filtrů, programy vakcín.

· Programy-detektory. Jejich účelem je pouze detekovat virus. Detektory virů mohou detekovat spouštěcí viry v zaváděcích sektorech disket, skenovat soubory na magnetických discích a skenovat e-mailové zprávy (soubory) a detekovat signatury známých virů. Po detekci viru detektor navrhne přistoupit k úplné kontrole disků a „ošetření“ infikovaných souborů. Takové programy ve své čisté podobě jsou v současné době vzácné, ale funkce detekce virů na pozadí je dostupná téměř ve všech komplexních antivirových programech.

Existují univerzální a specializované detektory.

· Univerzální detektory při své práci využívají kontrolu neměnnosti souborů počítáním a porovnáváním s normou kontrolního součtu. Nevýhodou univerzálních detektorů je nemožnost určit příčiny poškození souborů.

· Specializované detektory provést vyhledávání známých virů podle jejich signatury (opakující se část kódu). Nevýhodou takových detektorů je, že nejsou schopny detekovat všechny známé viry.

Detektor, který dokáže detekovat více virů, se nazývá polydetektor.

Nevýhodou těchto antivirových programů je, že mohou najít pouze viry, které znají vývojáři takových programů.

· Lékařské programy (fágy) . Fág je program, který dokáže virus nejen detekovat, ale i zničit, tzn. odstranit jeho kód z infikovaných souborů a obnovit jejich funkčnost.

Phages Doctor Web (vytvořil I. Danilov) a KAV (autor E. Kaspersky) jsou velmi silné a účinné antivirové prostředky.

Detektory těchto fágů nejen skenují soubory při hledání některého ze známých virových signatur, ale implementují i ​​heuristickou metodu pro vyhledávání virů, dokážou najít a neutralizovat tzv. polymorfní viry a skenovat soubory v archivech. Fágy jsou polyfágy , těch. doktorské programy určené k nalezení a zničení velkého množství virů.

Vzhledem k tomu, že se neustále objevují nové viry, detekční programy a lékařské programy rychle zastarávají a je nutné pravidelně aktualizovat jejich verze.

· auditorské programy. Program inspektor sleduje možné způsoby šíření virových programů a infikování počítačů. Auditorské programy patří mezi nejspolehlivější prostředky ochrany před viry. Auditoři jsou založeni na nástrojích, které umožňují sledovat integritu a změny souborů a systémových oblastí magnetických disků, přenos informací počítačem na internet.

Auditorské programy mají dostatečně vyvinuté algoritmy, detekují stealth viry a dokonce dokážou rozlišit změny ve verzi kontrolovaného programu a změny provedené virem.

· Programy - filtry (hlídači). Hlídací pes je rezidentní program trvale umístěný v paměti počítače, který monitoruje činnost počítače a je určen k detekci podezřelých akcí během provozu počítače, které jsou charakteristické pro viry. Takové akce mohou být:

· Pokusy o opravu souborů s příponami COM a EXE;

· Změna atributů souboru;

· Přímý zápis na disk na absolutní adresu;

· Zápis do zaváděcích sektorů disku.

Když se jakýkoli program pokusí provést zadané akce, "hlídač" pošle uživateli zprávu s návrhem zakázat nebo povolit odpovídající akci. Filtrační programy jsou velmi užitečné, protože jsou schopny detekovat virus v nejranější fázi jeho existence před rozmnožováním. Soubory a disky však „neuzdravují“. Chcete-li zničit viry, musíte použít jiné programy, jako jsou fágy. Mezi nevýhody hlídacích programů patří jejich „otravnost“ (například neustále upozorňují na jakýkoli pokus o zkopírování spustitelného souboru), ale i možné konflikty s jiným softwarem.

· Vakcíny(imunizátory) jsou rezidentní programy, které zabraňují infekci souborů. Vakcíny se používají, pokud neexistují žádné lékařské programy, které by tento virus „léčily“. Očkování je možné pouze proti známým virům.

Vakcína upraví program nebo disk tak, že to neovlivní jejich práci a virus je bude vnímat jako infikované, a proto se nezakoření. Vakcinační programy mají v současnosti omezené využití.

Významnou nevýhodou takových programů je jejich omezená schopnost zabránit infekci velkým množstvím různých virů.