Технологии обнаружения вредоносного кода
Самая первая технология поиска вредоносных программ была основана на использовании сигнатур — участков кода, однозначно идентифицирующих ту или иную вредоносную программу. По мере того, как эволюционировали вирусы, усложнялись и развивались технологии их детектирования. Все эти продвинутые технологии — разные виды «эвристик» и «поведенческих анализаторов» — можно обобщенно назвать «несигнатурными».
О сигнатурных технологиях сказать уже практически нечего ввиду их примитивности и однозначности. В то же время пользователи плохо ориентируются в несигнатурных технологиях. Что скрывается под названиями «эвристика», «проактивное детектирование», «поведенческое детектирование», «HIPS», как перечисленные технологии соотносятся друг с другом, каковы преимущества и недостатки каждой из них?
Модель системы защиты от вредоносных программ
В любой защитной технологии можно выделить два компонента: технический и аналитический. Эти компоненты не обязаны быть четко разграничены на уровне модулей или алгоритмов, но на функциональном уровне они различимы.
Технический компонент — это совокупность программных функций и алгоритмов, обеспечивающих аналитический компонент данными для анализа. В качестве таковых могут выступать, к примеру, байтовый код файла, текстовые строчки внутри файла, единичное действие программы в рамках операционной системы или целая цепочка таких действий.
Аналитический компонент — это система принятия решения. Это алгоритм, который анализирует имеющиеся в его распоряжении данные и выносит о них некое суждение. В соответствии с этим суждением антивирус (либо другое защитное ПО) предпринимает установленные его политикой безопасности действия: оповещает пользователя, запрашивает у него дальнейшие указания, помещает файл в карантин, блокирует несанкционированное действие программы и т.д.
Для примера рассмотрим классическую защиту от вредоносных программ, основанную на сигнатурном детектировании. В ней в качестве технического компонента выступает система получения информации о файловой системе, файлах и их цифровом содержимом, а в качестве аналитического — простая операция сравнения байтовых последовательностей. То есть, если говорить упрощенно, на входе у аналитического компонента — код файла, а на выходе — решение, является ли данный файл вредоносным.
В рамках описанной модели любая система защиты может быть представлена как «комплексное число» — как связка двух независимых объектов: технического и аналитического компонентов определенного типа. Анализируя технологии таким образом, легко увидеть их соотношение, их принципиальные плюсы и минусы. И, в частности, с помощью этой модели удобно разрешить путаницу в определениях технологий. Например, ниже будет показано, что «эвристика» как способ принятия решений — лишь разновидность аналитического компонента, а не самостоятельная технология. А HIPS (Host Intrusion Prevention System) — лишь разновидность технического компонента, способ сбора данных. Как следствие, данные термины, во-первых, формально не противоречат друг другу, а во-вторых, не полностью характеризуют технологию, в описании которой встречаются: говоря об эвристике, мы не уточняем, по каким именно данным производится эвристический анализ, а говоря о HIPS-системе — ничего не знаем о том, по какому принципу в ней выносится вердикт.
Более подробно эти технологии будут обсуждаться в соответствующих разделах, а пока рассмотрим сами принципы, на которых основана любая технология поиска вредоносного кода: технические — как способы сбора информации, и аналитические — как способы ее обработки.
- Средства удаленного управления
- Классификация
- Средства удаленного администрирования
- Семейство unix
- Семейство Windows
- Средства удаленного управления рабочим столом
- Практика
- Виртуальные машины
- История и развитие
- Типы виртуализации
- Практика
- Резервное копирование и синхронизация
- Резервное копирование информации
- Синхронизация данных
- Типовые задачи синхронизации
- Реализации к рассмотрению
- Кластеризация
- Основные положения
- Отказоустойчивый кластер
- Вычислительный кластер
- Реализации к рассмотрению
- Облачные вычисления
- Основные положения
- Облачное хранилище данных
- Образы и развертывание системы
- Образы системы – технологии резервирования данных
- Технологии развертывания операционных систем
- Реализации к рассмотрению
- Средства антивирусной и сетевой защиты
- Технологии обнаружения вредоносного кода
- Технический компонент
- Аналитический компонент
- Плюсы и минусы способов обнаружения вредоносного кода
- Брандмауэры
- Общее описание брандмауэров
- Функции брандмауэров
- Недостатки брандмауэров
- Общие принципы настройки Firewall
- Обслуживание систем
- Дефрагментация диска
- Восстановление информации на жестком диске
- Восстановление данных с работоспособного жесткого диска
- Восстановление данных с неработоспособного жесткого диска
- Аппаратное обеспечение для восстановления данных
- Системы контроля версий
- Общие положения
- Типичный порядок работы с системой
- История и статус
- Недостатки
- Возможности
- Основные концепции
- Недостатки
- Использование Subversion
- Возможности
- Особенности, преимущества и недостатки