Что такое макрос вирусы


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

Пользователи ПК зачастую недооценивают макровирусы, не учитывая, что макрос, написанный, например, на языке VBA и интегрированный в документ Word или Excel, обладает всеми теми же возможностями, что и обычная программа. Он может отформатировать ваш винчестер, удалить любые файлы по выбору, скопировать какую-либо конфиденциальную информацию (например, пароли) и отправить её по электронной почте и т.д.

Макровирусы – это программы, написанные на так называемых макроязыках, встроенных в некоторые системы обработки данных (текстовые и графические редакторы, электронные таблицы и т.д.). Для своего размножения такие вирусы используют возможности макроязыков, они переносятся от одного заражённого файла к другому.

Наибольшее распространение получили макровирусы для Microsoft Word, Excel. Макровирусы получают управление при открытии или закрытии заражённого файла, перехватывают стандартные файловые функции и затем заражают файлы, к которым каким-либо образом идет обращение. Большинство макровирусов являются резидентными вирусами: они активны не только в момент открытия или закрытия файла, но до тех пор, пока активен сам текстовый или табличный редактор (а некоторые могут оставаться в оперативной памяти до выключения ПК!).

Лёгкость создания макровирусов поражает воображение, всё находится буквально под рукой: достаточно запустить Word, выбрать меню Сервис – > Макрос – > Редактор Visual Basic – > и запустится программная среда VBA (Visual Basic for Application)!

При работе с документом MS Word выполняет различные действия: открывает документ, сохраняет, печатает, закрывает и т.д. При этом Word ищет и выполняет соответствующие встроенные макросы: при сохранении файла по команде Файл – Сохранить вызывается макрос FileSave, при сохранении по команде Файл – > Сохранить как… – > FileSaveAs, при печати по команде Печать… – > FilePrint и т.д.

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

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

1) в вирусе присутствует автомакрос;

2) в вирусе переопределён один из стандартных системных макросов (ассоциированный с каким-либо пунктом меню);

3) макрос вируса автоматически вызывается при нажатии на какую-либо клавишу или комбинацию клавиш;

4) вирус начинает размножаться только в том случае, если пользователь запускает его на выполнение.

Основной механизм заражения такой: когда мы открываем заражённый документ Word, макровирус копирует свой код в область глобальных макросов документа. А при выходе из Word’а глобальные макросы (включая макросы вируса) автоматически записываются в dot-файл глобальных макросов (шаблон Normal.dot).

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

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

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

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

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

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

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

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

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

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

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

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

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

Word/Excel-вирусы

При работе с документом Word (так же как и Excel) выполняет различные действия — открывает документ, сохраняет, печатает, закрывает и т.д. При этом Word ищет и выполняет соответствующие макросы — при сохранении файла вызывается макрос FileSave, при сохранении по команде File/SaveAs — FileSaveAs, при печати документов — FilePrint и т.д. если, конечно, таковые макросы определены.

При открытии документа Word проверяет его на наличие макроса AutoOpen. Если такой макрос присутствует, то Word выполняет его. При закрытии документа Word выполняет макрос AutoClose.

Вирусы семейства Macro.Word содержат в себе как минимум один из автоматических макросов (AutoOpen, AutoClose, AutoExec, AutoExit, AutoNew) или один из стандартных макросов (FileOpen, FileClose, FileSaveAs и т.д.). Если документ заражен, то при открытии документа Word вызывает зараженный автоматический макрос AutoOpen (или AutoClose при закрытии документа) и, таким образом, запускает код вируса, если это не запрещено системной переменной DisableAutoMacros. Если же вирус содержит макросы со стандартными именами, то они получают управление при вызове соответствующего пункта меню (File/Open, File/Close, File/SaveAs).

Во всех известных вирусах семейства Macro.Word макросы AutoOpen/AutoClose и (или) макросы со стандартными именами содержат команды переноса макросов вируса в область глобальных (общих) макросов Word, т.е. при запуске Auto-макроса или при вызове соответствующей стандартной функции вирус заражает область глобальных макросов. При выходе из Word глобальные макросы (включая макросы вируса) автоматически записываются в DOT-файл глобальных макросов (обычно таким файлом является NORMAL.DOT). Таким образом, при следующем запуске Word вирус активизируется в тот момент, когда WinWord грузит глобальные макросы, т.е. сразу.

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

Таким образом, если вирус перехватывает макрос FileSaveAs, то заражается каждый DOC-файл, сохраняемый через перехваченный вирусом макрос. Если перехвачен макрос FileOpen, то вирус записывается в файл при его считывании с диска.

Следует отметить, что Word позволяет шифровать присутствующие в документе макросы. Таким образом, некоторые Macro.Word-вирусы присутствуют в зараженных документах в зашифрованном виде.

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

Вирусы для Word могут заражать компьютеры любого класса, а не только IBM-PC. Заражение возможно в том случае, если на данном компьютере установлет текстовый редактор, полностью совместимый с Microsoft Word версии 6 или 7.

Частично защититься от вирусов WinWord можно при помощи системного макроса DisableAutoMacros, который запрещает автоматический запуск Auto-макросов при работе с файлами. Однако при этом не запрещается макрос AutoExec и не запрещается запуск макросов со стандартными именами.

AmiPro-вирусы

При работе с каким-либо документом редактор AmiPro создает два файла — непосредственно текст документа (расширение имени файла — SAM) и дополнительный файл, содержащий макросы документа и, возможно, прочую информацию (расширение имени — SMM).

Документу можно поставить в соответствие какой-либо макрос из SMM-файла (команда AssignMacroToFile). Этот макрос является аналогом AutoOpen и AutoClose в MS-Word и вызывается редактором AmiPro при открыти или закритии файла.

Как и MS-Word, AmiPro позволяет переопределять системные макросы (например, SaveAs, Save) командой ChangeMenuAction. При вызове переопределенных функций (команд меню) управление получают зараженные макросы, т.е. код вируса.

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

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

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

Данным условиям удовлетворяют редакторы Microsoft Word, Office97 и AmiPro, а также электронная таблица Excel и база данных Microsoft Access. Эти системы содержат в себе макро-языки: Word - Word Basic, Excel, Office97 (включая Word97, Excel97 и Access) - Visual Basic for Applications. При этом:

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

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

Word/Excel/Office97-вирусы: общие сведения

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

По причине такой сложности форматов файлов Word, Excel и Office97 представить расположение макро-вируса в файле можно лишь схематично:

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

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

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

Следствием этого является тот факт, что при редактировании документа его размер изменяется вне зависимости от производимых с ним действий — при добавлени нового текста размер файла может уменьшится, а при удалении части текста — увеличиться. То же и с макро-вирусами: при заражении файла его размер может уменьшиться, увеличиться или остаться неизменным.

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

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

Таким образом к автоматическим макросам/функциям относятся:

Имена некоторых стандартных макросов Word (даны имена в различных локализованных версиях Word) приведены ниже:

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

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

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

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

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

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

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

Таким образом, если вирус перехватывает макрос FileSaveAs, то заражается каждый DOC-файл, сохраняемый через перехваченный вирусом макрос. Если перехвачен макрос FileOpen, то вирус записывается в файл при его считывании с диска.

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

Рассмотренные выше способы внедрения в систему представляют собой некоторый аналог резидентных DOS-вирусов. Аналогом нерезидентности являются макро-вирусы, которые не переносят свой код в область системных макросов - для заражения других файлов-документов они либо ищут их при помощи встроенных в Word функций работы с файлами, либо обращаются к списку последних редактированных файлов (Recently used file list). Затем такие вирусы открывают документ, заражают его и закрывают.

Алгоритм работы Excel макро-вирусов

Методы размножения Excel-вирусов (включая Excel97) в целом аналогичны методам Word-вирусов. Различия заключаются в командах копирования макросов (например, Sheets.Copy) и в отсутствии NORMAL.DOT — его функцию (в вирусном смысле) выполняют файлы в STARTUP-каталоге Excel.

Следует отметить, что существует два возможных варианта расположения кода макро-вирусов в таблицах Excel. Подавляющее большинство таких вирусов записывают свой код в формате VBA (Visual Basic for Applications), однако существуют вирусы, хранящие свой код в старом формате Excel версии 4.0. Такие вирусы по своей сути ничем не отличаются от VBA-вирусов, за исключением отличий в формате расположения кодов вируса в таблицах Excel.

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

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

Поскольку Access является частью пакета Office97 Pro, то вирусы для Access представляют собой такие же макросы на языке Visual Basic, как и прочие вирусы, заражающие приложения Office97. Однако в данном случае вместо авто-макросов в системе присутствуют автоматические скрипты, которые вызываются системой при различных событиях (например, Autoexec). Данные скрипты затем могут вызывать различные макро-программы.

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

Следует отметить, что в терминах Access скрипты называются макросами (macro), а макросы — модулями (module), однако в дальнейшем будет использоваться унифицированная терминология — скрипты и макросы.

Лечение баз данных Access является более сложной задачей, чем удаление прочих макро-вирусов, поскольку в случае Access необходимо обезвредить не только вирусные макросы, но и авто-скрипты. А так так значительная часть работы Access возложена как раз на скрипты и макросы, то некорректное удаление или деактивация какого-либо элемента может привести к невозможности операций с базой данных. То же справедливо и для вирусов - некорректное замещение авто-скриптов может привести к потере данных, хранящихся в базе.

При работе с каким-либо документом редактор AmiPro создает два файла — непосредственно текст документа (с расширением имени SAM) и дополнительный файл, содержащий макросы документа и, возможно, прочую информацию (расширение имени — SMM). Формат обоих файлов достаточно прост — они представляют собой обычный текстовый файл, в котором как редиктируемый текст, так и команды управления присутствуют в виде обычных текстовых строк.

Документу можно поставить в соответствие какой-либо макрос из SMM-файла (команда AssignMacroToFile). Этот макрос является аналогом AutoOpen и AutoClose в MS Word и вызывается редактором AmiPro при открыти или закритии файла.

Как и MS Word, AmiPro позволяет переопределять системные макросы (например, SaveAs, Save) командой ChangeMenuAction. При вызове переопределенных функций (команд меню) управление получают зараженные макросы, т.е. код вируса.

Макровирусы

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

1) привязка программы на макроязыке к конкретному файлу;

2) копирование макропрограмм (далее макросов) из одного файла в другой;

3) возможность получения управления макросом без вмешательства пользователя (автоматические или стандартные макросы).

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

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

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

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

Макровирусы активны не только в момент открытия/закрытия файла, но до тех пор, пока активен сам редактор.

При работе с документом Word (так же как и Excel) выполняет различные действия - открывает документ, сохраняет, печатает, закрывает и т.д. При этом Word ищет и выполняет соответствующие макросы - при сохранении файла вызывается макрос FileSave, при сохранении по команде File/SaveAs - FileSaveAs, при печати документов - FilePrint и т.д. если, конечно, таковые макросы определены. При открытии документа Word проверяет его на наличие макроса AutoOpen. Если такой макрос присутствует, то Word выполняет его. При закрытии документа Word выполняет макрос AutoClose.

Вирусы семейства Macro.Word содержат в себе как минимум один из автоматических макросов (AutoOpen, AutoClose, AutoExec, AutoExit, AutoNew) или один из стандартных макросов (FileOpen, FileClose, FileSaveAs и т.д.). Если документ заражен, то при открытии документа Word вызывает зараженный автоматический макрос AutoOpen (или AutoClose при закрытии документа) и, таким образом, запускает код вируса, если это не запрещено системной переменной DisableAutoMacros. Если же вирус содержит макросы со стандартными именами, то они получают управление при вызове соответствующего пункта меню (File/Open, File/Close, File/SaveAs).

Во всех известных вирусах семейства Macro.Word макросы AutoOpen/AutoClose и (или) макросы со стандартными именами содержат команды переноса макросов вируса в область глобальных (общих) макросов Word, т.е. при запуске Auto-макроса или при вызове соответствующей стандартной функции вирус заражает область глобальных макросов. При выходе из Word глобальные макросы (включая макросы вируса) автоматически записываются в DOT-файл глобальных макросов (обычно таким файлом является NORMAL.DOT). Таким образом, при следующем запуске Word’а вирус активизируется в тот момент, когда Word грузит глобальные макросы, т.е. сразу.

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

Таким образом, если вирус перехватывает макрос FileSaveAs, то заражается каждый DOC-файл, сохраняемый через перехваченный вирусом макрос. Если перехвачен макрос FileOpen, то вирус записывается в файл при его считывании с диска.

Следует отметить, что Word позволяет шифровать присутствующие в документе макросы. Таким образом, некоторые Macro.Word-вирусы присутствуют в зараженных документах в зашифрованном виде.

Характерными проявлениями вирусов семейства M acro.Word являются следующие.

1. Невозможность конвертирования зараженного документа Word в другой формат.

2. Невозможность записи документа в другой каталог/на другой диск командой "Save As".

3. Зараженные файлы имеют формат Template. При заражении вирусы WinWord конвертируют файлы из формата Word Document в Template.

Существует несколько приемов и встроенных в Word/Excel функций, направленных на предотвращение запуска вируса. Наиболее действенной из них является защита от вирусов, встроенная в Word и Excel (начиная с версий 7.0a). Эта защита при открытии файла, содержащего любой макрос, сообщает о его присутствии и предлагает запретить этот макрос. В результате макрос не только не выполняется, но и не виден средствами Word/Excel.

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

Частично защититься от вирусов Macro .Word можно при помощи системного макроса DisableAutoMacros, который запрещает автоматический запуск Auto-макросов при работе с файлами. Однако при этом не запрещается макрос AutoExec и не запрещается запуск макросов со стандартными именами. И поэтому DisableAutoMacros блокирует только те вирусы, которые для своего распространения используют один из авто-макросов.

Запуск Word с опцией /M (или с нажатой клавишей Shift) отключает только один макрос AutoExec и таким образом также не может служить надежной защитой от вируса.

Написаны на языке программирования Java и представляют из себя стандартные Java-программы. Заражают приложения Java (Java applications). Размножаются, если зараженный файл запустить как дисковую Java-программу (application) при помощи Java-машины.

Первый известный вирус, заражающий приложения Java, обнаружен в августе 1998 года.

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

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

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

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

Скрипт-вирусы являются скрипт-программами на языке PHP. Они заражают файлы с расширением . php (иногда и . htm ). Записываются в начало или в конец файлов (иногда только ссылку на свой код).

Вирусы работоспособны только в системах с установленным PHP-нтерпретатором.

Первый известный вирус, заражающий скрипт-программы PHP, был обнаружен в октябре 2000 года.

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

При открытии зараженного файла скрипт-машина PHP обрабатывает команду "include", считывает код вируса из указанного файла и выполняет его.

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

Вирусы, которые распространяются в компьютерной сети.

Они не изменяют файлы или секторы на дисках.

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

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

Файловые черви (worms) при размножении копируют свой код в какие-либо каталоги дисков в надежде, что эти новые копии будут когда-либо запущены пользователем. Иногда эти вирусы дают своим копиям "специальные" имена, чтобы подтолкнуть пользователя на запуск своей копии - например, INSTALL.EXE или WINSTART.BAT.

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

Читайте также:

Пожалуйста, не занимайтесь самолечением!
При симпотмах заболевания - обратитесь к врачу.

Copyright © Иммунитет и инфекции