Dokumenty ve smrtelné pasti

Jak se bránit makrovirům Makroviry infikují dokumenty nejvíce používaných programů MS Office a díky elektronické po...


Jak se bránit makrovirům
Makroviry infikují dokumenty nejvíce používaných programů MS Office a díky
elektronické poště se rychle šíří. Ohroženy nejsou však jen aplikace firmy
Microsoft. Jak se proti vzniklému nebezpečí bránit?
Jak se bránit proti makrovirům
První známé makroviry se objevily v roce 1995 a byly ještě napsány ve Word
Basicu, což byl předchůdce programovacího jazyka Visual Basic for Applications
(VBA), který se dnes používá v MS Office. První úspěšný virus tohoto typu,
WM.Concept, patří ještě i dnes k nejrozšířenějším a slouží jako vzor pro nové
exempláře.
Teprve mnohem později začal kolovat XM.Laroux, první virus pro Excel. Nejprve
se tento kazisvět objevoval pouze ojediněle, ale v současnosti patří v různých
variantách k nejúspěšnějším infekcím. Také ostatní produkty rodiny MS Office
mezitím získávají své makroviry; mimo jiné i takové, které dokáží přeskakovat
sem a tam mezi několika aplikacemi, jako např. O97M.Triplicate.
Hackeři ovšem dodávají i materiál pro kancelářské aplikace jiných výrobců
používajících integrovaný makrojazyk. Zmíněné druhy se však vyskytují méně
často nebo jsou to jen laboratorní viry. Takže existují hrozivé makroviry pro
Ami Pro, Word Perfect, CorelDraw a odnedávna také pro MS Project. Od té doby,
co firma Corel získala v licenci jazyk VBA od Microsoftu a použila jej pro řadu
svých produktů, nejsou si už ani uživatelé novějších programů Corelu jisti před
těmito škůdci.
Netýká se to jen Windows
Makroviry jsou v podstatě nezávislé na operačním systému. Neomezují se proto
jen na PC, která používají Windows, ale stejně dobře se šíří i na počítače
Macintosh, pokud v nich otevřeme infikovaný dokument v MS Office 98 pro Mac.
Mnoho škodlivých rutin je však koncipováno speciálně pro Windows sahají totiž
na data v souboru config.sys nebo v registrech a vyvolávají příkazy jako format
C:. Šíření viru však tato skutečnost nijak nebrání.
Až dosud se objevilo několik tisíc makrovirů; většinou jsou to buď čistě
laboratorní viry, nebo viry, které se nevyskytují ve "volné přírodě". Mezi viry
typu ITW (ITW = in the Wild) je bezesporu nejvýznamnější Melissa (W97M.
Melissa). Tento virus se sám odesílá elektronickou poštou v infikovaném
dokumentu Wordu a právě tímto způsobem v dubnu 1999 napadl a ochromil v
důsledku záplavy e-mailů celou řadu serverů elektronické pošty ve velkých
firmách v USA a v Evropě. Od té doby se objevilo zhruba dvacet variant viru
Melissa.
Rozmanitá stavebnice
Pojmem laboratorní viry označujeme takové viry, které jejich autoři zveřejnili
i na Internetu, ale které se samy nerozšiřují. Obvykle jen znázorňují, jak
dochází k určitému druhu napadení a zároveň slouží jako podklad pro nové
generace virů. Dnes již existuje celá řada stavebnic virů, které i začátečníkům
v tomto oboru usnadňují vytváření nových variant škůdců. S produkty z takových
stavebnic však nemají antivirové programy většinou žádné problémy.
Makroviry jsou srovnatelné s tzv. script viry, které se právě v poslední době
ve větší míře objevují (naposledy v podobě pohromy "I love you"). Jsou napsány
ve Visual Basic Scriptu (VBS) a nebo JScriptu, což je varianta Java Scriptu od
Microsoftu. Viry VBS přitom využívají interpretační překladač skriptů Windows
Scripting Host (WSH) dodávaný s Windows 98 a 2000, který umožňuje rozšířit
systémový jazyk a je součástí standardní instalace. Kombinace VBS/ /WSH
připomíná dávkové soubory v DOSu. WSH může být instalován i pod Windows 95 a NT
4.0, není však s nimi dodáván.
Prohlížeč Internet Explorer od Microsoftu je základnou pro tzv. HTML viry,
které sice neobsahují kód HTML, ale byly původně napsány v jazyce JScript nebo
VBS a následně vloženy do HTML dokumentů. Pokud takové webové dokumenty, např.
přílohy elektronické pošty, otevřeme prohlížečem, ten je považuje za místní
dokumenty s příslušně nižším stupněm zabezpečení a spustí v nich obsažený
skriptový virus.
Jak vlastně škodí
Abychom objasnili princip, na kterém makrovirus pracuje, podíváme se blíže na
jednoduché ho škůdce programu Word. Dokument Word obsahuje tyto vetřelce v
podobě makrosouborů, které sice většinou mají příponu doc, ale jsou vlastně
šablonou dokumentu.
Jakmile takový dokument v textovém editoru otevřete, infikuje virus globální
šablonu normal.dot a aktivuje se při otevření každého dalšího dokumentu. Tvůrci
virů přitom využívají toho, že makra s určitými předem definovanými názvy jako
AutoOpen nebo AutoClose se spustí při každém otevření některého dokumentu.
Infikované soubory již není možno uložit jako dokument, ale jen jako šablonu,
avšak přípona doc přitom může zůstat zachována proto vzniká dojem, že se stále
jedná o dokument. Pokud infikovaný soubor ve formátu Word 6/7 otevřeme ve Wordu
97 a následně jej uložíme v novém formátu, obsažená makra se budou také
konvertovat. Díky této slučitelnosti se staršími verzemi programu zůstávají
viry stále aktuální. Vznikají přitom nové varianty, které klasické antivirové
programy mohou rozeznat jen tehdy, mají-li aktualizovanou definici viru, zvanou
také vzorový datový soubor. Konvertovaná makra však již nefungují ve starších
verzích Wordu.
Žádná stoprocentní ochrana
Excel verze 5.0 byl první aplikací Office, do které byl zabudován Visual Basic
for Applications (VBA) jako makrojazyk. Makroviry pro Excel 4.0 přitom fungují
i v novějších verzích, v nichž jsou klasifikovány jako Excel Formula (XF). S
jednotným zavedením VBA do všech produktů Office (Word, Excel, Access a Power
Point) u Office 97 vznikla makra a makroviry, které se neomezují jen na jednu
aplikaci.
Pole působnosti makrovirů není zúženo jen na dokumenty vytvořené v aplikacích
hostitele. Díky velkému funkčnímu rozsahu VBA a také Word Basicu mohou být na
pevném disku vytvořeny, změněny nebo smazány libovolné soubory dat. Pomocí
Windows API (Application Programming Interface) lze také spustit systémové
funkce, ať už pro změnu systémových barev nebo například k formátování pevného
disku. Je také možné manipulovat s daty v dokumentech či odesílat infikované
dokumenty elektronickou poštou.
Protože makrokódy přijímají binární data a v případě potřeby je zapisují do
datového souboru, přenášejí i běžné souborové viry. V tomto případě hovoříme o
tzv. dropperu.
Dnešní makroviry používají řadu technik, jak se ukrýt před uživateli a
antivirovými programy. Obsahují zakódované sekvence, při každé další infekci
přestavují svůj vlastní kód, vypínají ochranné mechanismy MS Office, ukrývají
aktuální seznam maker a místo něj vykazují nějaký neškodný anebo prázdný seznam.
Neexistuje možnost, jak zcela spolehlivě zamezit exportování maker v MS Office.
Všechny mechanismy, které Microsoft vyvinul pro ochranu před makroviry, se záhy
prokázaly jako neúčinné, protože se v krátké době vynořily nové viry, které
jsou schopny tyto mechanismy obcházet anebo vypínat. Každý nový dokument, který
dorazí do počítače, bychom měli prověřit aktualizovaným antivirovým programem.
Provedeme-li tuto kontrolu přímo na internetovém rozhraní anebo až na počítači
na pracovišti, záleží především na organizační struktuře firmy. S ohledem na
výši škod, které vzniknou při infekci virem, by se zde nemělo šetřit. Nejlepší
možnou obranu před napadením slibuje dvojí ochrana dvěma rozdílnými produkty
jak na rozhraní, tak na počítači. Stoprocentní ochrana však neexistuje, pokud
se používají aplikace obsahující makra.
Pohled do budoucnosti
S narůstajícím rozšířením Windows 98 a 2000 spolu s Windows Scripting Host
nabývají viry VBS (Visual Basic Script) na významu. Celá řada těchto virů je
založena na zdrojových textech virů VBA (Visual Basic for Applications). VBS a
VBA jsou vzájemně podobné verze Basicu, které lze pouhými malými změnami kódu
navzájem zaměňovat. Ze zdrojového textu makroviru se rodí různí červi, které
Visual Basic v lehce pozměněné podobě převede na samospouštěcí datové soubory
exe. Nejnovějším příkladem je škůdce W32.Badass, který používá kód z
W97M.Melissa. Červi často nejsou považováni za viry, protože se nerozmnožují
tím způsobem, že by infikovali systém nebo jednotlivé datové soubory, ale
dostávají se do dalšího počítače prostřednictvím jiných komunikačních kanálů,
např. elektronickou poštou.
Jazyk Visual Basic a jeho verze VBA a VBS umožňují i méně zkušeným
programátorům vytvářet nové varianty z existujících zdrojových textů virů,
které pak fungují na jiné platformě než Word, např. ve Windows Scripting Host
(WSH) anebo jako soubor exe. Kromě toho se budou stále více objevovat viry,
které budou pokrývat přinejmenším dvě takové platformy. Může to být třeba
makrovirus pro Word, který vytvoří VBS virus a spustí ho, nebo to může být také
červ, který ještě navíc založí infikovaný datový soubor ve Wordu. K prvním
případům již došlo.
A konečně existuje také řada aplikací s integrovanými makrojazyky nebo skripty,
pro které zatím nejsou známé žádné viry. To se může zanedlouho v některých
případech změnit. Takové viry však pravděpodobně nebudou mít větší dopad, jak
ostatně můžeme vidět na příkladech z minulosti.
0 0203 / pen

Možné předpony makrovirů
MMakro
AMMS Access až do verze 6.0 (Access 95)
A97MMS Access 97
O97MMS Office 97 (více produktů)
PP97MMS Power Point 97
P98MMS Project 98
WMMS Word až do verze 7.0 (Word 95)
W97MMS Word 97
XMMS Excel v5.0 až v7.0 (Excel 95)
XFMS Excel Formula (Excel v4.0)
X97MMS Excel 97
VBSVisual Basic Script (WSH)
Všechna označení makrovirů jsou trojdílná a mají podobu: předpona.jméno.přípona
nebo předpona/jméno.přípona. Předpona označuje postiženou aplikaci, přípona
variantu viru (a=1, b=2, ... aa=27).

Několik triků
Dokumenty ve formátu Word 6/7 lze otevřít také v aplikaci WordPad, což je
textový program nepoužívající makra. Pro Word, Excel a Power Point nabízí
Microsoft zdarma prohlížeče, které zobrazují pouze užitečná data, ale
neprovádějí žádná makra. Tak si tedy lze nechat zobrazit obsah jakéhokoli
dokumentu bez rizika nákazy. Uživatel má možnost zachránit text z infikovaných
souborů Wordu tím způsobem, že jej uloží do dočasného souboru s čistým
prostředím.
Za bezpečný formát pro výměnu textů je považován Rich Text Format (RTF), který
podporuje většina programů. Datové soubory s příponou rtf by se přesto neměly
otevírat bez přezkoušení, protože by se mohlo jednat o přejmenované dokumenty
Wordu.

Ověřená makra
K rychlému šíření makrovirů přispívají dva faktory: všudypřítomnost programů
firmy Microsoft a čilá výměna elektronické pošty po Internetu. Příjemci
dokumentů ve Wordu a tabulek v Excelu se přitom jen zřídkakdy starají alespoň o
elementární bezpečnostní opatření při otevírání své pošty. Úspěch tohoto druhu
virů také podporuje domněnka, že viry mohou infikovat pouze spustitelné soubory
a ne dokumenty.
V produktu Office 2000 zavádí Microsoft nový model zabezpečení proti virům,
který by měl umožnit použití vlastních maker a současně zachovat ochranu proti
makrovirům. Tato koncepce počítá mj. s ověřováním pro vlastní makra. Mělo by se
tím zabránit spuštění neověřených maker. V plánu je také rozhraní Plug-in pro
antivirové produkty jiných výrobců.









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