Виды антивирусных программ и их характеристика. Антивирусные программы. Сущность и проявление компьютерных вирусов

Различают следующие виды антивирусных программ:

Программы-фаги (сканеры);

Программы-ревизоры (CRC-сканеры);

Программы-блокировщики;

Программы-иммунизаторы.

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

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

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

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

Наиболее известные программы-фаги: Aidstest, Scan, Norton AntiVirus, Doctor Web. Учитывая, что постоянно появляются новые вирусы, программы-фаги быстро устаревают, и требуется регулярное обновление версий.

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

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

К числу CRC-сканеров относится широко распространенная в России программа ADinf (Advanced Diskinfoscope) и ревизор AVP Inspector. Вместе с ADinf применяется лечащий модуль ADinf Cure Module (ADinfExt), который использует собранную ранее информацию о файлах для их восстановления после поражения неизвестными вирусами. В состав ревизора AVP Inspector также входит лечащий модуль, способный удалять вирусы.

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

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

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

Программы-иммунизаторы - это программы, предотвращающие заражение файлов. Иммунизаторы делятся на два типа:

· иммунизаторы, сообщающие о заражении,

· и иммунизаторы, блокирующие заражение каким-либо типом вируса.

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

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

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

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

Различают следующие виды антивирусных программ (рис. 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 Commander, либо в специальный командный файл.

Командная строка для запуска Dr. Web выглядит следующим образом:

DrWeb [диск: [путь] ] [ключи]

где диск:

X: - логическое устройство жесткого диска или физическое устройство гибкого диска, например F: или А:,

* - все логические устройства на жестком диске,

путь - это путь или маска требуемых файлов.

Наиболее важные ключи:

/AL - диагностика всех файлов на заданном устройстве;

/CU[P] - "лечение" дисков и файлов, удаление найденных вирусов;

Р - удаление вирусов с подтверждением пользователя;

/DL - удаление файлов, корректное лечение которых невозможно;

/НА[уровень] - эвристический анализ файлов и поиск в них неизвестных вирусов, где уровень

может принимать значения 0, 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

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

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

Различают детекторы универсальные и специализированные.

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

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

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

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

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

Очень мощными и эффективными антивирусными средствами являются фаги Doctor Web (созданный И. Даниловым) и KAV (автор Е. Касперский).

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

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

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

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

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

· Попытки коррекции файлов с расширениями СОМ и ЕХЕ;

· Изменение атрибутов файлов;

· Прямая запись на диск по абсолютному адресу;

· Запись в загрузочные сектора диска.

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

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

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

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

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

Антивирусные программы-ревизоры позволяют обнаружить вирус. Чаще всего обнаружением вируса дело и заканчивается. Существует блок лечения для популярного антивируса-ревизора Adinf, так называемый Cure Module, но такой блок позволяет лечить лишь те файлы, которые не были заражены на момент создания базы данных программы. Однако обнаружить вирус на компьютере (или даже подозрение на него) антивирусы-ревизоры могут с большой степенью надежности. Обычно наиболее оптимальным является связка полифаг и ревизор. Ревизор служит для обнаружения факта заражения системы. Если система заражена, то в дело пускается полифаг. Если же ему не удалось уничтожить вирус, то можно обратиться к разработчику антивирусных средств - скорее всего, на компьютер попал новый, неизвестный разработчикам вирус.

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

Контроль оперативной памяти. Эта стадия проверки включает в себя процедуры обнаружения следов активных загрузочных и stealth-вирусов в памяти компьютера. Если такие алгоритмы будут найдены, выдается соответствующее предупреждение. Обычно сначала программа ищет уже знакомые вирусы. Далее программа проверяет, изменился ли обработчик Intl3h. Если он изменился, то с вероятностью 90 % можно сказать, что компьютер инфицирован загрузочным вирусом (загрузочные вирусы вынуждены перехватывать это прерывание с тем, чтобы после своей активизации передать управление «нормальному» загрузочному сектору и система загрузилась без сбоев). Ревизор выдает предупреждение об этом и сообщает адрес в памяти, по которому находится новый обработчик Intl3h. В принципе информация о местонахождении обработчика необходима программистам и системным администраторам, а рядовому пользователю следует обратить внимание на предупреждение. Даже если ревизор устанавливается на уже зараженный вирусом компьютер и реальный адрес обработчика Int 13h маскируется вирусом, в 85 % случаев ревизору удается обнаружить истинный адрес обработчика Intl3h в BIOS и работать, используя его. Если по каким-либо причинам ревизору не удалось получить реальный адрес обработчика, то выдается предупреждение. Истинный адрес обработчика прерывания достигается путем пошагового просмотра тела вируса (по алгоритму своей работы загрузочный вирус вынужден, в конце концов, передавать управление оригинальному обработчику).



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

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

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

Необходимо дать некоторые пояснения, связанные с обнаружением загрузочных вирусов. В случае если система поражена загрузочным вирусом, то именно ему передается управление при попытке загрузиться с пораженного диска. В этом опасность вируса - если поражен жесткий диск, то управление вирусу будет передаваться при каждом включении компьютера. Загрузочные вирусы в чистом виде передаются исключительно через дискеты, причем заражение осуществляется при попытке загрузиться с пораженной дискеты. Со временем использование дискет вообще и загрузочных дискет, в частности, сократилось до минимума. Однако способ захвата управления оказался столь удобен, что в настоящее время очень распространены вирусы, которые могут поражать как файлы, так и загрузочные сектора. Попав на «чистый» компьютер, такие вирусы первым делом поражают главную загрузочную запись. Однако методы обнаружения именно загрузочных вирусов в настоящее время крайне эффективны и приближаются к 100 % надежности.

Чтобы понять, как происходит обнаружение вируса, рассмотрим обнаружение такого вируса «вручную». Произведем загрузку с чистой дискеты (при этом прерывание 13h гарантировано не будет перехвачено загрузочным вирусом) и рассмотрим сектор 0/0/1 винчестера (это физический адрес сектора главной загрузочной записи). Если винчестер разделен (при помощи fdisk) на логические диски, то код занимает приблизительно половину сектора и начинается с байтов FAh33hCOh (вместо 33h иногда может быть 2Bh). Заканчиваться код должен текстовыми строками типа «Missing operating system». В конце сектора размещаются внешне разрозненные байты таблицы разделов. Нужно обратить внимание на размещение активного раздела в таблице разделов. Если операционная система расположена на диске С, а активны 2-й, 3-й или 4-й разделы, то вирус мог изменить точку старта, сам разместившись в начале другого логического диска (заодно нужно посмотреть и там). Но также это может говорить о наличии на машине нескольких операционных систем и какого-либо boot-менеджера, обеспечивающего выборочную загрузку. Проверяем всю нулевую дорожку. Если она чистая, то есть секторы содержат только байт-заполнитель, все в порядке. Наличие мусора, копий сектора 0/0/1 и прочего может говорить о присутствии загрузочного вируса. Впрочем, антивирусы при лечении загрузочных вирусов лишь «обезглавливают» противника (восстанавливают исходное значение сектора 0/0/1). Проверяем boot-сектор MS-DOS, он обычно расположен в секторе 0/1/1. Его внешний вид для сравнения можно найти на любой «чистой» машине. Примерно таким же способом действуют и программы-ревизоры. Их особенность в том, что они не могут судить об изначальной «чистоте» опе­ративной памяти, поэтому чтение Master Boot Record происходит тремя различными способами:

● (bios) - прямым обращением в BIOS;

● (il3h) - чтением через BIOS-прерывание Intl3h;

● (i25h) - чтением средствами операционной системы (прерывание Int25h).

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

Аналогичным образом проводится проверка и простого (не главного) загрузочного сектора.

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

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

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

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

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

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

● попытки коррекции файлов с расширениями СОМ, ЕХЕ;

● изменение атрибутов файла;

● прямая запись на диск по абсолютному адресу;

● запись в загрузочные сектора диска;

При попытке какой-либо программы произвести указанные действия «сторож» посылает пользователю сообщение и предлагает запретить или разрешить соответствующее действие. Программы-фильтры весьма полезны, так как способны обнаружить вирус на самой ранней стадии его существования до размножения. Однако они не «лечат» файлы и диски. Для уничтожения вирусов требуется применить другие программы, например фаги. К недостаткам программ-сторожей можно отнести их «назойливость» (например, они постоянно выдают предупреждение о любой попытке копирования исполняемого файла), а также возможные конфликты с другим программным обеспечением. Примером программы-фильтра является программа Vsafe, входящая в состав пакета утилит MS DOS.

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

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

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

Сканирование памяти и содержимого дисков по расписанию;

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

Выборочное сканирование файлов с измененными атрибутами;

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

Блокировка и/или удаление выявленных вирусов;

Восстановление зараженных информационных объектов;

Принудительная проверка подключенных к корпоративной сети компьютеров;

Удаленное обновление антивирусного программного обеспечения и баз данных с информацией о вирусах, в том числе автоматическое обновление баз данных по вирусам через Интернет;

Фильтрация трафика Интернета на предмет выявления вирусов в передаваемых программах и документах;

Выявление потенциально опасных Jаvа-апплетов и модулей АсtivеХ;

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

К наиболее мощным и популярным на сегодняшний день в России антивирусным пакетам относятся:

- Dосtоr Wеb (в документации часто именуется более кратко - Dr Wеb) программа российской компании;

- Антивирус Касперского (в документации именуется более кратко - АVР) разработка еще одной российской фирмы

Nоrtоn АntiVirus корпорации Simаntес;

МсАfее VirusScаn компании Nеtwоrk Аssосiаtеs;

Раndа АntiVirus.

Nоd32 АntiVirus.

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

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

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

Сканер

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


Программы-детекторы

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

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

Программы-доктора (фаги)

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

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

Программы-ревизоры

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

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

Программы-филътры (сторожа)

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

Такими действиями могут являться:

Попытки коррекции файлов с расширениями СОМ и ЕХЕ;

Изменения атрибутов файлов;

Прямая запись на диск по абсолютному адресу;

Запись в загрузочные сектора диска;

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

Вакцины (иммунизаторы)

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

1. Признаки заражения компьютера?

2. Косвенные признаки заражения компьютера?

3. Действия при появлении признаков заражения вредоносной программой?

4. Источники компьютерных вирусов?

5. Глобальные сети и электронная почта как источник компьютерных вирусов?

6. Электронные конференции как источник компьютерных вирусов?

7. Локальные сети как источник компьютерных вирусов?

8. Пиратское программное обеспечение как источник компьютерных вирусов?

9. Компьютеры общего пользования как источник компьютерных вирусов?

10. Ремонтные службы как источник компьютерных вирусов?

11. Основные правила защиты от компьютерных вирусов?

12. Антивирусные программы?

13. Виды антивирусных программ?

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

15. К наиболее мощным и популярным на сегодняшний день в России антивирусным пакетам относятся?

16. Принцип работы антивирусного сканера?

17. Принцип работы антивирусных программ-детекторов?

18. Принцип работы антивирусных программ-докторов (фагов)?

19. Принцип работы антивирусных программ-ревизоров?

20. Принцип работы антивирусных программ-фильтров (сторожей)?

21. Принцип работы вакцинаторов (иммунизаторов)?