11

Теория Системное программное обеспечение компьютера Cервисное программное обеспечение в среде MS DOS Антивирусные программные средства

## 11.3. АНТИВИРУСНЫЕ ПРОГРАММНЫЕ СРЕДСТВА

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

- ### Программы обнаружения и защиты от вирусов

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

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

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

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

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

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

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

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

После запуска программы, содержащей вирус, становится возможным заражение других файлов. Наиболее часто вирусом заражаются загрузочный сектор диска и исполняемые файлы, имеющие расширения ЕХЕ, .СОМ, 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> [<options>]

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

Основное меню содержит следующие режимы:

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.