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

Вирусы семейства 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 и вставляет в текущую таблицу картинку и текст

В частности, о тех представителях этого многочисленного семейства, которые поражают документы Word .

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

1) невозможность сохранения заражённого документа Word в другой формат (по команде Сохранить как …);

2) невозможность записи документа в другой каталог или на другой диск командой Сохранить как …;

3) невозможность сохранения внесённых изменений в документ (команда Сохранить );

4) недоступность вкладки Уровень безопасности (меню Сервис – Макрос – Безопасность …);

5) так как многие вирусы написаны с ошибками (или некорректно работают в различных версиях пакета Microsoft Office ), то возможно появление соответствующих сообщений с кодом ошибки;

6) другие «странности» в поведении документов Word ;

7) зачастую можно обнаружить визуально. Дело в том, что большинство вирусописателей отличаются тщеславием: в свойствах файла Word (окно Свойства вызывается по щелчку правой кнопки – выбрать из Свойства ) на вкладке Сводка заполняют поля ввода (Название , Тема , Автор , Категория , Ключевые слова и

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

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

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

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

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

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

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

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

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

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

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

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

Файловые вирусы — вирусы поражающие исполняемые файлы, написанные в различных форматах. Соответственно в зависимости от формата, в котором написана программа это будут 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-таблице), которое может привести к разрушению файловой системы в целом;
— имитация сбоев аппаратных средств;
— создание звуковых и визуальных эффектов, включая, например, отображение сообщений, вводящих оператора в заблуждение или затрудняющих его работу;
— инициирование ошибок в программах пользователей или операционной системе.

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

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

Как происходит заражение ПК

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

То есть, при использовании графического редактора макровирусы заражают все, что связано с ним. Более того, некоторые активничают все время, пока текстовый или графический редактор работают, или вовсе до полного выключения ПК.

В чем заключается принцип их работы

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

Заражение осуществляется в следующих случаях:

  1. При наличии авто макроса в вирусе (проводится в автоматическом режиме при выключении или запуске программы).
  2. Вирус обладает основным системным макросом (зачастую связан с пунктами меню).
  3. Активизируется автоматически в случае нажатия на конкретные клавиши или комбинации.
  4. Размножается лишь при его запуске.

Такие вирусы поражают обычно все файлы, созданные и привязанные к программам на макроязыке.

Какой вред они приносят

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

Более сильные утилиты вообще могут форматировать винчестеры и контролировать работу всего ПК. Именно поэтому мнение, что подобного рода компьютерные вирусы несут в себе опасность исключительно для графических и текстовых редакторов, ошибочное. Ведь такие утилиты как Word и Excel работают во взаимодействии с целым рядом других, которые в этом случае также подвергаются опасности.

Распознаем зараженный файл

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

Опасность можно определить по следующим признакам:

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

Способы удаления

Обнаружив подозрительный файл или документ, первым делом просканируйте его антивирусом. При обнаружении угрозы антивирусы попробуют вылечить его, а в случае неудачи полностью закроют доступ к нему.

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

Если защититься таким образом не получается, ваш антивирус ничего не может сделать, а аварийного диска нет, то следует попробовать метод «ручного» лечения:


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

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


Таким образом, вы обезопасите себя, и макровирусы никогда не проникнут в соответствующие файлы.

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

Архитектура макровируса

В начале четкое определение: макровирус - вирус, способный размножаться и храниться сам по себе (без вмешательства юзверя), использующий макро-язык. Из определения следует, что макровирусы могут жить не только в документах Word"а, а в ЛЮБОМ офисном документе, в котором реализованы такие функции макро-языка, как копирование макросов и их сохранение. Вот почти полный список приложений, подверженных угрозе макрозаразы: Word (любой), Excel, AmiPro (это такой текстовый редактор), MS Visio, PowerPoint, MS Access и 1С. Как видишь число таких прог достаточно велико, а в Интернете часто можно встретить статьи, дающие определение макровирусам так:
"вирусы, заражающие файлы-документы в формате
WinWord". Недотепы какие-то писали!

Теперь давай поговорим о структуре макровируса под Word (как наиболее актуального). Итак. Существует такое понятие, как стандартные макросы. К ним относятся: AutoOpen, AutoClose, AutoExec, AutoExit, AutoNew. Приставка auto- означает, что действие совершается автоматически, без вмешательства пользователя (хотя это и зависит от установленного уровня безопасности, но об этом мы поговорим далее). То есть, добавив инфекцию в макрос с таким именем, можно его "оживить". Также для каждого стандартного действия существует свой стандартный макрос. Например, для печати FilePrint, для сохранения FileSave, для сохранения в другом формате или с другим именем FileSaveAs. И эти макросы могут быть инфицированы.

Конечная цель любого макрозасранца - поиметь normal.dot (в нем хранятся все настройки шаблонов). Тогда все открываемые файлы будут заражены и твоим текстам придет каюк.
Word предоставляет несколько уровней безопасности: высокий, средний и низкий. Также он содержит встроенный механизм защиты от макроинфекции. Это по замыслу разработчиков должно действовать на макровирусы, как серебро на нечисть. Оно-то, может быть, и действует, если бы не одно "но". Именно из-за него я и не буду углубляться в различия между уровнями безопасности и во внутренние настройки Word"а. А смысл в том, что ВСЕ внутренние параметры security можно запросто МЕНЯТЬ через реестр. Благо макро-языки позволяют это
делать. Конкретный пути (где что искать) я прописывать не буду, дабы не соблазнять твои шаловливые ручки. Особо одаренные могут связаться со мной по мылу - сообщу, но "только с целью ознакомления с данной уязвимости программного обеспечения, для их ликвидации" 🙂

Если подвести черту, то структура макровируса имеет следующий вид:

1. Переопределяем какой-либо стандартный или автоматический полезный макрос так, чтобы он отключал защиту и исправлял уровень безопасности.
2. Добавляем туда заразу.
3. Проверяем, чтобы этот макрос был востребован, а зараза размножалась и обязательно прописывалась в Normal.dot

Все достаточно просто - именно из-за этого так много различных вариаций макротварей.

Убью голыми руками!

Существует несколько народных способов уничтожения макрогадов в уже зараженных Word-документах. Вот они почти все:

1. Создаешь свой собственный макрос с таким кодом:
Sub Main
DisableAutoMacros
End Sub
Сохраняешь это чудо под именем AutoExec и таким образом становишься неуязвим для автомакросов.

2. Манипулируешь с уровнями защиты - тогда Word при исполнении макросов будет спрашивать разрешения.

3. Не использовать формат doc. Ведь все можно поместить и в RTF - те же шрифты, оформление, таблицы, графику... А RTF не содержит макросов по определению. Все было бы идеально, но есть минус: при сохранении инфы в rtf-формате все рисунки автоконвертируются в bmp-формат. Этот графический формат весит столько, что врагу не пожелаешь. В результате, даже после архивации, проигрыш в размерах получившегося файла может привести к тому, что он просто не поместится на дискету (зависит, конечно, от количества картинок). Правда, если графики нет, то rtf - идеален.

Тяжелая артиллерия

Пора набраться смелости и убить макротварей раз и навсегда. Задача не так сложна для исполнения: нужен неинфицированный комп и последний дистрибутив Антивируса Касперского. Несколько лет назад Лаборатория Касперского разработала модуль под названием Office Guard. О нем то мы и поговорим.

Обычно Office Guard не входит в состав пиратских дистрибутивов, однако при известной сноровке и его можно выискать. Что же это за штука? Вот что говорят о нем создатели:
"Office Guard представляет собой принципиально новую технологию для защиты от макровирусов и макротроянцев. В Office Guard, который рассчитан на опытных пользователей, реализован революционный подход к обеспечению антивирусной безопасности, базирующийся на принципах поведенческого блокиратора. В отличие от применяемых "классических" схем защиты против вирусов, построенных на базе обычного контекстного поиска, Office Guard решает проблему комплексно, исключая саму возможность функционирования на защищенном компьютере макровирусов. Office Guard различает макровирусы не по внешним признакам (наличие той или иной последовательности символов), а по их поведению, которое определяется возможностями языка программирования VBA (Visual Basic for
Application)."

Самая классная фича заключается в том, что его не надо обновлять! Однако его использование таит в себе немало подводных камней:

1. Устанавливать его следует на неинфицированную машину.
2. Если у тебя стоял Word, потом ты установил Office Guard, а потом установил Excel, то под защитой окажется только Word. Выводы делай сам.
3. Office Guard ловит вирусы, но НЕ ЛЕЧИТ.

Чтобы решить последнюю проблему, как раз и нужен антивирусный сканер. Таким образом, AVP-сканер + Office Guard дают полную безопасность от макровирусов. Если же ты хочешь лечить документы, то время от времени придется скачивать обновление для
AVP.

Однако будем справедливы - нельзя перетягивать одеяло в сторону Лаборатории Касперского, а то пойдут разговоры типа:
"И сколько тебе заплатили за раскрутку продукта?"

Любой обновленный антивирус дает хорошую, почти 100%,
защиту от макрогадов. Просто каждый из них использует разные технологии для этого. Например, DrWeb использует поиск по сигнатурам и эвристический анализатор,
о чем мы и поговорили с его создателями:

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

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

В состав АВП входит отдельный модуль против макровирусов в MS Office. Разработчики утверждают, что в основе этого модуля лежит поведенческий блокиратор, анализирующий действия программы-пациента. В результате этот продукт дает 100% гарантию от макровирусов до того момента, пока не выйдет новая версия VBA. Т.е. макровирус ищется не по сигнатурам. Плюсом такого
подхода является то, что установив такой модуль единожды - его не нужно обновлять. Теперь вопросы: ДрВеб ищет макровирусы по сигнатурам?

DrWeb ищет макровирусы и по сигнатурам и при помощи встроенного
оригинального мощного эвристического анализатора. Механизм поиска и анализа макросов
реализован на нескольких уровнях: сканируется и бинарный код макросов,
их откомпилированный и исходный текст. Это позволяет обнаруживать известные вирусы,
их модификации, а также неизвестные макро-вирусы. Таким образом,
становится возможным не только не зависеть от версии установленного
пакета MS Office (возможность перехвата выполняемых макросов появилась
только в Office 2000 и отсутствовала в предыдущих версиях), но и вообще от
наличия MS Office на компьютере, на котором производится сканирование
файлов -- например, на корпоративном интернет-шлюзе.

Кроме того, при помощи построенного на тех же принципах эвристического
анализатора, DrWeb способен обнаруживать и неизвестные троянцы,
бэкдоры, интернетовские вирусы-черви, irc, пакетные (bat) и скрипт
(vbs/vbe) вирусы.

Ваше личное мнение: может ли модуль из состава АВП дать 100% безопасность от макроинфекции?

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

На вопросы отвечали
Сергей Юрьевич Попов
Андрей Владимирович Башаримов

Разработчики антивирусных программ семейства Dr.WEB.