Олифер В.Г., Олифер Н.А. - Компьютерные сети. Принципы, технологии, протоколы (4-ое изд.) - 2010 - обработка (953099), страница 220
Текст из файла (страница 220)
Протоколы защищенного канала (см. далее) типа В В Ь помочь здесь не могут, так как позволяют удостоверить только аутентичность сервера. Суть технологии аугентикода (ацг(тепс!себе), разработанной Мгсгозой, состоит в следующем. Организация, желающая подтвердить свое авторство на программу, должна встроить в распространяемый код так называемый подписывающий блок (рис. 24.20). Этот блок состоит из двух частей. Первая часть — сертификат этой организации, полученный обычным образом от какого-либо сертифицирующего центра.
Вторую часть образует зашифрованный дайджест, полученный в результате применения односторонней функции к распространяемому коду. Шифрование дайджеста выполняется с помощью закрытого ключа организации. Закрыты оргвниэвции-лрси Рис. 24.20.
Схема получения аутентикода Антивирусная защита Антивирусная защита используется для профилактики и диагностики вирусного эара1кения, а также для восстановления работоспособности пораженных вирусами информационных систем. Термин «вирусы» толкуется здесь расширенно — это не только собственно вирусы, но и другие рэзновндности вредоносных программ, такие как черви, троянские и шпионские программы.
Глава 24. Сетевая безопасность Профилактика заключается в проверке файлов на присутствие вирусов перед их загрузкой на защищаемый компьютер и тем более перед их выполнением на этом компьютере. Диагностический характер носит процедура проверки файлов уже находящихся в памяти компьютера. После констатации вирусного заражения наступает этап восстановления «здоровья» вычислительной системы, который может потребовать как весьма жестких мер, когда из системы удаляются все зараженные файлы, так н не столь жестких, когда файлы исправляют, удаляя из них вредоносный код.
Большинство антивирусных программ в той или иной степени расходуют ресурсы тестируемой системы. Иногда это может вызвать заметное снижение скорости выполнения пользовательских приложений. Однако это не должно быть причиной отключения антивирусных проверок, так как ущерб от «работы» вирусов, как правило, с лихвой превышает затраты вычислительных ресурсов и времени пользователя (администратора) на борьбу с вирусами.
Для защиты от вирусов используют трн группы методов: Ы Методы, основанные на анализе содержимого файлов (как файлов данных, так и файлов с кодами команд). К этой группе относятся сканирование сигнатур вирусов, а также проверка целостности и сканирование подозрительных команд. Ю Методы, основанные на отслеживании поведения программ при их выполнении.
Эти методы заключаются в протоколировании всех событий, угрожающих безопасности системы и происходящих либо при реальном выполнении проверяемого кода, либо при его программной эмуляции. С1 Методы рвгламвнгаации порядка работы с файлами и программами. Эти методы относятся к административным мерам обеспечения безопасности. Один из наиболее распространенных методов этой группы состоит в том, что в системе (компьютере илн корпоративной сети) выполняются только те программы, запись о которых присутствует в списке программ, разрешенных к выполнению в данной системе. Этот список формируется администратором сети из проверенного программного обеспечения. Сканирование сигнатур Снгнатуре вирусе — ето уникальная пооледоеательность байтов, которая всегда прнсугствует е определенном анде вирусов н по которой этот внд вируса можно с большой вероятностью опознать.
Из этого определения следует основная идея метода сканирования сигнатур. Для каждого вновь обнаруженного вируса специалистами выполняется анализ кода, на основании которого определяется сигнатура. Полученный кодовый фрагмент помещают в специальную базу данных вирусных сигнатур, с которой работает антивирусная программа. К размеру сигнатуры предъявляются противоречивые требования. С одной стороны, для того чтобы повысить вероятность правильной диагностики вируса, сигнатура должна быть достаточно длиной — как минимум 8 — 12 байт, а еще лучше 64 байта. С другой стороны, учитывая огромное число существующих к настоящему моменту вирусов (сотни тысяч), увеличение длины сигнатуры увеличит и без того большой объем базы данных сигнатур. Система сканирования сигнатур работает следующим образом. Содержимое тестируемого файла сравнивается с каждой из заданных в базе данных этой системы сигнатур. Обна- 873 Антивирусная защита ружив совпадение, система автоматически ставит подозрительный файл на карантин, то есть блокирует файл от возможного использования.
Одним из надежных способов такого блокирования является временное шифрование зараженного файла. ПРИМЕЧАНИЕ Различные методы шифрования н упаковки вредоносных программ используют н хакеры. После шифрования или архивирования даже известный вирус становится «невидимым» для обычного сканера сигнатур. Затем система сканирования оповещает своего пользователя об обнаружении зараженных файлов и о своих действиях, предпринятых по отношению к ним, а также предлагает пользователю выбрать тот или иной вариант дальнейших действий. В частности, она может предложить удалить файл или попытаться восстановить файл путем удаления вредоносного кода и, возможно, реконструкции его исходной структуры.
Процедура сканирования может выполняться как для отдельных файлов, так и для содержимого всего диска, как регулярно, в соответствии с заранее заданным расписанием, так и время от времени по инициативе пользователя. Некоторые антивирусные системы выполняют сканирование файлов синхронно с выполнением тех или иных операций с файлами: открытием, закрытием файлов или отправкой их в виде почтовых вложений; иногда такая тактика помогает быстрее обнаружить появление вируса. К достоинствам данного метода относят относительно низкую долю ложных срабатываний.
Главным же недостатком является принципиальная нввозиолсиость обнаружить присутспшив в сисяммв нового вируса, для которого еще нет сигнатуры в базе данных антивирусной программы. Кроме того, создание базы данных сигнатур является делом очень трудоемким, а ее эксплуатация требует постоянного оперативного обновления, что может представлять проблему как для производителей, так и для пользователей антивирусных средств. Метод контроля целостности Метод контроля целостности основывается на том, что любое неожиданное и беспричинное изменение данных на диске является подозрительным событием, требующим особого внимания антивирусной системы. Действительно, любой вирус обязательно оставляет свидетельства своего пребывания на диске. Такими «следами» может быть искажение данных в уже существующих файлах или появление новых исполняемых файлов.
Факт изменения данных — нарушение цвлостноппи — легко устанавливается путем сравнения контрольной суммы (или дайджеста), заранее подсчитанной для исходного состояния тестируемого кода, и контрольной суммы (дайджеста) текущего состояния тестируемого кода. Если они не совпадают, значит, целостность нарушена и имеются все основания провести для этого кода дополнительную проверку, например, путем сканирование вирусных сигнатур. В отличие от сканирования сигнатур метод контроля целостности позволяет обнаруживать следы деятельности любых, в том числе неизвестных, вирусов, для которых в базе данных еще нет сигнатур. Кроме того, он работает быстрее, поскольку операции подсчета контрольных сумм требуют меньше вычислений, чем операции сравнения кодовых фрагментов. вт4 Глава 24. Сетевая безопасность Сканирование подозрительных команд В арсенале вирусных программ есть особенно опасные средства. Примером такого грозного оружия может служить код, вызывающий форматирование жесткого диска.
Каждый случай обнаружения такого кода должен переводить систему в состояние тревоги, или, по крайней мере, система должна уведомить пользователя об этом событии и попросить подтверждения, прежде чем выполнить операцию, которая может привести к катастрофическим последствиям. Известно, что вирусные программы разных видов могут содержать функционально подобные (но программно не идентичные) блоки. Например, многие виды вирусов содержат функцию внедрения в исполняемый код.
Для этого они сначала отыскивают файлы с расширениями ехе, а затем выполняют для них операции открытия и записи. И хотя совокупность этих действий может быть реализована разными кодовыми последовательностями, ее все же можно характеризовать некоторыми общими признаками, которые могут стать опознавательным знаком для функции внедрения вируса. Если в результате сканирования в файле обнаруживают некоторое число подозрительных команд и/или признаков подозрительных кодовых последовательностей, то делается предположение о вредоносной сущности файла и предпринимаются дополнительные действия по его проверке.
Этот метод обладает хорошим быстродействием, но довольно часто он не способен выявлять новые вирусы. Отслеживание поведения программ Принципиально другим подходом по сравнению с методами сканирования содержимого файлов являются методы, основанные на анализе поведения программ во время их выполнения. Этот метод обнаружения вирусов можно сравнить с поимкой преступника «за руку» на месте преступления. Тестируемую программу запускают на выполнение, инструкцию за инструкцией, но все ее подозрительные действия контролируются и протоколируются антивирусной системой.