Historie antivirových programů

První počítačové viry byly bráno dnešními měřítky veskrze primitivní. Jednoduché kusy programového kódu, které...


První počítačové viry byly bráno dnešními měřítky veskrze primitivní.
Jednoduché kusy programového kódu, které zpravidla neprováděly žádnou
destruktivní akci (a pokud ano, tak jen díky své vlastní neohrabanosti a
nedokonalosti), se zapisovaly do com či exe souborů nebo boot sektorů disket.
Nepoužívaly žádné maskovací techniky to ostatně ani nebylo třeba, neboť
antivirovou ochranu tehdy nikdo nebral vážně. A byla to vlastně i pravda, neboť
viry nepředstavovaly žádné vážnější nebezpečí (hovoříme o době jejich příchodu
do reálného světa o letech 1988/89).
Šíření virů i jejich detekce byly poměrně těžkopádné. Zpravidla se postupovalo
podle následujícího scénáře: Některý uživatel zpozoroval nekorektní chování
svého počítače a zašel s ním k někomu, kdo "tomu rozumí". Odtud se pak vzorek
viru dostal do rukou specializované firmy. Ta jej "rozpitvala" a zveřejnila
"lék" (detekční řetězec, který bylo možné manuálně vložit do antivirového
programu, a tak jej "seznámit" s novým škodlivým kódem). Tento detekční řetězec
poté vyšel v časopisech (ještě do poloviny devadesátých let je přinášel i
Computerworld), odkud jej převzali jednotliví uživatelé, resp. ostatní
antivirové firmy. Celá tato procedura trvala i několik měsíců.
Neuvěřitelné? A přitom to není tak dávno! Viry nevyužívaly ke svému šíření
internet a člověk, který si aktualizoval antivirový program každý měsíc, byl
považovaný za podivína a lehce paranoidního.
Úrovni prvních počítačových virů odpovídala i úroveň antivirových programů. V
úplně první fázi nešlo o komplexní software, ale o speciální čističe jakési
jednorázové utility sloužící k odhalování a odstraňování vždy jednoho
konkrétního kódu. Takovéto jednorázové utilitky vznikající a "umírající" s
konkrétním virem se objevují dosud, ale už na nich neleží hlavní tíha
antivirové ochrany dnes slouží především při virových incidentech k
odstraňování následků škod na jednotlivých počítačích (např. k odstraňování
záznamů z registrů).
Dalším krokem vpřed na poli honby za škodlivými kódy byl vznik jednoduchých
antivirových programů. Ty se principem své činnosti v mnohém podobaly
stávajícím systémům, ale neobsahovaly jejich důležitou součást rezidentní štít.
Chráněný počítač tak nebyl kontrolovaný stále (on-line), ale pouze v okamžiku,
kdy si uživatel tento úkon vyžádal (on-demand). Databáze takovýchto programů
měly v počátku jen desítky záznamů, dnes čítají mnoho desítek tisíc.
Výše zmíněný nedostatek týkající se absence rezidentního štítu byl záhy
odstraněn. Rezidentní štít je vlastně jakýsi podprogram napojený na virovou
databázi a skenovací motor (obě tyto komponenty bývaly kdysi jeho přímou
součástí, ale po krátkém čase se z kapacitních důvodů "nevešly" do paměti).
Ochrana počítače je tak zapojena neustále kdykoliv dochází k manipulaci se
soubory apod. Dlužno ovšem podotknouti, že první rezidentní štíty vyžadovaly od
uživatelů notnou dávku trpělivosti, protože zabíraly značné množství
systémových prostředků. V současné době se uvádí, že antivirové programy
"spotřebují" pět až deset (v extrémních případech až třicet) procent výkonu
počítače, což je hodnota celkem snesitelná.o

Proměny lovu počítačových virů
Počítačové viry a antivirové programy. Při troše nadsázky by se dalo říci, že
se jedná o jakýsi nekonečný příběh plný soubojů a vzájemného technologického
předhánění. Na jakýkoliv posun v oblasti počítačových virů prakticky ihned
reaguje antivirový průmysl a naopak. Uživatele a administrátory tato situace
nutí udržovat antivirové systémy ve stavu nejvyšší bdělosti.
V polovině devadesátých let došlo v oblasti vývoje počítačových virů a
antivirové ochrany k významné revoluci k příchodu operačního systému Windows
95. Mnozí rádobyodborníci prorokovali zkázu celého antivirového odvětví v
souvislosti s tímto "mimořádně odolným" systémem. Záhy se ale ukázalo, že s
antivirovou ochranou tohoto operačního systému to nebude nikterak slavné je
pravdou, že mnoho starších škodlivých kódů se v tomto prostředí nedokázalo
šířit a zacházelo na úbytě, ale jen proto, aby uvolnily místo mnohem
sofistikovanějším a nebezpečnějším virům.
A navíc se otevřelo pole působnosti pro zcela novou kategorii škodlivých kódů
pro makroviry. Až do příchodu Windows 95 platilo dogma, že dokumenty jsou
bezpečné a že nemohou obsahovat žádné škodlivé programy. (Toto tvrzení sice
platí dodnes, ale právě tento operační systém setřel z uživatelského pohledu
rozdíl mezi dokumenty a vykonatelnými programy.) Jako výpomoc uživatelům při
opakování rutinních činností byla původně zamýšlena implementace VBA jazyka do
dokumentů Wordu a Excelu. Ovšem jako první se této "vymoženosti" chytili
"pachatelé" virů, kteří záhy zjistili, že implementovaný jazyk je skutečně
nesmírně silný a umožňuje provádět prakticky cokoliv. Prví makrovirus Concept
se tak objevil takřka s příchodem "pětadevadesátek" v srpnu 1995.
Makroviry se během jednoho jediného roku staly vážným problémem osmdesát
procent všech incidentů připadlo právě na ně. Uživatelé makra neznali a
makroviry se vesele šířily. Jejich první vlna se České i Slovenské republice
naštěstí vyhnula, protože ve Windows 95 byla lokalizována i vnitřní struktura,
což se pro "západní" makroviry stalo neřešitelným problémem. Ovšem brzy se
objevily "lokální" makroviry (první z nich se jmenoval Bertík) a navíc u
pozdějších verzí Windows bylo upuštěno od lokalizace vnitřní struktury.
Příchodem makrovirů byli biti nejen uživatelé počítačů, ale také antivirové
firmy. Bylo zapotřebí kompletně přepracovat vyhledávací motory (beztak
předělané po příchodu Windows 95) a vypracovat nové algoritmy pro zcela novou
kategorii škodlivých kódů. Mnoho výrobců antivirových programů zaniklo nebo
muselo svou tíživou situaci řešit různými fúzemi.

Zrod internetu
Zatím posledním zlomem v oblasti rozvoje škodlivých kódů a ruku v ruce s tím i
antivirových technologií byl příchod internetu. Elektronická pošta se stala
největším nebezpečím z hlediska virové nákazy pro uživatele počítačů. Díky
webovým stránkám si pisatelé virů mohou vyměňovat své zkušenosti prakticky
okamžitě. Napsat virus tak přestalo být výsadou programátorů s hlubokými
znalostmi hardwaru, softwaru a síťové problematiky, dnes to zvládne i průměrný
uživatel výpočetní techniky.
S příchodem internetu se totálně změnil přístup k antivirové ochraně. Zatímco
dříve bylo bezpodmínečně nutné chránit každou jednotlivou stanici, nyní se
hlavní tíha ochrany přenesla na servery (poštovní i jiné), přes které začala
proudit data. Pro administrátory to samozřejmě bylo pohodlnější z hlediska
kontroly i aktualizace antivirových systémů. V poslední době je ale nutné se
opět vrátit i k ochraně stanic, a to zásluhou čím dál většího rozšíření
šifrované komunikace, kterou antivirové programy nejsou schopné (bez znalosti
hesla a dešifrovacího klíče) dekódovat.
Ovšem internet samozřejmě pomohl také antivirovým programům. Aktualizace je
možné stahovat ihned po jejich vydání příslušnými firmami. Je možné okamžitě
získávat podrobné informace. Antivirové firmy jsou schopné velmi rychle varovat
své klienty před novými hrozbami. V neposlední řadě je třeba zmínit možnosti
centrální správy počítačů administrátor tak už nemusí obíhat stovky či tisíce
svěřených počítačů s disketou v ruce.

Antivirové technologie
Stejně jako se vyvíjely antivirové programy, měnily se postupem doby také
technologie používané k odhalování škodlivých kódů v systému.
Skenování: První jednoduché detekční programy prováděly prosté skenování (toto
slovíčko odvozené od názvu antivirového programu Scan se stalo obecně uznávaným
termínem podobně jako třeba "xeroxování") vyhledávaly v potenciálně
nebezpečných souborech určité řetězce znaků.
Této detekční metodě se ovšem škodlivé kódy dokázaly poměrně rychle vyhnout
vznikem nové skupiny virů, které dostaly název polymorfní. Tyto uměly měnit
svou podobu nejprve pouhým vkládáním zbytečných komentářů či instrukcí (takže
každá další kopie viru měla jinou velikost a další odlišnosti), později
přehazováním příkazových řádků. Prosté skenování přestalo dostačovat, protože
nebylo možné přesně definovat proměnnou podobu viru. Analýza: Když bylo
skenování překonáno, nastoupila analýza a speciální matematické metody. Tento
způsob ochrany pak bylo možné použít i na viry se schopností šifrování či
polymorfního šifrování (kryptovací klíč se měnil v závislosti na systémovém
datu nebo jiné proměnné, takže virus měl jednak proměnnou podobu a jednak se
navenek jevil jako změť znaků). Již v dubnu 1991 se šířil virus Tequila - první
skutečně polymorfní kód, pro nějž nebylo možné napsat ani jeden vyhledávací
znak!
Metoda kontrolních součtů: Aby bylo možné odhalovat změny v napadených
souborech, byla zavedena metoda kontrolních součtů (integrity). Tato metoda
vychází z principu, že proveditelné programy jsou v podstatě pouhé statické
objekty, a proto modifikace proveditelného programu varuje před možným útokem.
Antivirový program si každý potenciálně nebezpečný soubor v systému "osahal" a
do databáze si zapsal jeho nejdůležitější charakteristiky. Později pak bylo
možné porovnat databázi s aktuálním stavem jakákoliv změna pak představovala
varovně zdvižený prst. Tato metoda byla používána jako podpůrná, nebyla schopna
identifikovat konkrétní virus, pouze upozorňovala na změny, jež mohou být
důsledkem jeho působení. Její nevýhodou bylo, že databáze kontrolních součtů
musela vzniknout na "čistém" počítači pokud byl infikovaný a virus se dále
nikterak neprojevoval.
Heuristická analýza: Heuristická analýza je metoda, která má od svého příchodu
na svět mnoho odpůrců i zastánců. Heuristické detektory k odhalování škodlivých
kódů nepotřebují žádnou databázi virů na druhé straně jsou mnohem více náchylné
k falešným poplachům. Heuristická analýza v principu funguje tak, že v programu
hledá instrukce, které by mohly odpovídat chování škodlivého kódu, nebo zkoumá
jeho vnější projevy. Identifikované příznaky statisticky posuzuje a rozhoduje,
zda se jedná o virus nebo jen o běžný software s netypickým chováním. Jestliže
zkoumaný program využívá techniky, které jsou používané viry, a nejsou
neobvyklé pro legitimní programy, pak je soubor označen jako pravděpodobně
infikovaný.
Očkování souborů: Dnes již nepoužívanou, leč zajímavou metodou antivirové
ochrany je tzv. očkování souborů. Některé prehistorické viry si napadené
soubory označovaly zápisem speciálního znaku nebo sledu znaků do hlavičky
infikovaného souboru pak stačilo do čistých souborů umístit tyto jinak neškodné
znaky a při setkání s virem nebyly napadeny. Tato metoda se již nepoužívá, a to
především proto, že viry si napadené soubory přestaly značkovat a provádějí
kontrolu své přítomnosti jiným způsobem (nebo ji nevykonávají vůbec a napadají
soubory vícenásobně).
Hardwarová ochrana: V boji proti škodlivým kódům lze použít i hardwarovou
ochranu, která je realizovaná pomocí rozšiřující karty do počítače (ta obsahuje
paměť ROM se speciálním softwarem). Tyto karty samy o sobě neprovádějí
antivirovou ochranu, ale omezují nebo úplně brání v přístupu k těm částem
disku, jež jsou pro viry důležité (bootovací oblasti, systémové adresáře
apod.). Nemají ale univerzální platnost nejsou schopné bránit např. šíření
makrovirů (toto lze řešit snad jen úplným zákazem přístupu k zápisu na disk
počítač ale v takovém případě ztrácí své opodstatnění).
Programy pro řízení přístupu: Na podobném principu pracují i softwarové
programy pro řízení přístupu. Tyto modifikují operační systém tak, že jsou
prováděny dodatečné bezpečnostní procedury. To samozřejmě má za následek
určitou zátěž při spouštění programů. Na druhé straně nevyžadují častou obnovu.
Software není specifický vůči žádné hrozbě, takže systém nemusí být obnovován,
dokud nejsou vyvinuty nové techniky virového působení.
Samozřejmě, že každá z výše uvedených metod je tu více, tu méně náchylná na
falešné poplachy tedy na situace, kdy jinak zdravý soubor či oblast jsou
označeny za pravděpodobně infikované. Vzhledem k používané technice je na
falešné poplachy (false alarms) nejvíce náchylná heuristická analýza, nejméně
prosté skenování. Pro heuristickou analýzu ale zase hovoří fakt, že dokáže
odhalit i viry skenováním nedetekovatelné.

Zítra, pozítří, popozítří...
Počítačové viry se stále vyvíjejí s tímto faktem bohužel nic nenaděláme. Jejich
pisatelé vymýšlejí stále nové techniky a technologie, útoky škodlivých kódů
přicházejí z oblastí donedávna považovaných za bezpečné. S viry je možné se
potkat nejen v klasických exe souborech, ale také v dokumentech všech možných
aplikací ("klasikou" už je Word, Excel či PowerPoint, experimentálně byla
ověřena i možnost makrovirů v dokumentech Corelu, AutoCADu, Visia, Acrobatu
apod.).
Stejně tak antivirové programy dostávají nové úkoly už se nevěnují pouze
detekování virů, ale i dalších kategorií škodlivých kódů (trojské programy,
backdoory apod.). Ty totiž vzhledem ke svému aktivnímu charakteru (schopnost
získávat či zneužívat data) představují pro uživatele minimálně stejné
nebezpečí jako destruktivní viry. Navíc dochází k bourání hranic mezi
jednotlivými kategoriemi škodlivých kódů, takže jen málokterý z nich je možné
bez zaváhání zařadit do kategorie "virus", "trojský kůň" apod.
Zcela volné pole působnosti se škodlivým kódům bezesporu otevře v dynamicky se
rozvíjející oblasti PDA. V současné době už známe několik spíše nesmělých
pokusů o vytvoření škodlivého kódu pro tyto platformy (např. Phage), ale jejich
reálné nebezpečí je prakticky nulové. PDA zařízení totiž spolu zatím
nekomunikují navzájem (a pokud ano, pak jen ve velmi úzkých komunitách). Chybí
zde tedy jakýsi "vektor šíření" možnost opakovaného infikování dalších a
dalších zařízení. Ostatně, i v současnosti známé viry pro PDA číhají na
napadených počítačích, zdali se k nim tato přenosná zařízení nepřipojí, a
teprve při předávání dat jsou schopná je infikovat.
Antivirové programy jsou nuceny především kopírovat vývoj na poli škodlivých
kódů a reagovat na požadavky i potřeby uživatelů. Přesto se snaží virovým
kalamitám aktivně předcházet třeba právě implementací heuristické analýzy. A
mnohdy se jim to úspěšně daří mnoho antivirových systémů dokázalo detekovat
kódy I love you nebo Kurnikovová ihned po jejich "příchodu na svět". Jenomže
mnozí uživatelé neměli aktualizované antivirové programy, jiní je měli špatně
nastavené a další prostě jen nedbali varování pozor příloha může být
nebezpečná! Toto potvrdilo staré pravidlo, že "největší bezpečnostní problém se
nachází mezi židlí a klávesnicí".

Autor pracuje jako IT Security konzultant ve společnosti AEC.









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.