Файловая система
В конечном итоге, за редкими исключениями, чтобы запуститься, вирусу необходимо сохранить свой код на диске компьютера-жертвы в виде файла — зараженного файла, в случае чистого вируса, либо полностью вредоносной программы, в случаях червей и большинства троянов. Таковы особенности архитектуры ОС Microsoft Windows - поместить вирусный код непосредственно в память компьютера, не затрагивая файловую систему, можно только используя уязвимости в сетевых службах и программах, установленных на компьютере.
Соответственно, основные средства из состава антивирусного комплекса для рабочих станций Windows направлены на предотвращение записи вредоносного кода на диски компьютера, на предотвращение запуска вредоносных программ, а также на проверку хранящихся на дисках (постоянных, сменных, сетевых) файлов - нет ли в них вредоносного кода. Последняя функция нужна для того, чтобы при запуске (или сразу после установки) антивируса удостовериться в отсутствии вирусов на компьютере - функции предотвращения в последствии позволяют сохранить этот status quo.
Как уже отмечалось в классификации антивирусов, средства проверки файловой системы бывают двух видов:
- Сканеры по требованию— запускаются по инициативе пользователя или по расписанию для проверки четко очерченного круга объектов файловой системы
- Сканеры при доступе— проверяют все объекты файловой системы, к которым производится доступ, на чтение/запуск или на создание/запись
Реализация подобных средств может быть различной. Это могут быть независимые модули, либо различные функции одного и того же модуля. Модуль проверки при доступе, который по понятным причинам должен постоянно находиться в памяти компьютера в зависимости от применяемых технологий может быть выполнен в виде приложения, службы или драйвера файловой системы. Эффективность при этом растет в порядке перечисления.
Пример. В текущей версии Антивируса Касперского перехват файловых операций осуществляет драйвер файловой системы, что позволяет обеспечить максимальную надежность и производительность. Проверка же выполняется антивирусной службой, причем как объектов, перехваченных драйвером, так и объектов указанных пользователем для проверки по требованию/расписанию. Это позволяет минимизировать используемые ресурсы памяти, поскольку все проверки выполняются одним процессом, в памяти хранится только одна копия антивирусной базы.
Кроме того, что на момент установки или запуска антивируса вредоносные программы могут находиться на дисках, они могут находиться также и в памяти компьютера. Соответственно, имеется необходимость в проверке памяти. Особенности архитектуры операционной системы Windows таковы, что отслеживать изменения в памяти на лету попросту невозможно. В связи с этим функции проверки памяти выполняются сканером по требованию.
С точки зрения применяемых технологий обнаружения вирусов, основной упор при проверке объектов памяти и файловой системы делается на сигнатурные методы и эвристический анализ. Это и понятно, ведь таким образом обеспечивается максимальная защита от уже известных вирусов, а также защита от новых, еще не известных. Метод поведенческого анализа и блокирования подозрительных действий применялся в прошлом, но показал себя неэффективным из-за большого числа ложных срабатываний: в большинстве случаев вредоносные программы не выполняют никаких особых команд или действий, не свойственных обычным утилитам или службам. Более того, одна и та же программа в зависимости от условий применения может расцениваться как вредоносная или вполне легальная.
Пример. Входящая в состав Windows XP утилита shutdown.exe может с пользой применяться для выключения компьютера по расписанию. Эта же утилита может использоваться в составе вредоносной программы для принудительной перезагрузки без уведомления пользователя. Например, помещение этой утилиты в автозапуск может надолго воспрепятствовать нормальной работе неискушенного пользователя.
Тем не менее, в некоторых специфических случаях применение поведенческого анализа не только оправдано, но и является более эффективным методом предотвращения запуска новых вирусов, чем эвристический анализ.
Пример. До сих пор во многих версиях BIOS можно встретить опцию защиты от вирусов, которая препятствует записи в критические области дисков - в загрузочные сектора и в сам BIOS. В данном случае ключевым является тот факт, что после непродолжительного периода настройки, необходимости в изменении структуры дисков и перепрошивке BIOS уже нет. В любом случае эти действия являются достаточно редкими и выполнение их без ведома пользователя должно по меньшей мере вызывать подозрения.
Стоит сказать, что современные вирусы крайне редко пытаются записать данные в загрузочные сектора или в BIOS. Эпоха загрузочных вирусов давно прошла. Вследствие этого, антивирусные функции также постепенно исчезают из BIOS.
Если в случае исполняемых файлов, подозрительные операции выделить достаточно сложно в силу очень большого разнообразия этих файлов и решаемых ими задач, то сфера применения макросов в документах Microsoft Office и других офисных пакетов, достаточно ограничена - чаще всего они используются для сокращения времени на выполнение рутинных операций или же для придания дополнительной функциональности документам. В большинстве случаев действие макроса распространяется только на документ, в состав которого он входит, а взаимодействие с другими документами чаще всего ограничивается операциями чтения. Следовательно, активные действия связанные с файловыми операциями или с записью в другие документы, могут вызывать обоснованные подозрения.
Пример. В Антивирусе Касперского для Windows Workstations имеется специальный модуль для защиты от макровирусов, который работает по принципу поведенческого блокиратора. Идея та же, что и в случае с функцией поведенческого анализа в BIOS: макровирусу для успешного размножения или выполнения серьезных деструктивных функций приходится использовать функции работы с внешними файлами, функции работы с макросами и другие функции, нечасто (если не сказать крайне редко) встречающиеся в обычных макросах, применяемых для автоматизации регулярно выполняемых действий. Соответственно, при обнаружении подозрительных макрокоманд Антивирус Касперского имеет возможность заблокировать их выполнение либо полностью прекратить работу макроса.
Нерассмотренным остался метод анализа изменений (контрольных сумм). Здесь необходимо отметить, что для обнаружения вирусов этот метод в современных условиях уже не годится. Даже в системном каталоге Windows количество файлов может достигать нескольких тысяч. При этом обновления ОС и ряда приложений регулярно приводят к изменениям в составе и версиях хранящихся там файлов. Анализ изменений на дисках в целом - задача еще более трудоемкая и плохо автоматизируемая.
Конечно, опытный специалист на основании данных об изменениях в файловой системе мог бы с большой вероятностью определить признаки заражения неизвестным вирусом. Но количество времени, необходимое на такой анализ, делают его с одной стороны невозможным в сколько-нибудь больших сетях, а с другой стороны нерентабельным в сетях небольшого размера или в единичных случаях - из-за стоимости услуг по привлечению высококвалифицированного специалиста.
Пример. В эпоху классических вирусов под Windows и еще раньше в эпоху вирусов под DOS были широко распространены так называемые программы-ревизоры, которые как раз и выполняли расчет и сравнение контрольных сумм файлов на дисках, а также выполняли простейший анализ зафиксированных изменений. Среди продуктов Лаборатории Касперского такой программой был Kaspersky Inspector. Несколько большей известностью пользовался AdInf производства компании "ДиалогНаука". В настоящее время подобные программы исчезли из линеек продуктов всех ведущих производителей.
Тем не менее, даже если анализ контрольных сумм не позволяет определить факт наличия вируса в системе, он позволяет определить факт отсутствия вирусов в файлах, контрольная сумма которых осталась неизменной. Об использовании метода сравнения контрольных сумм в таком качестве будет рассказано при рассмотрении эксплуатационных характеристик антивирусных продуктов.
Почта
Одним из наиболее часто используемых каналов проникновения вредоносных программ по прежнему остается электронная почта. И хотя для предотвращения пересылки зараженных писем имеются специализированные средства антивирусной защиты уровня почтовых систем, существует множество ситуаций, когда такие средства по тем или иным причинам не используются.
Пример. Домашние пользователи и небольшие компании практически никогда не имеют собственного почтового сервера, на который можно было бы установить антивирус для проверки почтовых сообщений. Услуги по доставке почтовых сообщений в таких случаях оказывает провайдер, у которого могут быть не установлены антивирусные средства на почтовых серверах - по причине большого количества подлежащих защите почтовых ящиков и, как следствие, высокой стоимости лицензии.
В связи с этим, антивирус для рабочих станций Windows должен обладать собственными средствами защиты от вирусов, приходящих по почте.
Нужно отметить, что с большинством таких вирусов вполне справляются стандартные средства проверки файловой системы, поскольку находящийся во вложении вирус, даже будучи запущенным пользователем, все равно сначала сохраняется на диск во временный каталог, и только потом загружается в память. В момент сохранения он будет обнаружен и обезврежен средством проверки при доступе.
Для чего же в таком случае нужны и нужны ли вообще дополнительные средства проверки почты? В первую очередь для повышения производительности и надежности. Не секрет, что наибольшее "замедление" работы компьютера связано именно с работой постоянной защиты файловой системы. По этой причине многие пользователи отключают эту защиту вовсе или неоправданно снижают уровень защиты в настройках. Модуль защиты почты серьезного влияния на производительность не оказывает и может работать едва ли не с максимальными настройками, перекрывая один из наиболее опасных, с точки зрения распространения вирусов, потоков.
Пример. В Антивирусе Касперского для Windows Workstations задача постоянной защиты файлов не проверяет архивы - с одной стороны для повышения производительности, а с другой, по описанной выше причине - файлы внутри архивов перед запуском все равно будут распакованы во временный каталог, обнаружены и обезврежены. Аналогичным образом построили защиту и другие производители антивирусных средств. Задача же постоянной защиты почты, напротив, по умолчанию архивы проверяет, а значит, учитывая тенденцию по распространению вредоносных программ в заархивированном виде, именно она обеспечит предотвращение проникновения вируса на компьютер.
В силу того, что задача постоянной защиты файлов не проверяет архивы, только задача постоянной защиты почты может помешать отправке письма с инфицированным вложением, что также немаловажно.
По сути, локальный модуль проверки почтовых сообщений играет роль отсутствующего антивируса на почтовом сервере - он снижает нагрузку на другие модули проверки и уменьшает общую вероятность заражения. Например, некоторые черви используют уязвимости в почтовых клиентах для автоматического запуска зараженного вложения. Если проверка файловой системы по каким-то причинам отключена, получение такого червя означало бы немедленное заражение, не будь в составе антивирусного комплекса модуля проверки почты.
Кроме этого, не следует забывать, что любой вирус, даже находящийся в архиве или почтовой базе, представляет собой потенциальную угрозу. Если вирус уже так или иначе проник на компьютер и ожидает, что пользователь сам его запустит, это рано или поздно может случиться. Полная проверка компьютера проводится, как правило, не так часто: раз в неделю, а то и реже, чтобы можно было быть уверенным в своевременном обнаружении и удалении вируса внутри архива и/или почтовой базы. А значит, есть шанс, что вирус будет запущен пользователем хотя бы по причине небрежности или случайной ошибки. Использование модуля проверки почты позволяет не допустить появления в почтовой базе зараженных объектов и предотвратить возникновение потенциально опасной ситуации.
Есть и еще одна опасность. Как известно, в ответ на то, что антивирусы стали проверять заархивированные вложения, многие вредоносные программы стали распространяться в защищенных паролем архивах, указывая пароль в теле сообщения. В отсутствие модуля проверки почты, такие письма будут беспрепятственно попадать в почтовый ящик с все тем же риском быть запущенными. Но в этом случае даже проверка по требованию может не обнаружить такие вирусы, если не включена или не реализована проверка в архивах, защищенных паролем.
Пример. В Антивирусе Касперского реализован автоматический механизм обнаружения паролей в теле письма, как при проверке почтовых сообщений на лету, так и при проверке почтового ящика по требованию (по расписанию).
С точки зрения технологий, используемых в модулях проверки почты, можно выделить два направления в которых ведутся разработки:
- Интеграция с почтовыми клиентами
- Перехват соединений по почтовым протоколам
Преимущества первого способа состоят в том, что проверяются все почтовые сообщения, обрабатываемые почтовым клиентом, независимо от используемых протоколов. С другой стороны, обеспечить необходимую интеграцию со всеми возможными почтовыми клиентами - задача практически неразрешимая. Поэтому используется второй способ, когда модуль проверки перехватывает соединения по некоторым почтовым протоколам, вычленяет из потока данных объекты, которые могут быть заражены, и проверяет их.
Каждый из способов имеет свои преимущества и недостатки. Интеграция обычно поддерживается с очень ограниченным числом почтовых клиентов, например, только с клиентом Microsoft Outlook. С другой стороны, способ перехвата соединений также ограничен в числе поддерживаемых протоколов - как правило, это только протоколы SMTP и POP.
Пример. Учитывая ограничения каждого из способов реализации модуля проверки почтовых сообщений, в Антивирусе Касперского для Windows Workstations применяются одновременно оба способа: интеграция с Microsoft Outlook и перехват сообщений, отправляемых по протоколу SMTP и получаемых по протоколу POP v3.
Дата добавления: 2015-06-12; просмотров: 593;