Что надо делать, если пропали данные. Какие компьютерные вирусы существуют? Методы борьбы

Возможности 28.06.2019
Возможности

Министерство образования и науки РФ

Российский торгово-экономический университет

Казанский институт (филиал)

Кафедра математики и высшей математики

Контрольная работа №1

по дисциплине: «Информатика»

КОМПЬЮТЕРНЫЕ ВИРУСЫ

Выполнила:

студентка 1 курса заочного

отделения спец. факультета

«Финансы и кредит» группы

Проверил:

Казань, 2007

ПЛАН

Введение

1. Сущность и проявление компьютерных вирусов

2. Основные типы и виды компьютерных вирусов

3. Как распространяются вирусы?

4. Выявление компьютерных вирусов

5. Профилактические меры против вирусов

Заключение

Список используемой литературы

Введение

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

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

Основными путями проникновения вирусов в компьютер являются съемные диски (гибкие и лазерные), а также компьютерные сети. Заражение жесткого диска вирусами может произойти при загрузке компьютера с дискеты, содержащей вирус. Такое заражение может быть и случайным, например, если дискету не вынули из дисковода А: и перезагрузили компьютер, при этом дискета может и не быть системной. Заразить дискету гораздо проще. На нее вирус может попасть, даже если дискету просто вставили в дисковод зараженного компьютера и, например, прочитали ее оглавление. Но наиболее частым способом распространения вирусов является сеть компьютеров, и в частности Интернет, когда переписываются другие программы, например игровые, и их запускают. Могут быть и другие, довольно редкие случаи, когда в компьютер вставляется другой жесткий диск, который был заражен. Чтобы этого избежать, загрузитесь с системной дискеты и либо проверьте жесткий диск специальными антивирусными программами, либо, что лучше, разметьте и отформатируйте диск программами Fdisk и Format.

Для выявления вирусов существуют специальные антивирусные программы, которые позволяют обнаружить и уничтожить вирусы. Имеется довольно широкий выбор антивирусных программ. Это Aidstest (Лозинского), Dr Web, Norton antivirus для системы Windows, комплект DSAV и прочие.

1. Сущность и проявление компьютерных вирусов

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

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

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

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

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

· прекращение работы или неправильная работа раннее успешно функционировавших программ;

· медленная работа компьютера;

· невозможность загрузки операционной системы;

· исчезновение файлов и каталогов или искажение их содержимого;

· изменение даты и времени модификации файлов;

· изменение размеров файлов;

· неожиданное значительное увеличение количества файлов на диске;

· существенное уменьшение размера свободной оперативной памяти;

· вывод на экран непредусмотренных сообщений или изображений4

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

· частые зависания и сбои в работе компьютера.

Однако по всем этим признакам нельзя с уверенностью сказать, что в компьютере завелся вирус. Так как могут быть другие неисправности, причиной которых являются неполадки или неотлаженность системы. Например, в купленном компьютере при его запуске вместо русских символов высвечиваются непонятные символы, которые вы впервые видите. Причиной этого может быть то, что не установлен драйвер кириллицы для дисплея. Этой же причиной – отсутствием драйвера для принтера – может объясняться и странное поведение принтера. Сбои системы могут иметь причиной плохой микросхемы внутри системного блока или в подключении шнура.

2. Основные типы и виды компьютерных вирусов

Основными типами компьютерных вирусов являются:

Программные вирусы;

Загрузочные вирусы;

Макровирусы.

К компьютерным вирусам примыкают и так называемые троянские

кони (троянские программы, троянцы).

Программные вирусы.

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

Работа этого кода вызывает скрытые от пользователя изменения в файловой системе жестких дисков и/или в содержании других программ. Так, например, вирусный код может воспроизводить себя в теле других программ – этот процесс называется размножением. По прошествии определенного времени, создав достаточное количество копий, программный вирус может перейти к разрушительным действиям: нарушению работы программ и операционной системы, удалению информации, хранящейся на жестком диске. Этот процесс называется вирусной атакой.

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

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

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

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

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

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

Загрузочные вирусы.

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

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

Макровирусы.

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

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

Как и для других типов вирусов, результат атаки может быть как относительно безобидным, так и разрушительным.

Основные виды компьютерных вирусов.

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

· среде обитания;

· способу заражения среды обитания;

· воздействию;

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

г)

Рис.1 Классификация компьютерных вирусов:

а – по среде обитания; б – по способу заражения;

в – по степени воздействия; г – по особенностям алгоритмов.

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

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

Файловые вирусы внедряются главным образом в исполняемые модули, т.е. в файлы, имеющие расширения СОМ и ЕХЕ. Файловые вирусы могут внедряться и в другие типы файлов, но как правило, записанные в таких файлах, они никогда не получают управление и, следовательно, теряют способность к размножению.

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

Файлово-загрузочные вирусы заражают как файлы, так и загрузочные сектора дисков.

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

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

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

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

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

2. опасные вирусы, которые могут привести к различным нарушениям в работе компьютера;

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

3. Как распространяются вирусы?

Имеется несколько путей, прежде всего, через гибкие дискеты. Если вы получили дискету от друга, у которого в компьютере вирус, то скорее всего, дискета будет заражена. Здесь возможны два варианта. Первый – вирус находится в системной области диска, и второй – имеется один или несколько зараженных файлов. Как уже было сказано, вирус должен получить управление, поэтому если это системная дискета, то при загрузке с нее можно заразить компьютер. Если это системная дискета, а вы попробовали загрузить с нее компьютер и на экране появилось сообщение: Non system disk (несистемный диск), то вы и в этом случае могли заразить свой компьютер, так как на любой дискете имеется загрузчик операционной системы и при включении он получит управление.

Второй вариант – это зараженные файлы. Не все файлы могут быть заражены. Так, например, если имеется текст письма или какого-то другого документа, набранный при помощи редактора Norton Commander, то там не будет вируса. Даже если он там случайно оказался, то, просмотрев файл при помощи этого же редактора или ему подобного, можно увидеть в самом начале или конце такого файла непонятные символы, которые лучше уничтожить. Другие редакторы создают файлы, в которых содержится управляющая информация, такая как размер или тип шрифта, отступы, разные таблицы перекодировки и др. Как правило, заразиться через такой файл практически невозможно. Однако редактор Word версии 6.0 и 7.0 имеет возможность в самом начале документа содержать макрокоманды, которым будет передаваться управление, и таким образом через документы может распространяться вирус.

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

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

Наиболее частым способом распространения вирусов является сеть компьютеров, и в частности Интернет, когда переписываются другие программы, например игровые, и их запускают. Могут быть и другие, довольно редкие случаи, когда в компьютер вставляется другой жесткий диск, который был заражен. Чтобы этого избежать, загрузитесь с системной дискеты и либо проверьте жесткий диск специальными антивирусными программами, либо, что лучше, разметьте и отформатируйте диск программами Fdisk и Format.

4. Выявление компьютерных вирусов

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

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

Имеется довольно широкий выбор антивирусных программ. Это Aidstest (Лозинского), Dr Web, Norton antivirus для системы Windows, комплект DSAV и прочие. По способу работы их можно разделить на три вида:

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

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

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

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

5) Существуют и программы, установленные в BIOS компьютера, когда при попытке записи в загрузочный сектор на экране появляется сообщение об этом.

5. Профилактические меры против вирусов

Для профилактики нужно:

1. Проводить архивацию данных . Архивация – это запись файлов на съемные носители. Чаще всего в такой роли выступают гибкие дискеты или магнитные ленты, используемые в специальных устройствах (стримеры). Например, нет необходимости запоминать файлы Windows, если имеется установочная дискета, с которой можно перезагрузить систему и восстановить файлы. Поэтому, если на компьютере имеются из съемных устройств только гибкие диски, то запоминать нужно информацию, которую трудно восстановить.

Архивирование . Как правило, информацию записывают не на один диск. Допустим, информация помещается на одну дискету, и копирование производится раз в неделю. Сначала информация записывается 4 августа, в следующий раз 11 августа запись производится на другую дискету из тех же директорий. 18 августа запись происходит снова на первую дискету, 25 августа на вторую, затем снова на первую и так далее, для этого нужно иметь как минимум две дискеты. Дело в том, что при записи на дискету может произойти сбой и большая часть информации потеряется. На домашнем компьютере время от времени нужно проводить копирование, частоту же определяет сам пользователь.

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

3. Не производите загрузку с неизвестных дискет . При загрузке с жесткого диска убедитесь, что в дисководе А: или В: нет дискет, особенно с других машин.

Заключение

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

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

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

Программа вируса пишется на языке Ассемблера, чтобы иметь небольшой размер и быстрое выполнение, хотя есть программы, написанные на Си, Паскале и др. языках. Многие программы-вирусы – резидентные используют принципы, разработанные в драйверах, то есть в таблице прерываний устанавливают адрес вирусной программы, а после окончания работы вируса передают управление обычной программе, адрес которой находился ранее в таблице прерываний. Это называется перехватыванием управления.

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

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

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

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

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

Список используемой литературы

1. А. Косцов, В. Косцов. Большая энциклопедия. Все о персональном компьютере. – М.: «Мартин», 2003. – 720с.

2. Информатика: Учебник. – 3-е перераб. изд. / Под ред. Н. В. Макаровой. – М.: Финансы и статистика, 2005. – 768 с.: ил.

3. Информатика для юристов и экономистов. / Под редакцией С. В. Симоновича и др. – СПб.: Санкт-Петербург, 2001. – 688 с.6 ил.

Характеристика компьютерных вирусов

Сущность и проявление компьютерных вирусов

Массовое применение персональных компьютеров, к сожалению, оказалось связанным с появлением самовоспроизводящихся программ-вирусов, препятствующих нормальной работе компьютера, разрушающих файловую структуру дисков и наносящих ущерб хранимой в компьютере информации. Проникнув в один компьютер, компьютерный вирус способен распространиться на другие компьютеры. Компьютерным вирусом называется специально написанная программа, способная самопроизвольно присоединяться к другим программам, создавать свои копии и внедрять их в файлы, системные области компьютера и в вычислительные сети с целью нарушения работы программ, порчи файлов и каталогов, создания всевозможных помех в работе на компьютере.Причины появления и распространения компьютерных вирусов, с одной стороны, скрываются в психологии человеческой личности и ее теневых сторонах (зависти, мести, тщеславии непризнанных творцов, невозможности конструктивно применить свои способности), с другой стороны, обусловлены отсутствием аппаратных средств защиты и противодействия со стороны операционной системы персонального компьютера.Несмотря на принятые во многих странах законы о борьбе с компьютерными преступлениями и разработку специальных программных средств защиты от вирусов, количество новых программных вирусов постоянно растет. Это требует от пользователя персонального компьютера знаний о природе вирусов, способах заражения вирусами и защиты от них.Основными путями проникновения вирусов в компьютер являются съемные диски (гибкие и лазерные), а также компьютерные сети. Заражение жесткого диска вирусами может произойти при загрузке компьютера с дискеты, содержащей вирус. Такое заражение может быть и случайным, например, если дискету не вынули из дисковода А: и перезагрузили компьютер, при этом дискета может и не быть системной. Заразить дискету гораздо проще. На нее вирус может попасть, даже если дискету просто вставили в дисковод зараженного компьютера и, например, прочитали ее оглавление. Зараженный диск - это диск, в загрузочном секторе которого находится программа - вирус.После запуска программы, содержащей вирус, становится возможным заражение других файлов. Наиболее часто вирусом заражаются загрузочный сектор диска и исполняемые файлы, имеющие расширения ЕХЕ, .СОМ, SYS или ВАТ. Крайне редко заражаются текстовые и графические файлы. Зараженная программа - это программа, содержащая внедренную в нее программу-вирус.При заражении компьютера вирусом очень важно своевременно его обнаружить. Для этого следует знать об основных признаках проявления вирусов. К ним можно отнести следующие:
  • прекращение работы или неправильная работа ранее успешно функционировавших программ;
  • медленная работа компьютера;
  • невозможность загрузки операционной системы;
  • исчезновение файлов и каталогов или искажение их содержимого;
  • изменение даты и времени модификации файлов;
  • изменение размеров файлов;
  • неожиданное значительное увеличение количества файлов на диске;
  • существенное уменьшение размера свободной оперативной памяти;
  • вывод на экран непредусмотренных сообщений или изображений;
  • подача непредусмотренных звуковых сигналов;
  • частые зависания и сбои в работе компьютера.
Следует заметить, что вышеперечисленные явления необязательно вызываются присутствием вируса, а могут быть следствием других причин. Поэтому всегда затруднена правильная диагностика состояния компьютера.Основные виды вирусов В настоящее время известно более 5000 программных вирусов, их можно классифицировать по следующим признакам (рис. 11.10): Рис. 11.10. Классификация компьютерных вирусов:а - по среде обитания; б - по способу заражения; в - по степени воздействия; г - по особенностям алгоритмовВ зависимости от среды обитания вирусы можно разделить на сетевые, файловые, загрузочные и файлово-загрузочные. Сетевые вирусы распространяются по различным компьютерным сетям. Файловые вирусы внедряются главным образом в исполняемые модули, т.е. в файлы, имеющие расширения СОМ и ЕХЕ. Файловые вирусы могут внедряться и в другие типы файлов, но, как правило, записанные в таких файлах, они никогда не получают управление и, следовательно, теряют способность к размножению. Загрузочные вирусы внедряются в загрузочный сектор диска (Boot-сектор) или в сектор, содержащий программу загрузки системного диска (Master Boot Record). Файлово-загрузочные вирусы заражают как файлы, так и загрузочные сектора дисков. По способу заражения вирусы делятся на резидентные и нерезидентные. Резидентный вирус при заражении (инфицировании) компьютера оставляет в оперативной памяти свою резидентную часть, которая потом перехватывает обращение операционной системы к объектам заражения (файлам, загрузочным секторам дисков и т.п.) и внедряется в них. Резидентные вирусы находятся в памяти и являются активными вплоть до выключения или перезагрузки компьютера. Нерезидентные вирусы не заражают память компьютера и являются активными ограниченное время.По степени воздействия вирусы можно разделить на следующие виды:
  • неопасные , не мешающие работе компьютера, но уменьшающие объем свободной оперативной памяти и памяти на дисках, действия таких вирусов проявляются в каких-либо графических или звуковых эффектах;
  • опасные вирусы, которые могут привести к различным нарушениям в работе компьютера;
  • очень опасные, воздействие которых может привести к потере программ, уничтожениюданных, стиранию информации в системных областях диска.
По особенностям алгоритма вирусы трудно классифицировать из-за большого разнообразия. Простейшие вирусы - паразитические , они изменяют содержимое файлов и секторов диска и могут быть достаточно легко обнаружены и уничтожены. Можно отметить вирусы-репликаторы , называемые червями, которые распространяются по компьютерным сетям, вычисляют адреса сетевых компьютеров и записывают по этим адресам свои копии. Известны вирусы-невидимки , называемые стелс-вирусами, которые очень трудно обнаружить и обезвредить, так как они перехватывают обращения операционной системы к пораженным файлам и секторам дисков и подставляют вместо своего незараженные участки диска. Наиболее трудно обнаружить вирусы-мутанты, содержащие алгоритмы шифровки-расшифровки, благодаря которым копии одного и того же вируса не имеют ни одной повторяющейся цепочки байтов. Имеются и так называемые квазивирусные или "троянские " программы, которые хотя и не способны к самораспространению, но очень опасны, так как, маскируясь под полезную программу, разрушают загрузочный сектор и файловую систему дисков.

ПРОГРАММЫ ОБНАРУЖЕНИЯ И ЗАЩИТЫ ОТ ВИРУСОВ

Характеристика антивирусных программ Дня обнаружения, удаления и защиты от компьютерных вирусов разработано несколько видов специальных программ, которые позволяют обнаруживать и уничтожать вирусы. Такие программы называются антивирусными . Различают следующие виды антивирусных программ (рис. 11.11): Программы-детекторы осуществляют поиск характерной для конкретного вируса последовательности байтов (сигнатуры вируса) в оперативной памяти и в файлах и при обнаружении выдаютсоответствующее сообщение. Недостатком таких антивирусных про-Рис. 11.11. Виды антивирусных программ
грамм является то, что они могут находить только те вирусы, которые известны разработчикам таких программ. Программы-доктора или фаги, а также программы-вакцины не только находят зараженные вирусами файлы, но и "лечат" их, т.е. удаляют из файла тело программы вируса, возвращая файлы в исходное состояние. В начале своей работы фаги ищут вирусы в оперативной памяти, уничтожая их, и только затем переходят к "лечению" файлов. Среди фагов выделяют полифаги , т.е. программы-доктора, предназначенные для поиска и уничтожения большого количества вирусов. Наиболее известными полифагами являются программы Aidstest , Scan, Norton AntiVirus и Doctor Web . Учитывая, что постоянно появляются новые вирусы, программы-детекторы и программы-доктора быстро устаревают, и требуется регулярное обновление их версий. Программа-ревизоры относятся к самым надежным средствам защиты от вирусов. Ревизоры запоминают исходное состояние программ, каталогов и системных областей диска тогда, когда компьютер не заражен вирусом, а затем периодически или по желанию пользователя сравнивают текущее состояние с исходным. Обнаруженные изменения выводятся на экран видеомонитора. Как правило, сравнение состояний производят сразу после загрузки операционой системы. При сравнении проверяются длина файла, код циклического контроля (контрольная сумма файла), дата и время модификации, другие параметры. Программы-ревизоры имеют достаточно развитые алгоритмы, обнаруживают стелс-вирусы и могут даже отличить изменения версии проверяемой программы от изменений, внесенных вирусом. К числу программ-ревизоров относится широко распространенная в России программа Adinf фирмы "Диалог-Наука". Программы-фильтры или "сторожа" представляют собой небольшие резидентные программы, предназначенные для обнаружения подозрительных действий при работе компьютера, характерных для вирусов. Такими действиями могут являться:
  • попытки коррекции файлов с расширениями СОМ и ЕХЕ;
  • изменение атрибутов файлов;
  • прямая запись на диск по абсолютному адресу;
  • запись в загрузочные сектора диска.
При попытке какой-либо программы произвести указанные действия "сторож" посылает пользователю сообщение н предлагает запретить или разрешить соответствующее действие. Программы-фильтры весьма полезны, так как способны обнаружить вирус на самой ранней стадии его существования до размножения. Однако они не "лечат" файлы и диски. Для уничтожения вирусов требуется применить другие программы, например фаги. К недостаткам программ-сторожей можно отнести их "назойливость" (например, они постоянно выдают предупреждение о любой попытке копирования исполняемого файла), а также возможные конфликты с другим программным обеспечением. Примером программы-фильтра является программа Vsafe, входящая в состав пакета утилит операционной системы MS DOS. Вакцины или иммунизаторы - это резидентные программы, предотвращающие заражение файлов. Вакцины применяют, если отсутствуют программы-доктора, "лечащие" этот вирус. Вакцинация возможна только от известных вирусов. Вакцина модифицирует программу или диск таким образом, чтобы это не отражалось на их работе, а вирус будет воспринимать их зараженными и поэтому не внедрится. В настоящее время программы-вакцины имеют ограниченное применение.Своевременное обнаружение зараженных вирусами файлов и дисков, полное уничтожение обнаруженных вирусов на каждом компьютере позволяют избежать распространения вирусной эпидемии на другие компьютеры.Антивирусный комплект АО "Диалог-Наука" Среди обилия современных программных средств борьбы с компьютерными вирусами предпочтение следует отдать антивирусному комплекту АО "Диалог-Наука", в который входят четыре программных продукта: полифаги Aidstest и Doctor Web (сокращенно Dr.Web), ревизор диска ADinf и лечащий блок ADinf Cure Module. Рассмотрим кратко, как и когда надо применять эти антивирусные программы. Программа-полифаг Aidstest . Aidstest - это программа, которая умеет обнаруживать и уничтожать более 1300 компьютерных вирусов, получивших наиболее широкое распространение в России. Версии Aidstest регулярно обновляются и пополняются информацией о новых вирусах. Для вызова Aidstest следует ввести команду:AIDSTEST []где path - имя диска, полное имя или спецификация файла, маска группы файлов:* - все разделы жесткого диска,** - все диски, включая сетевые и диски CD ROM;options - любая комбинация следующих ключей:/F - исправлять зараженные программы и стирать испорченные;/G - проверять все файлы подряд (не только СОМ, ЕХЕ и SYS);/S - медленная работа для поиска испорченных вирусов;/X - стирать все файлы с нарушениями в структуре вируса;/Q - спрашивать разрешение на удаление испорченных файлов;/В - не предлагать обработку следующей дискеты. Пример 11.27 Aidstest для проверки и "лечения"" диска В :. Обнаруженные зараженные программы будут исправлены. Проверке подлежат все файлы диска. Если файл исправить не удастся, то программа будет просить разрешение на его удаление:aidstest b: /f/g/qПрограмма-полифаг Doctor Web . Эта программа предназначена прежде всего для борьбы с полиморфными вирусами, которые сравнительно недавно появились в компьютерном мире. Использование Dr. Web для проверки дисков и удаления обнаруженных вирусов в целом подобно программе Aidstest. При этом дублирования проверки практически не происходит, так как Aidstest и Dr.Web работают на разных наборах вирусов. Программа Dr.Web может эффективно бороться со сложными вирусами-мутантами, которые оказываются не под силу программе Aidstest. В отличие от Aidstest программа Dr.Web способна обнаруживать изменения в собственном программном коде, эффективно определять файлы, зараженные новыми, неизвестными вирусами, проникая в зашифрованные и упакованные файлы, а также преодолевая "вакцинное прикрытие". Это достигается благодаря наличию достаточно мощного эвристического анализатора. В режиме эвристического анализа программа Dr.Web исследует файлы и системные области дисков, пытаясь обнаружить новые или неизвестные ей вирусы по характерным для вирусов кодовым последовательностям. Если таковые будут найдены, то выводится предупреждение о том, что объект, возможно, инфицирован неизвестным вирусом.Предусмотрены три уровня эвристического анализа. В режиме эвристического анализа возможны ложные срабатывания, т.е. детектирование файлов, не являющихся зараженными. Уровень "эвристики" подразумевает собой уровень анализа кода без наличия ложных срабатываний. Чем выше уровень "эвристики", тем выше процент наличия ошибок или ложных срабатываний. Рекомендуются первые два уровня работы эвристического анализатора.Третий уровень эвристического анализа предусматривает дополнительную проверку файлов на "подозрительное" время их создания. Некоторые вирусы при заражении файлов устанавливают некорректное время создания, как признак зараженности данных файлов. Например, для зараженных файлов секунды могут иметь значение 62, а год создания может быть увеличен на 100 лет.В комплект поставки антивирусной программы Dr.Web могут входить также файлы-дополнения к основной вирусной базе программы, расширяющие ее возможности. Работать с программой Dr. Web можно в двух режимах:
  • в режиме полноэкранного интерфейса с использованием меню и диалоговых окон;
  • в режиме управления через командную строку.
Для разового нерегулярного применения более удобен первый режим, но для регулярного применения с целью систематического входного контроля дискет лучше применять второй режим. При использовании второго режима соответствующая команда запуска Dr. Web должна быть включена либо в меню пользователя операционной оболочки Norton Соmmander, либо в специальный командный файл.Командная строка для запуска Dr. Web выглядит следующим образом:DrWeb [диск: [путь] ] [ключи]где диск:Х: - логическое устройство жесткого диска или физическое устройство гибкого диска, например F: или А:,* - все логические устройства на жестком диске,путь - это путь или маска требуемых файлов.Наиболее важные ключи:/AL - диагностика всех файлов на заданном устройстве;/CU[P] - "лечение" дисков и файлов, удаление найденных вирусов;P - удаление вирусов с подтверждением пользователя;/DL - удаление файлов, корректное лечение которых невозможно;/НА[уровень] - эвристический анализ файлов и поиск в них неизвестных вирусов, где уровень может принимать значения О, 1, 2;/RР[имя файла] - запись протокола работы в файл (по умолчанию в файл REPORT. WEB);/CL - запуск программы в режиме командной строки, при тестировании файлов и системные областей не используется полноэкранный интерфейс;/QU - выход в DOS сразу после тестирования;/? - вывод на экран краткой справки.Если в командной строке Dr.Web не указано ни одного ключа, то вся информация для текущего запуска будет считываться из файла конфигурации DRWEB.INI, расположенного в том же каталоге, что и файл DRWEB.EXE. Файл конфигурации создается в процессе работы с программой Dr.Web с помощью команды сохранения параметров, необходимых для тестирования. Пример 11.28 . Запуск антивирусной программы Dr.Web для проверки и лечения диска В:. Обнаруженные зараженные файлы будут "вылечены". Проверке подлежат все файлы диска. Если файл "вылечить" не удастся, то программа будет просить разрешение на его удаление. Для поиска вирусов должен использоваться эвристический уровень анализа 1. Программа должна выполняться только в режиме командной строки с выходом в DOS после завершения тестирования:DrWeb В: /AL /CUP /HA1 /QU / CLТехнология работы с программой Dr. Web в режиме полноэкранного интерфейса. Для запуска в режиме полноэкранного интерфейса достаточно ввести в командную строку только имя программы. Сразу после загрузки программы начнется тестирование оперативной памяти компьютера, если оно не отключено предыдущей установкой параметров. Ход тестирования отображается в окне тестирования. После завершения тестирования памяти произойдет остановка. Работу программы можно продолжить, если воспользоваться основным меню, расположенным в верхней строке экрана. Для активизации меню следует нажать клавишу .Основное меню содержит следующие режимы:Dr.WebТест Настройки ДополненияПри выборе любого режима открывается соответствующее подменю.Подменю Dr.Web позволяет временно выйти в DOS, получить краткую информацию о программе Dr.Web и о ее авторе или покинуть программу.Подменю Тест дает возможность выполнить основные операции тестирования и Їлечения" файлов и дисков, а также просмотреть отчеты о произведенных действиях.Подменю Настройки служит для установки с помощью диалоговых окон параметров настройки программы, установки путей и масок поиска и сохранения параметров в файле конфигурации DRWEB.INI.Для подключения файлов-дополнений к основной вирусной базе программы, расширяющих ее возможности, используется режим Дополнения .Антивирус-ревизор диска ADinf . Ревизор ADinf позволяет обнаружить появление любого вируса, включая стелс-вирусы, вирусы-мутанты и неизвестные на сегодняшний день вирусы. Программа ADinf запоминает:
  • информацию о загрузочных секторах;
  • информацию о сбойных кластерах;
  • длину и контрольные суммы файлов;
  • дату и время создания файлов.
На протяжении всей работы компьютера программа ADinf следит за сохранностью этих характеристик. В режиме повседневного контроля ADinf запускается автоматически каждый день при первом включении компьютера. Особо отслеживаются вирусоподобные изменения, о которых немедленно выдается предупреждение. Кроме контроля за целостностью файлов ADinf следит за созданием и удалением подкаталогов, созданием, удалением, перемещением и переименованием файлов, появлением новых сбойных кластеров, сохранностью загрузочных секторов и за многим другим. Перекрываются все возможные места для внедрения вируса в систему. Adinf проверяет диски, не используя DOS, читая их по секторам прямым обращением в BIOS. Благодаря такому способу проверки ADinf обнаруживает маскирующиеся стелс-вирусы и обеспечивает высокую скорость проверки диска. Лечащий блок ADinfCure Module . ADinfCure Module - это программа, которая помогает "вылечить" компьютер от нового вируса, не дожидаясь свежих версий полифагов Aidstest или Dr.Web, которым этот вирус будет известен. Программа ADinfCure Module использует тот факт, что, несмотря на огромное разнообразие вирусов, существует совсем немного различных методов их внедрения в файлы. Во время нормальной работы, при регулярном запуске ревизора Adinf oн сообщает ADinf Cure Module о том, какие файлы изменились с момента последнего запуска. Adinf Cure Module анализирует эти файлы и записывает в свои таблицы информацию, которая может потребоваться для восстановления файла при заражении вирусом. Если заражение произошло, то ADinf заметит изменения и снова вызовет Adinf Cure Module, который на основе анализа зараженного файла и сопоставления его с записанной информацией попытается восстановить исходное состояние файла.Основные меры по защите от вирусов Для того чтобы не подвергнуть компьютер заражению вирусами и обеспечить надежное хранение информации на дисках, необходимо соблюдать следующие правила:
  • оснастите свой компьютер современными антивирусными программами, например Aidstest или Doctor Web, и постоянно обновляйте их версии;
  • перед считыванием с дискет информации, записанной на других компьютерах, всегда проверяйте эти дискеты на наличие вирусов, запуская антивирусные программы своего компьютера;
  • при переносе на свой компьютер файлов в архивированном виде проверяйте их сразу же после разархивации на жестком диске, ограничивая область проверки только вновь записанными файлами;
  • периодически проверяйте на наличие вирусов жесткие диски компьютера, запуская антивирусные программы для тестирования файлов, памяти и системных областей дисков с защищенной от записи дискеты, предварительно загрузив операционную систему также с защищенной от записи системнойдискеты;
  • всегда защищайте свои дискеты от записи при работе на других компьютерах, если на них не будет производиться запись информации;
  • обязательно делайте архивные копии на дискетах ценной для вас информации;
  • не оставляйте в кармане дисковода А: дискеты при включении или перезагрузке операционной системы, чтобы исключить заражение компьютера загрузочными вирусами;
  • используйте антивирусные программы для входного контроля всех исполняемых файлов, получаемых из компьютерных сетей;
  • для обеспечения большей безопасности применения Aidstest и Doctor Web необходимо сочетать с повседневным использованием ревизора диска ADinf.

Компьютерные вирусы

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

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

Проявление наличия вируса в работе на ПЭВМ

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

Некоторые признаки заражения:

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

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

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

Разновидности компьютерных вирусов

Вирусы классифицируют по среде обитания и по способу воздействия. По среде обитания вирусы подразделяются на следующие виды:

  • файловые вирусы, которые внедряются главным образом в исполняемые файлы, т.е. файлы с расширением exe, com, bat, но могут распространяться и через файлы документов;
  • загрузочные, которые внедряются в загрузочный сектор диска или в сектор, содержащий программу загрузки системного диска;
  • макровирусы, которые заражают файлы-документы и шаблоны документов Word и Excel.;
  • сетевые, распространяются по компьютерной сети;

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

Чтобы предотвратить свое обнаружение, некоторые вирусы применяют довольно хитрые приемы маскировки. Рассмотрим "невидимые" и самомодифицирующиеся вирусы.

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

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

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

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

Для защиты от вирусов можно использовать:

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

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

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

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

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

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

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

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

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

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

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

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

Ни один тип антивирусных программ по отдельности не дает полной защиты от вирусов. Лучшей стратегией защиты от вирусов является многоуровневая, "эшелонированная" оборона. Рассмотрим структуру этой обороны.

Средствам разведки в "обороне" от вирусов соответствуют программы-детекторы, позволяющие проверять вновь полученное программное обеспечение на наличие вирусов.

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

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

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

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

  1. Регулярное архивирование информации (создание резервных копий важных файлов и системных областей винчестера).
  2. Использование только лицензионных дистрибутивных копий программных продуктов.
  3. Систематическая проверка компьютера на наличие вирусов. Компьютер должен быть оснащен эффективным регулярно используемым и постоянно обновляемым пакетом антивирусных программ. Для обеспечения большей безопасности следует применять параллельно несколько антивирусных программ.
  4. Осуществление входного контроля нового программного обеспечения, поступивших дискет. При переносе на компьютер файлов в архивированном виде после распаковки их также необходимо проверять.
  5. При работе на других компьютерах всегда нужно защищать свои дискеты от записи в тех случаях, когда на них не планируется запись информации.
  6. При поиске вирусов следует использовать заведомо чистую операционную систему, загруженную с дискеты.
  7. При работе в сети необходимо использовать антивирусные программы для входного контроля всех файлов, получаемых из компьютерных сетей. Никогда не следует запускать непроверенные файлы, полученные по компьютерным сетям.

Современные технологии антивирусной защиты позволяют защитить от вируса файловые сервера, почтовые сервера и сервера приложений. Например, антивирус Касперского для защиты файловых серверов позволяет обнаружить и нейтрализовать все типы вредоносных программ на файловых серверах и серверах приложений, работающих под управлением ОС Solaris, включая "троянские" программы, Java и ActiveX – апплеты.
В состав антивируса Касперского для защиты файловых серверов входят:

  • антивирусный сканер, осуществляющий антивирусную проверку всех доступных файловых систем на наличие вирусов по требованию пользователя. Проверяются в том числе архивированные и сжатые файлы;
  • антивирусный демон, являющийся разновидностью антивирусного сканера с оптимизированной процедурой загрузки антивирусных баз в память, осуществляет проверку данных в масштабе реального времени;
  • ревизор изменений, Kaspersky Inspector, отслеживает все изменения, происходящие в файловых системах компьютера. Модуль не требует обновлений антивирусной базы: контроль осуществляется на основе снятия контрольных сумм файлов (CRC – сумм) и их последующего сравнения с данными, полученными после изменения файлов.

Комбинированное использование этих модулей позволяет создать антивирусную защиту, наиболее точно отвечающую системным требованиям.
Обнаруженные подозрительные или инфицированные объекты могут быть помещены в предварительно указанную "карантинную" директорию для последующего анализа.
Антивирус Касперского обеспечивает полномасштабную централизованную антивирусную защиту почтовых систем, работающих под управлением ОС Solaris.
Проверке на наличие вирусов подвергаются все элементы электронного письма – тело, прикрепленные файлы (в том числе архивированные и компрессированные), внедренные OLE-объекты, сообщения любого уровня вложенности. Обнаруженные подозрительные или инфицированные объекты могут быть вылечены, удалены, переименованы, или помещены в заранее определенную карантинную директорию для последующего анализа.
Ежедневное обновление базы вирусных сигнатур, автоматически реализуется через Интернет при помощи специально встроенного модуля и обеспечивает высокий уровень детектирования компьютерных вирусов.

Контрольные вопросы

  1. Что называется компьютерным вирусом?
  2. Какая программа называется "зараженной"?
  3. Что происходит, когда зараженная программа начинает работу?
  4. Как может маскироваться вирус?
  5. Каковы признаки заражения вирусом?
  6. Каковы последствия заражения компьютерным вирусом?
  7. По каким признакам классифицируются компьютерные вирусы?
  8. Как классифицируются вирусы по среде обитания?
  9. Какие типы компьютерных вирусов выделяются по способу воздействия?
  10. Что могут заразить вирусы?
  11. Как маскируются "невидимые" вирусы?
  12. Каковы особенности самомодифицирующихся вирусов?
  13. Какие методы защиты от компьютерных вирусов можно использовать?
  14. В каких случаях применяют специализированные программы защиты от компьютерных вирусов?
  15. На какие виды можно подразделить программы защиты от компьютерных вирусов?
  16. Как действуют программы-детекторы?
  17. Что называется сигнатурой?
  18. Всегда ли детектор распознает зараженную программу?
  19. Каков принцип действия программ-ревизоров, программ-фильтров, программ-вакцин?
  20. Как выглядит многоуровневая защита от компьютерных вирусов с помощью антивирусных программ?
  21. Перечислите меры защиты информации от компьютерных вирусов.
  22. Каковы современные технологии антивирусной защиты?
  23. Каковы возможности антивируса Касперского для защиты файловых серверов? почтовых серверов?
  24. Какие модули входят в состав антивируса Касперского для защиты файловых систем?
  25. Каково назначение этих модулей?
  26. Какие элементы электронного письма подвергаются проверке на наличие вирусов?
  27. Как обезвреживаются антивирусом Касперского обнаруженные подозрительные или инфицированные объекты?
  28. Как обновляется база вирусных сигнатур?

компьютерных вирусов

Файловые вирусы

Вирус может внедриться в файлы трех типов:

Командные (ВАТ);

Загружаемые драйверы (IO.SYS, MSDOS.SYS и др.);

Выполняемые двоичные файлы (EXE, COM).

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

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

Зараженный файл-драйвер:

Возможно также инфицирование системного драйвера другим способом, когда вирус модифицирует его заголовок так, что DOS рассматривает инфицированный файл как цепочку из двух (или более) файлов.

Зараженный файл-драйвер:

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

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

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

Файловые вирусы при распространении внедряются в тело заражаемого файла: начало, конец или середину. Существует несколько возможностей внедрения вируса в середину файла: он может быть скопирован в таблицу настройки адресов EXE-файла ("Boot - Exe"), область стека файла COMMAND.COM ("Lehigh"), может раздвинуть файл или переписать часть файла в его конец, а свои коды - в освободившееся место ("Apri l - 1- Exe", "Phoenix") и т. д. Кроме того, копирование вируса в середину файла может произойти в результате ошибки вируса. В этом случае файл может быть необратимо испорчен. Встречаются и другие способы внедрения вируса в середину файла, например, вирус "Mutant" применяет метод компрессирования некоторых участков файла.

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

Внедрение вируса в начало файла применяется в подавляющем большинстве случаев при поражении COM-файлов. EXE-файлы заражаются таким методом либо в результате ошибки вируса, либо при использовании алгоритма вируса "Pascal".

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

Стандартным способом заражения будем называть способ, при котором вирус дописывается в конец файла и изменяет первые байты у COM-файла и несколько полей заголовка EXE-файла.

Вирус, после передачи ему управления, действует по следующему алгоритму:

Восстанавливает программу (но не файл) в исходном виде;

Если вирус резидентный, то он проверяет оперативную память на наличие своей копии и инфицирует память компьютера, если копия не найдена; если вирус не резидентный, то он ищет незараженные файлы в текущем и корневом каталогах, в каталогах отмеченных в команде PATH, сканирует дерево каталогов логических дисков, а затем заражает обнаруженные файлы;

Выполняет, если они есть, дополнительные функции: деструктивные действия, графические или звуковые эффекты.

Возвращает управление основной программе.

Загрузочные вирусы

Загрузочные вирусы заражают загрузочный сектор флоппи-диска и Boot-сектор, или Master Boot Record винчестера. При инфицировании диска вирус в большинстве случаев переносит оригинальный Boot-сектор в какой-либо другой сектор диска. Если длина вируса больше длины сектора, то в заражаемый сектор перемещается первая часть вируса, остальные размещаются в других секторах. Затем вирус копирует системную информацию, хранящуюся в первоначальном загрузчике, и записывает их в загрузочный сектор (для MBR этой информацией является Disk Partition Table, для Boot-сектора дискет - BIOS Parameter Block).

Алгоритм работы загрузочного вируса.

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

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

Алгоритм работы файлового вируса

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

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

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

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

Загрузочные вирусы

Загрузочные вирусы заражают загрузочный (boot) сектор флоппи-диска и boot-сектор или Master Boot Record (MBR) винчестера. Принцип действия загрузочных вирусов основан на алгоритмах запуска операционной системы при включении или перезагрузке компьютера - после необходимых тестов установленного оборудования (памяти, дисков и т.д.) программа системной загрузки считывает первый физический сектор загрузочного диска (A:, C: или CD-ROM в зависимости от параметров, установленных в BIOS Setup) и передает на него управление.

В случае дискеты или компакт-диска управление получает boot-сектор, который анализирует таблицу параметров диска (BPB - BIOS Parameter Block) высчитывает адреса системных файлов операционной системы, считывает их в память и запускает на выполнение. Если же на загрузочном диске отсутствуют файлы операционной системы, программа, расположенная в boot-секторе диска выдает сообщение об ошибке и предлагает заменить загрузочный диск.

В случае винчестера управление получает программа, расположенная в MBR винчестера. Эта программа анализирует таблицу разбиения диска (Disk Partition Table), вычисляет адрес активного boot-сектора (обычно этим сектором является boot-сектор диска C:), загружает его в память и передает на него управление. Получив управление, активный boot-сектор винчестера проделывает те же действия, что и boot-сектор внешнего носителя.

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

Заражение дискет производится единственным известным способом - вирус записывает свой код вместо оригинального кода boot-сектора дискеты. Винчестер заражается тремя возможными способами - вирус записывается либо вместо кода MBR, либо вместо кода boot-сектора загрузочного диска (обычно диска C:), либо модифицирует адрес активного boot-сектора в Disk Partition Table, расположенной в MBR винчестера.

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

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

Если продолжение вируса размещается в секторах, которые принадлежат свободным кластерам диска (при поиске этих секторов вирусу приходится анализировать таблицу размещения файлов - FAT), то, как правило, вирус помечает в FAT эти кластеры как сбойные (так называемые псевдосбойные кластеры). Этот способ используется вирусами “Brain”, “Ping-Pong” и некоторыми другими.

В вирусах семейства “Stoned” задействован другой метод. Эти вирусы размещают первоначальный загрузочный сектор в неиспользуемом или редко используемом секторе - в одном из секторов винчестера (если такие есть), расположенных между MBR и первым boot-сектором, а на дискете такой сектор выбирается из последних секторов корневого каталога.

Некоторые вирусы записывают свой код в последние сектора винчестера, поскольку эти сектора используются только тогда, когда винчестер полностью заполнен информацией (что является довольно редким явлением, если учесть размеры современных дисков). Реже используется метод сохранения продолжения вируса за пределами диска. Достигается это двумя способами. Первый сводится к уменьшению размеров логических дисков: вирус вычитает необходимые значения из соответствующих полей BPB boot-сектора и Disk Partition Table винчестера (если заражается винчестер), уменьшает размер логического диска и записывает свой код в “отрезанные” от него сектора.

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

Конечно, существуют и другие методы размещения вируса на диске, например, вирусы семейства “Azusa” содержат в своем теле стандартный загрузчик MBR и при заражении записываются поверх оригинального MBR без его сохранения.

При заражении большинство вирусов копирует в код своего загрузчика системную информацию, хранящуюся в первоначальном загрузчике (для MBR этой информацией является Disk Partition Table, для Boot-сектора дискет - BIOS Parameter Block). В противном случае система окажется неспособной загрузить себя, поскольку дисковые адреса компонент системы высчитываются на основе этой информации. Такие вирусы довольно легко удаляются переписыванием заново кода системного загрузчика в boot-секторе и MBR - для этого необходимо загрузиться с незараженной системной дискеты и использовать команды SYS для обезвреживания дискет и логических дисков винчестера или FDISK/MBR для лечения зараженного MBR-сектора.

Однако некоторые 100%-стелс вирусы не сохраняют эту информацию или даже более того - преднамеренно шифруют ее. При обращении системы или других программ к зараженным секторам вирус подставляет их незараженные оригиналы, и загрузка системы происходит без каких-либо сбоев, однако лечение MBR при помощи FDISK/MBR в случае такого вируса приводит к потере информации о разбиении диска (Disk Partition Table). В этом случае диск нужно переформатировать с потерей всей информации или восставить Disk Partition Table “вручную’, что требует определенной квалификации.

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

Пользователям новых операционных систем загрузочные вирусы также могут доставить неприятности. Несмотря на то, что перечисленные выше системы работают с дисками напрямую (минуя вызовы BIOS), что блокирует вирус и делает невозможным дальнейшее его распространение, код вируса все-таки, хоть и очень редко, получает управление при перезагрузке системы. Поэтому вирус “March6”, например, может годами “жить” в MBR сервера и никак не влиять при этом на работу и производительность компьютерной системы. Однако при случайной перезагрузке 6-го марта этот вирус полностью уничтожит все данные на диске.

Алгоритм работы загрузочного вируса

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

 как правило, уменьшает объем свободной памяти, копирует в освободившееся место свой код и считывает с диска свое продолжение (если оно есть). В дальнейшем некоторые вирусы “ждут” загрузки операционной системы и восстанавливают размер памяти в первоначальное значение. В результате они оказываются расположенными не за пределами операционной системы, а как отдельные блоки памяти, выделяемые под систему.

 перехватывает необходимые вектора прерываний (обычно INT 13H), считывает в память оригинальный boot-сектор и передает на него управление.

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

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

Макро-вирусы

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

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

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

 копирования макропрограмм из одного файла в другой;

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

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

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

 макроязык позволяет копировать файлы (AmiPro) или перемещать макропрограммы в служебные файлы системы и редактируемые файлы (Word, Excel, Office);

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

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

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

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

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

Следует также отметить, что сложность форматов документов Word, таблиц Excel и особенно Office имеет следующую особенность: в файлах-документах и таблицах присутствуют “лишние” блоки данных, т.е. данные, которые никак не связаны с редактируемым текстом или таблицами, либо являются случайно оказавшимися там копиями прочих данных файла. Причиной возникновения таких блоков данных является кластерная организация данных в OLE2-документах и таблицах - даже если введен всего один символ текста, то под него выделяется один или даже несколько кластеров данных. При сохранении документов и таблиц в кластерах, не заполненных “полезными” данными, остается “мусор”, который попадает в файл вместе с прочими данными.

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

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

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

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

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

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

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

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

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

Большинство известных Word-вирусов при запуске переносят свой код (макросы) в область глобальных макросов документа (“общие” макросы), для этого они используют команды копирования макросов MacroCopy, OrganizerCopy либо при помощи редактора макросов - вирус вызывает его, создает новый макрос, вставляет в него свой код, который и сохраняет в документе.

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

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

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

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

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

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

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

Полиморфные вирусы

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

Полиморфизм различной степени сложности встречается в вирусах всех типов - от загрузочных и файловых DOS-вирусов до Windows-вирусов и даже макро-вирусов.

Полиморфные расшифровщики

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

MOV reg_1, count ; reg_1, reg_2, reg_3 выбираются из

MOV reg_2, key ; AX,BX,CX,DX,SI,DI,BP

MOV reg_3, _offset ; count, key, _offset также могут меняться

xxx byte ptr , reg_2 ; xor, add или sub

Более сложные полиморфные вирусы используют значительно более сложные алгоритмы для генерации кода своих расшифровщиков: приведенные выше инструкции (или их эквиваленты) переставляются местами от заражения к заражению, разбавляются ничего не меняющими командами типа NOP, STI, CLI, STC, CLC, DEC неиспользуемый регистр, XCHG неиспользуемые регистры и т.д.

Полноценные же полиморфные вирусы используют еще более сложные алгоритмы, в результате работы которых в расшифровщике вируса могут встретиться операции SUB, ADD, XOR, ROR, ROL и другие в произвольном количестве и порядке. Загрузка и изменение ключей и других параметров шифровки производится также произвольным набором операций, в котором могут встретиться практически все инструкции процессора Intel (ADD, SUB, TEST, XOR, OR, SHR, SHL, ROR, MOV, XCHG, JNZ, PUSH, POP ...) со всеми возможными режимами адресации.

В результате в начале файла, зараженного подобным вирусом, идет набор бессмысленных на первый взгляд инструкций, причем некоторые комбинации, которые вполне работоспособны, не берутся фирменными дизассемблерами (например, сочетание CS:CS: или CS:NOP). И среди этой “каши” из команд и данных изредка проскальзывают MOV, XOR, LOOP, JMP - инструкции, которые действительно являются “рабочими”.

Уровни полиморфизма

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

Уровень 1: вирусы, которые имеют некоторый набор расшифровщиков с постоянным кодом и при заражении выбирают один из них. Такие вирусы являются “полу-полиморфными” и носят также название “олигоморфные” (oligomorphic). Примеры: “Cheeba”, “Slovakia”, “Whale”.

Уровень 2: расшифровщик вируса содержит одну или несколько постоянных инструкций, основная же его часть непостоянна.

Уровень 3: расшифровщик содержит неиспользуемые инструкции – “мусор” типа NOP, CLI, STI и т.д.

Уровень 4: в расшифровщике используются взаимозаменяемые инструкции и изменение порядка следования (перемешивание) инструкций. Алгоритм расшифрования при этом не изменяется.

Уровень 5: используются все перечисленные выше приемы, алгоритм расшифрования непостоянен, возможно, повторное шифрование кода вируса и даже частичное шифрование самого кода расшифровщика.

Уровень 6: permutating-вирусы. Изменению подлежит основной код вируса - он делится на блоки, которые при заражении переставляются в произвольном порядке. Вирус при этом остается работоспособным. Подобные вирусы могут быть незашифрованны.

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

 Уровень 1: для детектирования вируса достаточно иметь несколько масок.

 Уровень 2: детектирование по маске с использованием “wildcards”.

 Уровень 3: детектирование по маске после удаления инструкций – “мусора”.

 Уровень 4: маска содержит несколько вариантов возможного кода, т.е. становится алгоритмической.

 Уровень 5: невозможность детектирования вируса по маске.

Недостаточность такого деления продемонстрирована в вирусе 3-го уровня полиморфичности, который так и называется – “Level3’. Этот вирус, являясь одним из наиболее сложных полиморфных вирусов, по приведенному выше делению попадает в Уровень 3, поскольку имеет постоянный алгоритм расшифровки, перед которым стоит большое количество команд- “мусора”. Однако в этом вирусе алгоритм генерирования “мусора” доведен до совершенства: в коде расшифровщика могут встретиться практически все инструкции процессора i8086.

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

Изменение выполняемого кода

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

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

Еще реже этот прием встречается у файловых вирусов - ведь им приходится полностью менять свой код, а для этого требуются достаточно сложные алгоритмы. На сегодняшний день известны всего два таких вируса, один из которых (“Ply”) случайным образом перемещает свои команды по своему телу и заменяет их на команды JMP или CALL. Другой вирус (“TMC”) использует более сложный способ - каждый раз при заражении вирус меняет местами блоки своего кода и данных, вставляет “мусор”, в своих ассемблерных инструкциях устанавливает новые значения смещений на данные, меняет константы и т.д. В результате, хотя вирус и не шифрует свой код, он является полиморфным вирусом - в коде не присутствует постоянного набора команд. Более того, при создании своих новых копий вирус меняет свою длину.



Рекомендуем почитать

Наверх