Технологии сокрытия вирусов

Аватар пользователя aframiy
Автор: Агурьянов Игорь, CARCADE Leasing
(0)
()
Гонка вооружений между вирусописателями и антивирусными компаниями, наверное, не кончится никогда. Под катом описан ряд технологий, которые использовались и использовались вирусописателями для сокрытия своих творений от антивирусов и технологии, которые появились для обнаружения таких «представителей класса». Старался описать в исторической последовательности:

Технология

Описание

Появившийся метод обнаружения

Стелс-вирусы

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

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

Обфускация («запутывание кода»)

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

Добавление новых сигнатур в базы

Упаковка

Код вредоноса шифруется и исполняется после распаковки декриптором

Добавление новых сигнатур в базы

Генерация мусора

Код вредоноса «разбавляется» бесполезными инструкциями, которые затрудняют

Добавление новых сигнатур в базы

Пермутация

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

Добавление новых сигнатур в базы

Полиморфизм («вирусы-призраки»)

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

Эвристика (поведенческий анализ), добавление в базы АВ сигнатур декриптора

Метаморфизм («MtE-вирусы»)

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

Эвристика и эмуляция («Песочница»)

«Антипесочница»

Непроявление деструктивных свойств в виртуальной среде, либо отложенное проявление свойств

Детектирование исполнения shell-кода в песочнице (например, изменение CPU)


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


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


P.S. Кстати, про «антипесочницу» CheckPointa писал недавно тут.
 
Комментарии в Facebook
 

Вы сообщаете об ошибке в следующем тексте:
Нажмите кнопку «Сообщить об ошибке», чтобы отправить сообщение. Вы также можете добавить комментарий.