logo search
Instrumentalnye_sredstva_informatsionnykh_siste

Плюсы и минусы способов обнаружения вредоносного кода

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

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

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

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

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

Подводя итог: в среднем, чем менее абстрактна защита, тем она безопаснее, но и тем проще ее обойти.

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

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

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

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

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