TOP

KYBEZ

Známe zbraně svých nepřátel? Část 5: Viry a červy

Motto: „Kromě vašeho tekoucího nosu se i váš počítač může stát obětí některého hnusného viru, které poletují okolo něj. Bohužel však k jeho vyléčení bude třeba víc než jen aspirin a horký čaj.“  Eric Escobar: Anatomy of a Computer Virus, Scientific American, 2012

Známe zbraně svých nepřátel?

Část 5: Viry a červy

Otevřeně se musím přiznat, že část seriálu o nepřátelích a jejich zbraních se rozkošatěla do mnohem větší šíře, než jsem původně předpokládal. S viry, nejstaršími a pravděpodobně nerozšířenějšími způsoby útoku, a s jejich pokračovateli červy nicméně osvětu ukončím. V dalších dílech se opět začnu věnovat současnosti a aktuálním tématům.

Viry 

Počítačovými viry se obvykle rozumí škodlivé programy, které se dokáží ukrýt nejen v souborech s aplikacemi, ale i s daty. Po spuštění či aktivaci infikovaného souboru, z definice viru k tomu dochází bez vědomí uživatele, napadají a infikují další soubory. Přenesením infikovaného souboru na jiné počítače či zařízení se virus šíří. V minulosti se viry šířily zejména prostřednictvím vyměnitelných a přenosných médií, soudobé viry využívají především počítačových sítí, e-mailu, webových stránek či internetových a mobilních služeb a aplikací. Hlavním účelem většiny virů je škodit. Tytam jsou ale doby, kdy virus vykonával pouze jednu určitou činnost, například smazal pevný disk počítače. Dnešní viry ze všeho nejvíc připomínají jakousi počítačovou pátou kolonu. Kromě toho, že se v systému usídlí a dále šíří, obvykle také otevírají brány a připravují půdu pro vstup dalších škůdců. Velice často je virový útok doprovázen i nejrůznějšími aktivitami sociálního inženýrství, které se snaží věrohodně vypadajícími triky přimět uživatele ke spuštění infikovaného souboru, internetového odkazu nebo emailové přílohy, které infikované soubory obsahují. 

Počítačové viry prošly z pohledu historie výpočetní techniky poměrně dlouhým vývojem. Zatímco dřevní viry obvykle byly statické a neměnné úseky programového kódu, které tak bylo možné jednoduše identifikovat podle určité charakteristické posloupnosti dat, tzv. signatury, kterou obsahovaly. Současné viry se dokáží při každé infiltraci zčásti či zcela proměnit a jejich odhalování je velmi obtížné. 

Běžný virus obvykle zajistí, aby se při spouštění operačního systému aktivoval, uložil do operační paměti a mohl na pozadí vykonávat požadované činnosti. Takové viry se označují jako rezidentní. Jiný typ virů napadá zaváděcí programy operačních systémů, tzv. boot programy. Většinou se tak virus spustí ještě před vlastním operačním systémem, jeho detekce je mnohem složitější a jeho možnosti rozsáhlejší. Navíc nekvalifikovaný pokus o opravu zaváděcích oblastí disků nezřídka končí částečným či kompletním znepřístupněním obsahu disku. Bootovací viry byly obzvlášť v oblibě v 90. létech, kdy se ještě data hojně přenášela na disketách a dalších vyměnitelných médiích. 
Zvláštní skupinu tvoří tzv. makroviry. Jde o viry vytvořené ve tvaru tzv. makropříkazů vkládaných do běžných dokumentů. Program pro práci s dokumentem, např. Word, Excel apod., makropříkaz automaticky spustí a vykoná. Vše ostatní už probíhá podle obvyklého scénáře.

Moderní viry jsou většinou velmi sofistikované, dokáží vyhledávat další zranitelnosti cílových systémů a obratně je využívat, umějí se vyhýbat antivirům a bezpečnostním opatřením nebo je dezaktivovat a mohou přenášet další viry nebo škodlivé kódy, jimiž infikují další či jen určité soubory. Ty pak teprve vykonávají nekalé činnosti. 

Viry lze třídit podle nejrůznějších charakteristik a z mnoha úhlů pohledu. Za všechny zmiňme alespoň tři: polymorfní viry, metamorfní viry a tzv. cavity viry. Polymorfní viry využívají při infikování nového hostitelského souboru šifrování. Programový kód sice zůstává stejný, avšak do souboru uložená šifrovaná data jsou pokaždé jiná, což výrazně komplikuje identifikaci viru podle signatury. Metamorfní viry dokonce dokáží změnit i svůj vlastní programový kód, aniž by se změnila činnost, kterou virus vykonává. Cavity viry, cavity anglicky znamená dutina, se skrývají v úsecích souborů, v nichž nejsou uloženy žádné relevantní informace, takže velikost infikovaného souboru se nezmění. Takových prázdných míst je například v souborech typu .com a .exe poměrně dost. Dokážou navíc modifikovat i ochranné prvky souborů, jako je například kontrolní součet, což opět ztěžuje jejich odhalení.

Červy

Než začnu s červy, dovolím si malou jazykovou odbočku. Nehodlám brousit ani čistit jazyk český, byť k tomu mám ze své profese blízko. Česká počítačová terminologie převzala z anglosaské, tedy co si budeme namlouvat z americké, neskutečné množství nejrozmanitějších slov a názvů. Mnohé se ujaly a zdomácněly. Jako třeba klient nebo i právě zmiňovaný červ. Angličtina na rozdíl od češtiny nerozlišuje životnost rodu. V angličtině je úplně jedno, zda je klient osoba ve smokingu a cylindru, nebo jen kus programu v počítači či mobilu. Životnost se odvozuje z kontextu. Na rozdíl od angličtiny je čeština bohatý, nádherný a mnohem pružnější jazyk. Dokáže rozlišit, zda klient je člověk nebo jen program. Dokonce i gramaticky. Stačí životné skloňovat podle životného vzoru a neživotné podle neživotného. Málo srozumitelná věta „Klienti instalovaní v mobilních telefonech poskytují služby, které jejich klienti vyžadují“ se při respektování životnosti a neživotnosti rázem stane poměrně jasnou: „Klienty (tedy hrady) instalované v mobilních telefonech poskytují služby, které jejich klienti (tedy muži) vyžadují.“ Vraťme se k červům. V následujícím textu je proto červ neživotný, skloňuje se podle vzoru hrad, v prvním pádě množného čísla má na konci ypsilon a nenapadá jablka, nýbrž počítače.  

Červy se svými vlastnostmi velmi podobají virům a někteří odborníci je považují pouze za jednu z kategorií virů. Ke své reprodukci a šíření se ale nepotřebují připojovat k aplikačním nebo datovým souborům, nýbrž využívají zranitelností operačních systémů. Stačí pouze jakýmkoliv způsobem spustit program, skript nebo jiný soubor obsahující červ. To je činí obzvlášť nebezpečnými a důsledky jejich činnosti bývají nezřídka devastující. Mnohé červy dokážou navázat spojení s řídícím centrem útočníka a vykonávat činnosti na základě jeho pokynů nebo nesou další škodlivý software, například viry, které se okamžitě začnou šířit v napadeném systému nebo síti. Červy nejčastěji pronikají do systémů prostřednictvím příloh emailových zpráv, infikovaných stránek, nezabezpečených sdílených dat nebo přímo prostřednictvím internetu, využívajíce nechráněných otevřených portů a dalších zranitelností.

Nejstarším a pravděpodobně i nejznámějším červem je „I Love You“. Vytvořil jej v roce 2 000 student oboru výpočetní techniky univerzity na Filipínách. Šířil se jako email s předmětem „ILOVEYOU“ s přílohou nazvanou „LOVE-LETTER-FOR-YOU.TXT.vbs“. Přípona „vbs“, označující, že jde o skript v Microsoft Visual Basic, byla skryta, takže nic netušící příjemce zprávy se domníval, že jde o textový soubor. Po otevření přílohy červ sám sebe odeslal na všechny emailové adresy z adresáře Windows napadeného počítače a navíc učinil v napadeném systému několik „drobných“ změn. Odhaduje se, že bylo infikováno 45 milionů počítačů. Červ zahltil emailové sítě takových firem jako jsou Silicon Graphics, Daimler-Chrysler nebo americké Ministerstvo obrany včetně Pentagonu. Automobilka Ford musela emailovou síť zcela vypnout. Se škodami se samozřejmě nikdo moc nechlubil, nicméně finanční důsledky útoku se odhadují na 10 miliard USD. Do skupiny červů patří i legendární Stuxnet, který je považován za vůbec nejsofistikovanější červ, který byl dosud vytvořen. Byl objeven v roce 2010 a jeho původní úlohou bylo údajně sabotovat íránský jaderný program.

No, řekl bych, že stačilo. Nepřítele asi ještě dokonale neznáme, ale dokážeme si představit čím a jakou silou disponuje, a můžeme se vrátit k trochu záživnějším a možná i zajímavějším tématům. V příští části pouvažujeme, co je třeba chránit a kolik do bezpečnosti IT má smysl investovat.

Dag Jeger.