NOV┴ KNIHA: AntivirovΘ programy, Φßst prvnφ

╚lßnek je stßle ve v²voji, n∞kterΘ Φßsti budou dopln∞ny, pop°φpad∞ upraveny.

- obsah -

Nahoru...

┌vod

Stßle stoupajφcφ mno₧stvφ poΦφtaΦov²ch vir∙ nßs nutφ brßt antivirovou ochranu jako naprostou samoz°ejmost. V dneÜnφ dob∞ je ji₧ pom∞rn∞ vzßcnΘ najφt zodpov∞dnΘho u₧ivatele, kter² by si hrozby neuv∞domoval a ponechßval poΦφtaΦ bez ochrany. Nap°φklad ekonomickΘ ztrßty, kterΘ mohou vyplynout ze ztrßty firemnφch dat, jsou vß₧nou hrozbou pro stabilitu firmy na to, aby ji bylo mo₧nΘ beztrestn∞ ignorovat. Daleko jednoduÜÜφ to majφ domßcφ u₧ivatelΘ, t∞m obvykle staΦφ nainstalovat n∞kter² z dostupn²ch antivirov²ch program∙ a cφtit se tak v relativnφm bezpeΦφ. ╪ada antivirov²ch program∙ je navφc Üφ°ena takΘ bezplatn∞ a lze si je za jist²ch podmφnek stßhnout z Internetu. Zajistit ovÜem komplexnφ antivirovou ochranu firmy dß mnohem vφce prßce a vy₧aduje i nepom∞rn∞ vφce finanΦnφch prost°edk∙. Ve firemnφ poΦφtaΦovΘ sφti je toti₧ ukryto obrovskΘ mno₧stvφ mφst, kterß mohou jejφ fungovßnφ ohrozit.

DalÜφm faktorem ovliv≥ujφcφm nßroΦnost je problematiΦnost nasazenφ antivirovΘ ochrany. Nutnostφ je odbornß dovednost a zkuÜenost pro skuteΦnou fungujφcφ ochranu. Stoupajφcφ rafinovanost Ükodliv²ch k≤d∙ vede logicky i k r∙stu slo₧itosti nasazovanΘ antivirovΘ ochrany. Zatφmco pro domßcφho u₧ivatele tato slo₧itost z∙stßvß skryta uvnit° program∙, pro administrßtory sφtφ to Φasto p°edstavuje t∞₧ce °eÜitelnΘ problΘmy spojenΘ s instalacφ a nastavenφm antivirovΘ ochrany firemnφ sφt∞. Se stßle v∞tÜφ rozÜφ°enostφ Internetu a poΦφtaΦov²ch sφtφ obecn∞, stoupß i pole p∙sobnosti Ükodliv²ch k≤d∙. P°φkladem m∙₧e b²t e-mailov² Φerv o kterΘm by i ten nejv∞tÜφ odbornφk p°ed n∞kolika lety °ekl, ₧e nic takovΘho neznß. Tyto relativn∞ novΘ hrozby kladou na antivirovou ochranu dalÜφ nßroΦnΘ po₧adavky.

StaΦilo jen n∞kolik prvnφch incident∙, aby antivirovΘ firmy zareagovaly a implementovaly do sv²ch program∙ ·Φinnou kontrolu p°φchozφch a odchozφch e-mail∙. DalÜφm p°φkladem mohou b²t makroviry napadajφcφ dokumenty. Lze tedy konstatovat, ₧e hrozeb p°ib²vß. Tv∙rci antivirov²ch program∙ jsou naÜt∞stφ "pisßlk∙m vir∙" t∞sn∞ v patßch a dokß₧ou nßm dßt do rukou ·ΦinnΘ zbran∞, kter²mi se jim m∙₧eme brßnit.

Nahoru...

Historie antivirov²ch program∙

Historie v²voje antivirov²ch program∙ je prakticky stejn∞ dlouhß jako historie vir∙. Ji₧ se vznikem prvnφho viru Brain vznikla zßrove≥ pot°eba napsat antivirov² program. Tehdy Ülo obvykle pouze o jedno·ΦelovΘ antiviry (detekujφcφ a lΘΦφcφ jeden konkrΘtnφ virus), pozd∞ji se ovÜem s p°ib²vajφcφm poΦtem vir∙ stala situace ne·nosnß a tak n∞kdy kolem roku 1988 spat°il sv∞tlo sv∞ta prvnφ antivirov² systΘm.

Nahoru...

D∞lenφ antivirov²ch program∙

AntivirovΘ programy m∙₧eme rozd∞lit do n∞kolika skupin nap°φklad nßsledovn∞ od nejednoduÜÜφch a₧ po nejslo₧it∞jÜφ:

Nahoru...

Jedno·ΦelovΘ antiviry

Jde o antivirovΘ programy, kterΘ jsou zam∞°eny na detekci, pop°φpad∞ i dezinfekci jednoho konkrΘtnφho viru. Jedno·ΦelovΘ antiviry tedy nelze rozhodn∞ pou₧φt jako plnohodnotnou antivirovou ochranu, jde pouze o jakousi "krabiΦku poslednφ zßchrany". Pokud u₧ivatel zjistφ (pop°φpad∞ ho n∞kdo upozornφ), ₧e je jeho poΦφtaΦ infikovßn urΦit²m virem, pak nenφ nic jednoduÜÜφho, ne₧ p°ivolat na pomoc prßv∞ jedno·Φelov² antivirus. V dneÜnφ dob∞ jsou jedno·ΦelovΘ antiviry velice oblφbenΘ u takto "posti₧en²ch" u₧ivatel∙. Narozdφl od plnohodnotnΘho antivirovΘho systΘmu nabφzejφ d∙kladn∞jÜφ dezinfekci (p°i dneÜnφm mno₧stvφ vir∙ nenφ mo₧nΘ, aby antivirov² systΘm dokßzal d∙kladn∞ odstranit vÜechny znßmΘ viry) a daleko vyÜÜφ rychlost. Jedno·ΦelovΘ antiviry vznikajφ obvykle pouze pro detekci/dezinfekci hojn∞ se vyskytujφcφch vir∙.

Nahoru...

Balφk jedno·Φelov²ch antivir∙

Jednß se o podobnou zßle₧itost jako v p°edchozφm p°φpad∞, pouze s rozdφlem, ₧e tento antiviru dokß₧e d∙kladn∞ najφt a odstranit v∞tÜφ poΦet obvykle hojn∞ se vyskytujφcφch vir∙.

Nahoru...

On-demand skenery

DalÜφ kategoriφ jsou plnohodnotnΘ on-demand skenery (viz. nφ₧e). V dneÜnφ dob∞ je lze obvykle stßhnout z Internetu ve form∞ freeware verze pro operaΦnφ systΘm MSDOS. Typick²m p°φkladem m∙₧e b²t "F-Prot antivirus for DOS". Tato kategorie antivirov²ch program∙ se uplatnφ p°edevÜφm p°i dezinfekci poΦφtaΦ∙, kdy nap°. operaΦnφ systΘm MS Windows nenφ schopen provozu. Lze sem za°adit i InternetovΘ on-line skenery, kterΘ n∞kte°φ v²robci antivirov²ch program∙ nabφzejφ na sv²ch strßnkßch. Obvykle jde o vÜelijakΘ aplety, kterΘ ve spojenφ s internetov²m browserem (Internet Explorer, Netscape Navigator atd.) dokß₧ou plnohodnotn∞ prohledat na v²skyt vir∙ pevn² disk u₧ivatele, bez toho, aby tento antivirus zφskal fyzicky natrvalo.

Nahoru...

AntivirovΘ systΘmy

V dneÜnφ dob∞ nejΦast∞jÜφ forma antivirov²ch program∙. Antivirov² systΘm se sklßdß s Φßstφ, kterΘ sledujφ vÜechny nejpodstatn∞jÜφ vstupnφ mφsta, kter²mi by se p°φpadnß infiltrace mohla do poΦφtaΦovΘho systΘmu proniknout. Mezi tyto vstupnφ/v²stupnφ mφsta m∙₧e pat°it nap°φklad elektronickß poÜta (Φervi Üφ°φcφ se poÜtou), www strßnky (ÜkodlivΘ skripty, download infikovan²ch soubor∙), mΘdia (cΘdΘΦka, diskety apod.). Samoz°ejmostφ antivirovΘho systΘmu tΘ₧ b²vß aktualizace produktu prost°ednictvφm Internetu. AntivirovΘ systΘmy jsou komplexnφm °eÜenφm pro stanice. Do tΘto kategorie pat°φ takovΘ programy jako avast!, AVG, Norton AntiVirus, Kaspersky AntiVirus, NOD32, McAfee Viruscan atd.

Nahoru...

Komplexnφ antivirovß °eÜenφ ("balφky")

Obvykle jde o balenφ n∞kolika produkt∙ stejnΘho v²robce, kterΘ je urΦeno pro podnikovΘ sφt∞. Balenφ je obvykle slo₧eno tak, aby jednotlivΘ produkty dokßzaly dohromady uhlφdat vÜechny vstupnφ/v²stupnφ mφsta sφt∞, kterΘ jsou pro infiltraci populßrnφ.

V balenφ se tak Φasto m∙₧e vyskytovat:

  • antivirov² systΘm pro stanice
  • antivirus pro poÜtovnφ servery
  • antivirus pro souborovΘ servery
  • antivirus pro firewally

    Zatφmco vÜechny v²Üe uvedenΘ typy antivir∙, vΦetn∞ antivirov²ch systΘm∙, lze p°i troÜe Üt∞stφ zφskat legßln∞ zadarmo, za komplexnφ antivirovß °eÜenφ se musφ snad ve vÜech p°φpadech zaplatit. Cena se m∙₧e zdßt vysokß, ale v °ad∞ p°φpad∙ je jen zlomkem Φßstky, kterou je pot°eba investovat to odstran∞nφ Ükod zp∙soben²ch °ßd∞nφm poΦφtaΦovΘ infiltrace.

    Nahoru...

    SouΦßsti antivirovΘho systΘmu pro stanice

    Jak u₧ bylo °eΦeno, antivirov² systΘm se sklßdß s Φßstφ, kterΘ sledujφ vÜechny nejpodstatn∞jÜφ vstupnφ mφsta, kter²mi by se p°φpadnß infiltrace mohla do poΦφtaΦovΘho systΘmu proniknout a jde o komplexnφ °eÜenφ pro stanice.

    Antivirov² systΘm se tak obvykle sklßdß z Φßsti:

  • vykonßvajφcφ nep°etr₧it² dohled - antivirovou kontrolu nad daty, se kter²mi u₧ivatel pracuje (tzv. on-access skener).
  • umo₧nujφcφ provΘst antivirov² test na vybranΘ oblasti. Test je vyvolßn na zßklad∞ po₧adavku u₧ivatele (on-demand) a obvykle se tak tato Φßst oznaΦuje jako on-demand skener.
  • udr₧ujφcφ antivirov² systΘm v aktußlnφ podob∞. ZajiÜ¥uje stahovßnφ aktualizacφ antivirovΘho systΘmu z Internetu.
  • vykonßvajφcφ automatickou antivirovou kontrolu p°φchozφ a odchozφ elektronickΘ poÜty.

    Mezi dalÜφ Φßsti, kterΘ ji₧ nejsou tak b∞₧nΘ m∙₧e pat°it nap°φklad:

  • plßnovaΦ akcφ (scheduler), kter² umo₧≥uje ve zvolenΘm termφnu automaticky vyvolat naplßnovanou ·lohu (nap°. antivirovou kontrolu d∙le₧it²ch dokument∙).
  • kontrola integrity dat.
  • karantΘna (quarantine).
  • monitorovacφ program.
  • antivirov² plug-in pro aplikaci Microsoft Office.
  • antivirov² spo°iΦ obrazovky (screensaver).
  • dalÜφ.

    Absence °ady uveden²ch Φßstφ v antivirovΘm systΘmu nemusφ nijak ovlivnit celkovou kvalitu antivirovΘho systΘmu. Nutn²m minimem je ovÜem on-access skener (bod 1) a Φßst udr₧ujφcφ antivirov² systΘm v aktußlnφ podob∞ (stahovßnφ aktualizacφ z Internetu - bod 3). Pokud antivirov² systΘm tyto Φßsti neobsahuje, bude bezpeΦn∞jÜφ se mu velk²m obloukem vyhnout.

    Nynφ ji₧ podrobn∞ji o jednotliv²ch Φßstech antivirovΘho systΘmu. Se°azeny jsou tak, aby text co nejvφce navazoval.

    Nahoru...

    Aktualizace (update) antivirovΘho systΘmu

    V p°edchozφm textu byla zmφn∞na pouze aktualizace antivirovΘho systΘmu prost°ednictvφm Internetu. V zaΦßtcφch se aktualizace k u₧ivateli distribuovaly prost°ednictvφm papφrovΘho vydßnφ r∙zn²ch poΦφtaΦov²ch Φasopis∙, kde se objevovaly dlouhΘ seznamy detekΦnφch °et∞zc∙ (sekvencφ), kterΘ si musel u₧ivatel sßm do svΘho antivirovΘho programu p°epsat a seznßmit ho tak s viry, kterΘ p°ed nedßvnem spat°ily sv∞tlo sv∞ta. Pozd∞ji se b∞₧n∞ aplikovala aktualizace prost°ednictvφm disket Φi cΘdΘΦek. Ty rozesφlaly antivirovΘ firmy obvykle ka₧d² m∞sφc, pop°φpad∞ jednou za Φtvrt Φi p∙l roku. V dneÜnφ dob∞ Internetu je vÜak nutnostφ aktualizovat antivirov² systΘm prßv∞ skrze tuto celosv∞tovou poΦφtaΦovou sφ¥. D∙vodem jsou viry, pop°φpad∞ Φervi, kterΘ se po celΘm sv∞t∞ dokß₧ou rozÜφ°it prost°ednictvφm sφt∞ Internet za n∞kolik hodin. ╚ßst, kterß se starß o stahovßnφ aktualizace antivirovΘho systΘmu z Internetu je tak d∙le₧itou strategickou souΦßstφ ka₧dΘho antivirovΘho systΘmu. D∙le₧itou prßci v tomto sm∞ru hrajφ i antivirovΘ spoleΦnosti, kterΘ tyto aktualizace vydßvajφ a umis¥ujφ je na svΘ servery. D∙le₧it²m parametrem je v tomto p°φpad∞ p°edevÜφm rychlost, z jakou dokß₧φ antivirovΘ firmy zareagovat na nov∞ objeven² virus. Tj. jak dlouho jim trvß, ne₧ vydajφ aktualizaci a zajistφ tak ochranu u₧ivatel∙, pou₧φvajφcφch jejich antivirov² systΘm. K ·plnΘ dokonalosti je nutnΘ jeÜt∞ zajistit, aby u₧ivatel stßhl tuto aktualizaci co mo₧nß nejd°φve od jejφho vydßnφ. Proto by m∞l b²t antivirov² systΘm vybaven automatickou aktualizacφ, kterß v co mo₧nß nejkratÜφch intervalech stahuje ze serveru v²robce nejaktußln∞jÜφ verze jejφho antivirovΘho produktu.

    Souhrnn∞ lze tedy prohlßsit, ₧e pro efektivnφ Φinnost aktualizace je nutnΘ zajistit:

  • rychlou reakci ze strany av spoleΦnosti,
  • sprßvnΘ nastavenφ Φßsti stahujφcφ aktualizace na stran∞ u₧ivatele.

    Zatφmco prvnφ bod av spoleΦnosti obvykle dodr₧ujφ, v druhΘm bod∞ to ji₧ tak r∙₧ovΘ nenφ. N∞kterΘ dneÜnφ antiviry nejsou v tomto sm∞ru optimßln∞ standardn∞ nastaveny, jde p°edevÜφm o:

  • nφzkou Φetnost pokus∙ automatickΘ aktualizace o sta₧enφ novΘ verze z Internetu.
  • vypnutou automatickou aktualizaci.

    Nφzkou Φetnostφ pokus∙ o sta₧enφ aktualizace lze v dneÜnφ dob∞ pova₧ovat nap°φklad stahovßnφ aktualizace jednou za t²den. Viry se dokß₧ou rozÜφ°it po sv∞t∞ za n∞kolik hodin a proto je nutnΘ stejn∞ Φasto aktualizovat i antivirov² systΘm !

    N∞kterΘ antivirovΘ spoleΦnosti se "chlubφ" ve sv²ch materißlech s vydßvßnφm aktualizacφ ka₧d² den (tzv. daily updates) s dodateΦn²m textem typu "jen antivirus s ka₧dodennφ aktualizacφ dokß₧e zajistit maximßlnφ ochranu p°ed viry". NezkuÜen² u₧ivatel se tφmto nechß velice snadno ovlivnit p°i rozhodovßnφ o koupi svΘho budoucφho antivirovΘho systΘmu. Praxe ji₧ n∞kolikrßt dokßzala, ₧e toto tvrzenφ je pouze velk² nesmysl a slou₧φ jen a jen k nalßkßnφ ke koupi. To ₧e antivirovß spoleΦnost vydßvß aktualizace pouze jednou za Φtrnßct dnφ, v∙bec neznamenß, ₧e b∞hem tΘto doby "spφ na vav°φnech". Pouze to sv∞dΦφ o tom, ₧e sv∞tlo sv∞ta nespat°ilo nic, co by si zaslou₧ilo pat°iΦnou pozornost (tj. nevznikl virus, Üφ°φcφ se v²znamn∞ v reßlu). Pokud se objevφ n∞co v²znamnΘho, zareagujφ velice rychle vÜechny schopnΘ antivirovΘ spoleΦnosti (i do n∞kolika minut od obdr₧enφ vzorku).

    MajitelΘ s pomalejÜφm p°ipojenφm do sφt∞ Internet (prost°ednictvφm modemu - dialup apod.) jist∞ bude zajφmat rychlost, s jakou se aktualizace ze serveru v²robce antiviru stßhne do poΦφtaΦe u₧ivatele. V dneÜnφ dob∞ se antivirovΘ spoleΦnosti sna₧φ zajistit co mo₧nß nejrychlejÜφ proces stahovßnφ aktualizace. Rychlost ovliv≥uje nepochybn∞ velikost aktualizace. Z jednou metod, jak snφ₧it velikost aktualizace je jejφ rozd∞lenφ na dv∞ nezßvislΘ Φßsti, obvykle zßle₧φ na konkrΘtnφm antivirovΘm systΘmu:

  • aktualizace pouze programovΘ Φßsti antivirovΘho systΘmu. Tato aktualizace odstra≥uje nedostatky v programovΘ Φßsti antiviru, pop°φpad∞ tuto Φßst vylepÜuje o novΘ funkce.
  • aktualizace virovΘ databßze. Tato aktualizace zajiÜ¥uje detekci nov²ch vir∙, pop°φpad∞ upravuje detekci t∞ch stßvajφcφch.

    Druh² bod je naprostou nutnostφ (vysv∞tleno v²Üe), prvnφ nenφ v n∞kter²ch p°φpadech do antiviru v∙bec zaimplementovßn. V takovΘm p°φpad∞ lze aktualizaci programovΘ Φßsti provßd∞t pouze ruΦnφ nßvÜt∞vou serveru v²robce antiviru a sta₧enφm kompletnφ novΘ instalace.

    To jak²m zp∙sobem se aktualizujφ virovΘ databßze je op∞t zßvislΘ na konkrΘtnφm antiviru. Obecn∞ existujφ dva zp∙soby:

  • "plnß" aktualizace, kdy se poka₧dΘ stahuje celß virovß databßze znovu. Logicky je tento typ aktualizace Φasov∞ vφce nßroΦn² s p°ib²vajφcφm mno₧stvφm znßm²ch vir∙. Velikost ka₧dΘ takovΘ aktualizace lze obvykle m∞°it na MB. AntivirovΘ spoleΦnosti se tak sna₧φ tento zp∙sob aktualizace ze sv²ch produkt∙ odstranit.
  • inkrementßlnφ aktualizace, kdy se stahujφ pouze ty Φßsti virovΘ databßze, kterΘ na serveru v²robce p°ibyly od poslednφ aktualizace, kterou u₧ivatel provedl. V²sledkem je, ₧e jsou stahovßny pouze ty informace, kterΘ se na stanici u₧ivatele dosud nevyskytujφ (nestahuje se vÜe opakovan∞ jako v p°edchozφm p°φpad∞). Pozitivem je zßrove≥ i rychlost a velikost aktualizacφ (obvykle maximßln∞ n∞kolik desφtek KB).

    Poznßmka: ╚ßst, starajφcφ se o stahovßnφ aktualizacφ z Internetu je v p°φpad∞ vÜech znßm²ch antivirov²ch systΘm∙ natolik "inteligentnφ", ₧e p°i ka₧dΘm pokusu stahuje pouze novΘ aktualizace, nikoliv znovu ty, kterΘ se vyskytujφ na stanici u₧ivatele.

    Nahoru...

    Virovß databßze

    V p°edchozφch odstavcφch byl nakousnut problΘm "virovß databßze". Nynφ tedy p°esn∞ji, o co se jednß.

    Virovß databßze je souhrn informacφ, na zßklad∞ kter²ch dokß₧e antivirov² skener vyhledßvat znßmΘ viry. Virovß databßze je obvykle oznaΦena datem vydßnφ. Antivirov² skener dokß₧e na zßklad∞ informacφ z virovΘ databßze detekovat v∞tÜinu znßm²ch vir∙, kterΘ vznikly p°ed datem vydßnφ virovΘ databßze. Pravidelnou aktualizacφ lze zajistit, ₧e rozdφl mezi souΦasn²m datem a datem vydßnφ bude co nejmenÜφ a budou tak detekovßny i nejnov∞jÜφ p°φr∙stky mezi viry.

    Virovß databßze obsahuje obvykle nßsledujφcφ minimum:

  • nßzev viru,
  • informace, na zßklad∞ kter²ch lze virus detekovat.

    === TATO ╚┴ST BUDE DOPLN╠NA ===

    Informace o virovΘ databßzi jsou dalÜφm mφstem, na kterΘ se sna₧φ n∞kterΘ antivirovΘ spoleΦnosti nalßkat budoucφ majitele antivirovΘho systΘmu. Jde p°edevÜφm o hodnotu, kterß v n∞kter²ch antivirech vyjad°uje mno₧stvφ detekovan²ch vir∙. NezkuÜen² u₧ivatel si m∙₧e nesprßvn∞ domyslet, ₧e Φφm vyÜÜφ Φφselnß hodnota, tφm lepÜφ antivirus. Realita m∙₧e b²t (a Φasto i je) zcela odliÜnß. OdliÜnosti mohou b²t zp∙sobeny p°edevÜφm dφky generickΘ detekci, kterß umo₧≥uje detekovat nap°φklad i celΘ "rodiny" podobn²ch vir∙ pomocφ n∞kolika mßlo sekvencφ Φi za u₧itφ jinΘ metody.

    Nahoru...

    AntivirovΘ skenery

    AntivirovΘ skenery (od slova "scanner") jsou nejstarÜφ souΦßstφ ka₧dΘho antiviru. Umo₧≥ujφ vykonßvat proces skenovßnφ (scanning), b∞hem kterΘho jsou vyhledßvßny poΦφtaΦovΘ viry. V p°edchozφ Φßsti bylo °eΦeno, ₧e skener vyhledßvß viry na zßklad∞ informacφ z virovΘ databßze. Pokud virovß databßze informace o danΘm viru neobsahuje, "obyΦejn²" skener ho nedokß₧e detekovat. Proto postupem Φasu vznikly metody detekce, kterΘ dokß₧ou odhalit i doposud neznßmΘ viry a tohoto nedostatku se tak ΦßsteΦn∞ zbavit. O t∞chto metodßch bude °eΦ pozd∞ji. Skenery lze rozd∞lit na hlavnφ dv∞ skupiny:

  • on-demand
  • on-access ("rezidentnφ Ütφt")

    On-demand skener je takov², kter² vyhledßvß viry (skenuje) a₧ po vydßnφ po₧adavku u₧ivatelem (proto on-demand). Po₧adavek tak musφ b²t vydßn manußln∞, obvykle vybrßnφm po₧adovanΘ oblasti pro test (adresß°e, pevn² disk, disketa atd.) a stiskem tlaΦφtka "start" v antivirovΘm programu. On-demand skenery se hojn∞ vyu₧φvaly p°edevÜφm v dob∞ operaΦnφho systΘmu MSDOS, v dneÜnφ dob∞ p°ijde vhod obvykle pouze v moment∞, kdy t∞₧ce infikovan² poΦφtaΦ "mele z poslednφho". On-demand skener dokß₧e v °ad∞ p°φpad∙ prohlφ₧et i zkomprimovanΘ soubory at u₧ intern∞, tak pomocφ archivaΦnφch program∙ (RAR, ZIP apod.).

    Provoz on-demand skeneru je tak zjevn∞ pro b∞₧nΘho u₧ivatele a₧ p°φliÜ komplikovanß, proto jsou dnes vÜechny antivirovΘ systΘmy vybaveny on-access skenerem. On-access skener zcela automaticky a neustßle vyhledßvß viry v datech (nejΦast∞ji v souborech), se kter²mi p°ichßzφ u₧ivatel do styku. On-access skener tak m∙₧e testovat:

  • spouÜt∞nΘ soubory / programy
  • otevφranΘ soubory
  • uklßdanΘ soubory

    Hledat viry ve spouÜt∞n²ch souborech je nutn²m minimem pro on-access skener. Z principu je z°ejmΘ, ₧e on-access skener provede antivirovou kontrolu souboru jeÜt∞ p°ed okam₧ikem, ne₧ dojde k jeho spuÜt∞nφ. Pokud by kontrolovan² soubor Φist∞ nßhodou obsahoval virus, on-access skener k danΘmu souboru zablokuje p°φstup do doby, ne₧ se u₧ivatel rozhodne, co s nφm provede (viz. nφ₧e). "Otevφrßnφ" soubor∙ je velice Üirok²m pojmem, dochßzφ k n∞mu nap°φklad i p°i p°esouvßnφ Φi kopφrovßnφ. B∞₧n² on-access skener tak dokß₧e ohlφdat p°ed spuÜt∞nφm i p°φpadnΘ infikovanΘ p°φlohy elektronickΘ poÜty. Antivirov² systΘm bez kontroly elektronickΘ poÜty tak nenφ nutnΘ ihned zatracovat, on-access skener ji na poslednφ chvφli nahradφ (tj. t∞sn∞ p°ed spuÜt∞nφm p°φlohy). Kontrolovßnφ uklßdan²ch soubor∙ ji₧ nenφ zdaleka tak b∞₧nΘ, obΦas b²vajφ testovßny pouze takovΘ soubory, kterΘ jsou uklßdßny odjinud ze sφt∞ do nasdφlen²ch disk∙ Φi adresß°∙.

    On-access skenery se zaΦaly b∞₧n∞ vyskytovat a₧ s nßstupem operaΦnφho systΘmu Microsoft Windows 95. D∙vod∙ bylo n∞kolik:

  • OperaΦnφ systΘm MSDOS byl narozdφl od on-access skener∙ a₧ p°φliÜ nenßroΦn² na mno₧stvφ operaΦnφ pam∞ti a v²kon poΦφtaΦe. P°φtomnost on-access skener∙ pod MSDOS tak ostatnφ Φinnost poΦφtaΦe citeln∞ zpomalovala a Φasto tak vznikaly ochuzenΘ verze, kterΘ dokßzaly detekovat pouze nejrozÜφ°en∞jÜφ viry.

  • OperaΦnφ sytΘm Microsoft Windows 95 byl na tehdejÜφ dobu natolik nßroΦn² na mno₧stvφ operaΦnφ pam∞ti a v²kon poΦφtaΦe, ₧e p°φtomnost on-access skeneru nehrßla v²znamnou roli. Navφc, celß °ada OS Windows je narozdφl od MSDOSu znßma tφm, ₧e "co chvφle, to jin² Φas na dosa₧enφ cφle". On-access skenery tak do tohoto prost°edφ zapadnou dokonale a v dneÜnφ dob∞ nelze p°esn∞ urΦit, za jakou prodlevu m∙₧e on-access skener a za kterou jinß aplikace b∞₧φcφ pod Windows.
  • Rychlost dneÜnφch poΦφtaΦ∙ je natolik vysokß, ₧e p°φtomnost on-access skener∙ nelze v °ad∞ p°φpad∙ v∙bec pozorovat.

    Oba typy skener∙ provßd∞jφ antivirovou kontrolu pouze na t∞ch souborech Φi systΘmov²ch oblastech, kterΘ jsou pro viry n∞jak zajφmavΘ. Bohu₧el je velice t∞₧kΘ zjistit, zda je, Φi nenφ dan² soubor pro virus zajφmav². AntivirovΘ skenery tento problΘm °eÜφ nßsledovn∞:

  • Prohlφ₧ejφ vÜechny soubory (*.*). Virus se sice nikam "neschovß", ale cel² test trvß citeln∞ dΘle a navφc m∙₧e p°inΘst i °adu faleÜn²ch poplach∙.
  • Prohlφ₧ejφ soubory podle dlouhΘho seznamu masek (*.exe, *.doc, *.xl?, *.scr atd.). Virus se m∙₧e vyhnout detekci v p°φpad∞, kdy infikuje kup°φkladu soubor typu EXE, kter² mß nestandardnφ p°φponu (tj. nemß p°φponu .EXE). Proces skenovßnφ je v tomto p°φpad∞ nejrychlejÜφ.
  • Nahlφ₧ejφ do hlaviΦek vÜech soubor∙ a na zßklad∞ rychlΘho ·sudku rozhodnou, zda bude soubor podroben detailnφmu pr∙zkumu v podanφ skeneru (tj. zda je soubor pro virus d∙le₧it² nebo ne). Obvykle je tato metoda kombinovßna s bodem Φ.2. V²sledkem je rychlost na ·rovni mezi bodem Φ.1 a Φ.2.

    Nahoru...

    Skenery uvnit°

    Na poΦßtku Θry skener∙ byla vyu₧φvßna metoda, vyhledßvajφcφ viry na zßklad∞ skupiny (sekvence, °et∞zec) instrukcφ, kterΘ byly pro dan² virus typickΘ. JednoduÜe °eΦeno, virovß databßze byla napln∞na sekvencemi znßm²ch vir∙ a skener tyto sekvence vyhledßval v jednotliv²ch souborech, pop°φpad∞ systΘmov²ch oblastech disku. Pokud byla sekvence z virovΘ databßze toto₧nß se sekvencφ v souboru, skener ho pova₧oval za infikovan², co₧ oznßmil i u₧ivateli. Pro spolehliv∞jÜφ detekci s minimem faleÜn²ch poplach∙ pou₧φvaly n∞kterΘ antivirovΘ programy vφce sekvencφ pro detekci jednoho viru. VedlejÜφm efektem je v tomto p°φpad∞ i vyÜÜφ schopnost rozpoznat novou, dosud neznßmou variantu existujφcφho viru. Rychlost stoupla od chvφle, kdy antiviry vyhledßvaly tyto sekvence pouze v mφstech souboru, kde se daly oΦekßvat (na konci, na zaΦßtku). Na druhΘ stran∞ toho vyu₧φvali i auto°i vir∙, kte°φ se sna₧ili umφstit t∞lo viru n∞kam, kde by ho antivirus nenaÜel (obvykle do st°edu souboru). V²znamnΘ snφ₧enφ mno₧stvφ faleÜn²ch poplach∙ p°inesla tzv. exaktnφ identifikace, kdy po nalezenφ sekvence jeÜt∞ skener spoΦφtß kontrolnφ souΦty konstantnφch oblastφ v t∞le viru, porovnß je s informacemi ve virovΘ databßzi a pak teprve upozornφ u₧ivatele na tΘm∞° jistou p°φtomnost viru. Exaktnφ identifikace umo₧≥uje i jemnΘ rozliÜovßnφ variant jednotliv²ch vir∙, o tomto v Φßsti v∞novanΘ pojmenovßnφ vir∙. V²b∞r spolehlivΘ sekvence b²val relativn∞ snadnou zßle₧itostφ. Auto°i vir∙ se proto pokouÜeli znesnadnit detekci sv²ch dφlek tφm, ₧e zaΦali psßt zak≤dovanΘ viry. V takovΘm p°φpad∞ je mo₧nΘ sekvenci vybrat pouze z velmi malΘ Φßsti k≤du - dekryptovacφ smyΦky. Zbytek t∞la viru je v ka₧dΘm exemplß°i jin². Opravdovß legrace ovÜem zaΦφnß a₧ s p°φchodem polymorfnφch vir∙, kterΘ umφ generovat r∙znΘ tvary dekryptovacφch smyΦek. Pro n∞kterΘ z nich je sice mo₧nΘ stvo°it sekvence (nebo n∞kolik sekvencφ), kterß virus zachytφ, ale ta u₧ obsahuje tolik variabilnφch Φßstφ, ₧e se Φasto najdou i zdravΘ programy, ve kter²ch n∞jak² fragment k≤du nebo dat takovΘ sekvenci vyhovuje. V∞tÜina polymorfnφch vir∙ ale generuje takovΘ dekryptory, ₧e nelze hledßnφ podle sekvencφ pou₧φt. Skenery se n∞jak² Φas sna₧ily o rozpoznßvßnφ polymorfnφch vir∙ pomocφ jedno·Φelov²ch funkcφ, ale to byl vlastn∞ krok zp∞t. Modernφ skenery proto obsahujφ emulßtor strojovΘho k≤du, kter²m se pokouÜφ emulovat provedenφ smyΦky, a pak mohou hledat sekvence a₧ v dekryptovanΘm t∞le viru. DneÜnφ emulßtor k≤du b²vß natolik propracovan²m systΘmem, ₧e za jeho asistence nenφ v∞tÜφm problΘmem detekovat jak²koliv, nap°φklad i ten nejslo₧it∞jÜφ polymorfnφ virus. Emulßtor k≤du znamenal i p°φchod kvalitn∞jÜφ heuristickΘ anal²zy.

    Nahoru...

    Heuristickß anal²za

    Heuristickß anal²za je dalÜφ z mnoha kouzeln²ch termφn∙, kterΘ v∞rn∞ doprovßzejφ modernφ antivirovΘ programy. V podstat∞ jde o rozbor k≤du hledajφcφ postupy pro Φinnost vir∙ typickΘ nebo n∞jak podez°elΘ. Tφmto zp∙sobem lze odhalit i dosud neznßmΘ viry. Heuristickß anal²za m∞la odjak₧iva svΘ zastßnce i odp∙rce. Zatφmco zastßnce t∞Üila mo₧nost detekce neznßm²ch vir∙, odp∙rce straÜila zv²Üenß hladina faleÜn²ch poplach∙. DneÜnφ heuristickß anal²za b²vß Φasto natolik propracovanß, ₧e v²skyt faleÜnΘho poplachu je spφÜe nßhodou. To vÜak nic nezm∞nilo na tom, ₧e odp∙rci existujφ i nadßle... StarÜφ heuristickΘ anal²zy by bylo mo₧nΘ oznaΦit za "pasivnφ". Prvnφ z nich byla pou₧ita v antivirech F-PROT a TBAV. Pasivnφ heuristika prohledßvala soubory a hledala v nich typickΘ p°φznaky (sekvence znak∙) pro virus. Pokud bylo takov²ch p°φznak∙ (Φasto oznaΦovßny jako flags) nalezeno dostateΦnΘ mno₧stvφ, byl takov² soubor pova₧ovßn za napaden². P°φznakem mohlo byt nap°. volßnφ n∞jakΘ slu₧by INT 21h apod. Nev²hodou bylo, ₧e pasivnφ heuristika nedokßzala proniknout pod "povrch" k≤dovan²ch Φi polymorfnφch vir∙ a tak slo₧it∞jÜφ nedokßzala detekovat. Neaktivnφ heuristiku mohly viry snadno oklamat. Pokud nap°φklad heuristickß anal²za vyu₧φvala sekvenci v hexadecimßlnφm tvaru: B440CD21 (vyjad°uje souhrn instrukcφ mov ah,40; int 21h), mohl virus stejnou Φinnost vyvolat jinou sekvencφ: B43FFEC4CD21 (mov ah,3f; inc ah; int 21h). V dneÜnφ dob∞ je ve vÜech znßm²ch p°φpadech vyu₧ita "aktivnφ" heuristickß anal²za. Zßkladem je emulßtor k≤du a s nφm spojenß existence virtußlnφho prost°edφ poΦφtaΦe. Emulßtor k≤du dokß₧e spustit soubor a jeho Φßst "odemulovat" podobn∞, jako by ho spustil sßm u₧ivatel. Emulßtor k≤du ovÜem veÜkerou Φinnost provßdφ ve virtußlnφm prost°edφ a skuteΦn² poΦφtaΦ u₧ivatele tak v p°φpad∞ "spuÜt∞nφ" infikovanΘho souboru nem∙₧e ohrozit. Pokud by byl zpracovßvan² soubor infikovßn, emulßtor v podstat∞ vykonß i Φinnost viru, proemuluje dek≤dovacφ smyΦku (dekryptor) a dostane se tak p°φmo na povrch viru. Emulßtor vykonß i Φinnost p°φpadnΘho viru - proemuluje dek≤dovacφ smyΦku (decryptor) a dostane se tak p°φmo k "vnit°nostem" viru, kde u₧ m∙₧e skener pokojn∞ vyhledßvat podle sekvencφ. Pokud jsou b∞hem emulace sbφrßny informace o aktivitßch programu (nap°. proces p°esm∞rovßnφ vektor∙ p°eruÜenφ...), m∙₧e b²t do akce zapojena i aktivnφ heuristickß anal²za, kterß na zßklad∞ zφskan²ch informacφ vyhodnotφ, zda se ne/jednß o virus. Jeliko₧ emulace programu probφhß pomaleji ne₧ p°i skuteΦnΘm spuÜt∞nφ programu, mß emulßtor nastaven tzv. timeout - tj. Φas (Φi poΦet instrukcφ), po kterΘm se chod emulßtoru na aktußlnφm souboru zastavφ. Tohoto ΦasovΘho limitu n∞kterΘ viry dokß₧ou vyu₧φt pro sv∙j prosp∞ch, viz. techniky vir∙ - EPO.

    Poznßmka: Heuristickß anal²za dokß₧e detekovat pouze takovΘ typy vir∙, pro kterΘ je navr₧ena (makroviry, souborovΘ viry pro Windows, viry pro DOS apod.). Pokud sv∞tlo sv∞ta spat°φ nov² typ viru (Üφ°φcφ se v jinΘm prost°edφ), je podle toho nutnΘ upravit i stßvajφcφ heuristickou anal²zu.

    Nahoru...

    FaleÜnΘ poplachy

    Ji₧ od zaΦßtku doprovßzejφ vÜechny skenery tzv. faleÜnΘ poplachy (false positives). Za faleÜn² poplach oznaΦujeme situaci, kdy antivirus detekuje virus i kdy₧ ve skuteΦnosti o ₧ßdn² nejde. Nßsleduje v²pis n∞kter²ch okolnostφ, kterΘ mohou vΘst k faleÜn²m poplach∙m a zßrove≥ k znehodnocenφ celΘho antiviru:

  • Pou₧itφ krßtk²ch sekvencφ pro detekci vir∙. P°i pou₧itφ krßtk²ch sekvencφ (obvykle dΘlky n∞kolika bajt∙) se zvyÜuje pravd∞podobnost, ₧e stejnß sekvence bude nalezena i ve zcela nezßvadn²ch oblastech (soubory, systΘmovΘ oblasti).
  • Pou₧itφ nesprßvn²ch sekvencφ pro detekci vir∙. P°φkladem m∙₧e b²t sekvence, reprezentujφcφ kus textu. Text se sice vyskytuje v t∞le viru, ale m∙₧e b²t nap°φklad i souΦßstφ zcela nezßvadnΘho dokumentu.
  • Zv²Üenφ citlivosti antiviru za ·Φelem zv²Üenφ ·sp∞Ünosti detekce. P°φliÜnΘ zv²Üenφ citlivosti antiviru m∙₧e nejen zv²Üit ·sp∞Ünost detekce, ale i mno₧stvφ faleÜn²ch poplach∙. Typick²m p°φkladem je "p°ecitliv∞lß" heuristickß anal²za.

    PokraΦovßnφ p°φÜt∞...

    Pou₧itΘ zdroje informacφ:

  • Praktickß sebeobrana proti vir∙m - Petr Odehnal, Petr ZahradnφΦek - GRADA (c) 1996
  • Jak na PoΦφtaΦovΘ viry (Chip Special) - Ing. Petr NßdenφΦek, Olga P°ikrylovß, Ing. TomßÜ P°ibyl, TomßÜ Vobruba - Vogel Publishing