Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
НавчПос_ЗОС.doc
Скачиваний:
90
Добавлен:
16.05.2015
Размер:
7.05 Mб
Скачать

3.5.3Принципи роботиWord/Excel/Office97-вірусів

При роботі з документом Word виконує різні дії: відкриває документ, зберігає, друкує, закриває і т.д. При цьому Word шукає і виконує відпо­відні вбудовані макроси – при збереженні файла по команді File/Save ви­кликається макрос FileSave, при збереженні по команді File/SaveAs - FileSaveAs, при друці документів – FilePrint і т.д., якщо, звичайно, такі макроси визначені.

Існує також декілька"авто-макросів",що автоматично викликаютьсяпри різних умовах. Наприклад, при відкритті документа Word перевіряє його на наявність макросу AutoOpen. Якщо такий макрос присутній, то Word виконує його. При закритті документа Word виконує макрос AutoClose, при запуску Word викликається макрос AutoExec, при завер­шенні роботи–AutoExit, при створенні нового документа–AutoNew.

Схожі механізми (але з іншими іменами макросів і функцій) вико­ри­сто­вуються в Excel (Auto_Open, Auto_Close, Auto_Activate, Auto_­Deac­ti­vate) і в Office (Document_Open, Document_Close, Document_New), у яких роль авто- і вбудованих макросів виконують авто- і вбудовані функції, що є присутнім у якому-небудь макросі чи макросах, причому в одному макросі можуть бути присутнім декілька вбудованих і функцій.

Автоматично (тобто без участі користувача) виконуються також макро­си/функції, асоційовані з якою-небудь клавішею або моментом часу або датою, тобто Word/Excel викликають макрос/функцію при натисканні на яку-небудь конкретну клавішу (чи комбінацію клавіш) або при досяг­ненні якого-небудь моменту часу. У Office97 можливості по перехопленню подійдещорозширені, але принцип використовується тойсамий.

Макро-віруси, що вражають файли Word, Excel чи Office, як правило, користуються одним із трьох перерахованих вище прийомів – у вірусі або при­сутній авто-макрос (авто-функція), або перевизначений один зі стан­дарт­­них системних макросів (асоційований якимось пунктом меню), або макрос ві­ру­су викликається автоматично при натисканні на якусь клавішу чи ком­бінацію клавіш. Існують такожнапіввіруси, що не використовують цих прийомів і розмножуються, тільки коли користувач сам запускає їх.

Таким чином, якщо документ заражений, при відкритті документа Word викликає заражений автоматичний макрос AutoOpen (чи AutoClose при закритті до­кумента) і, таким чином, запускає код вірусу, якщо це не заборонено систем­ною змінною DisableAutoMacros. Якщо вірус містить макроси зі стандартними іменами, вони одержують керування під час виклику відповідного пункту меню (File/Open, File/Close, File/SaveAs). Якщо ж перевизначений який-небудь символ клавіатури, то вірус активізується тільки після натискання на відповідну клавішу.

Більшість макро-вірусів містять свої функції у вигляді стандартних макросів. Існують, однак, віруси, що використовують прийоми прихо­ву­ван­ня свого коду ізберігаютьсвій код у вигляді не-макросів. Відомо три подібних прийоми, усі вони використовують можливість макросів ство­рю­вати, редагувати і виконувати інші макроси. Як правило, подібні віруси ма­ють невеликий (іноді–поліморфний) макрос-завантажник вірусу, що викликаєвбудований редактор макросів, створює новий макрос, заповнює його основним кодом вірусу, виконує і потім, як правило, знищує (щоб сховати сліди присутності вірусу). Основний код таких вірусів присутній або в самому макросі вірусу у вигляді текстових рядків (іноді–зашифрованих), або зберігається в областізмінних документачи в області Auto-text.