Что такое эвристика в антивирусе
Перейти к содержимому

Что такое эвристика в антивирусе

  • автор:

Что такое эвристика в антивирусе

В настоящее время информационные угрозы постоянно расширяются. Появляются так называемые киберугрозы и кибератаки. В информационной безопасности появилось новое направление цифровая безопасность (Digital security) цифровая защита (Digital protection) . Это определяет актуальность развития таких методов. Одной из широко распространенных информационных (цифровых) угроз являются компьютерные вирусы. Многие средства информационной безопасности в качестве цифрового метода защиты применяют технологию эвристического анализа программного кода. Эвристический анализ нередко используется совместно с сигнатурным сканированием для поиска сложных шифрующихся и полиморфных вирусов.

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

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

Другим распространённым методом эвристического анализа, применяемым большой группой антивирусов, является декомпиляция подозрительной программы и анализ её исходного кода. Исходный код подозрительного файла проходит сверку и сравнение с исходным кодом известных вирусов и образчиков вирусной активности. В случае, если определённый процент исходного кода идентичен коду известного вируса или вирусной активности, файл отмечается как подозрительный, о чем оповещается пользователь

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

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

Чрезмерная подозрительность эвристического анализатора может вызывать ложные срабатывания при наличии в программе фрагментов кода, выполняющего действия и/или последовательности, в том числе и свойственные некоторым вирусам. В частности, распаковщик в файлах, запакованных PE-упаковщиком (Win)Upack вызывает ложные срабатывания целого ряда антивирусных средств, де-факто не признающих такой проблемы.

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

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

Эвристический анализатор AVZ

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

Однако эта база данных становится уязвимым местом антивируса — он может обнаруживать только вирусы, описанные в его базе данных. Частично устранить эту проблему позволяет эвристический анализатор — специальная подсистема антивируса, которая пытается обнаружить новые разновидности вирусов, не описанные в базе данных. Кроме вирусов эвристический анализатор AVZ пытается обнаружить шпионское ПО, Hijacker и троянские программы.

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

Для поиска шпионского ПО, RootKit и Hijacker наиболее эффективен эвристический анализ не отдельно взятых файлов на диске, а всей системы в целом. При этом анализируется совокупность данных в реестре, файлов на диске, процессов и библиотек в памяти, прослушиваемых TCP и UDP портов, активных сервисов и загруженных драйверов.

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

В большинстве антивирусов (в том числе и в AVZ) имеется возможность регулировки чувствительности эвристического анализатора. При этом всегда возникает противоречие — чем выше чувствительность, тем выше вероятность обнаружения эвристикой неизвестного вредоносного объекта. Но при увеличении чувствительности возрастает вероятность ложных срабатываний, поэтому нужно искать некую «золотую середину».

Эвристический анализатор имеет несколько ступеней чувствительности и два особых режима:

· блокировка работы эвристического анализатора. При этом анализатор полностью выключается из работы. В AVZ кроме регулировки уровня чувствительности эвристического анализатора есть возможность включать и выключать эвристический анализ системы;

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

Основные сообщения эвристического анализатора AVZ приведены в следующем списке:

· » Имя файла >>> подозрение на имя_вируса (краткие данные об объекте) » Подобное сообщение выдается при обнаружении объекта, который по мнению AVZ похож на известный вредоносный объект. Данные в скобках позволяют разработчику найти в базе антивируса запись, которая привела к выдаче данного сообщения;

· » Имя файла >>> PE файл с нестандартным расширением » — это означает, что обнаружен программный файл, но вместо типичного расширения EXE, DLL, SYS он имеет другое, нестандартное расширение. Это не опасно, но многие вирусы маскируют свои PE файлы, давая им расширения PIF, COM. Данное сообщение выводится в любом уровне эвристики для PE файлов с расширением PIF, COM , для остальных — только при максимальном уровне эвристики;

· » Имя файла >>> В имени файла больше 5 пробелов » — множество пробелов в имени файла — это редкость, однако многие вирусы применяют пробелы для маскировки реального расширения, создавая файлы с именами типа «photo.jpeg .exe»;

· » Имя файла >>> Обнаружена маскировка расширения » — аналогично предыдущему сообщению, но выдается при обнаружении более 15 пробелов в имени;

· » Имя файла >>> файл не имеет видимого имени » — выдается для файлов, не имеющих имени (т.е. имя файла имеет вид «.exe» или «.pif»);

· » Процесс Имя файла может работать с сетью » — выводится для процессов, которые используют библиотеки типа wininet.dll, rasapi32.dll, ws2_32.dll — т.е. системные библиотеки, содержащие функции для работы с сетью или управления процессом набора номера и установления соединения. Данная проверка производится только при максимальном уровне эвристики. Факт использования сетевых библиотек естественно не является признаком вредоносности программы, но обратить внимание на непонятные процессы в этом списке стоит;

После сообщения может выводиться цифра, которая представляет собой степень опасности в процентах. На файлы, для которых выдана степень опасности более 30, следует обратить особое внимание.

Что такое эвристический вирус и как его удалить

Часто возникает путаница между эвристическим анализом и тем, что обычно называют «эвристическим вирусом». Эвристика более точно описывается как эвристический анализ – метод, в котором обнаруживается опасный код. Термин «эвристический вирус» часто вводит в заблуждение.

Хотя термин «эвристический вирус» можно связать с методом обнаружения вредоносного кода, он лучше подходит для описания конкретного вируса Heur.Invader – вредоносной программы, предназначенной для изменения системных настроек.

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

Эвристика: подход к обнаружению или вирус?

Обычно эвристика используется в антивирусном программном обеспечении наряду со сканирующими решениями для того, чтобы найти вредоносный код на вашем компьютере. То, что можно назвать “эвристическим вирусом”, — это обнаружение возможных вредоносных программ, троянов или других угроз. Это предварительное предупреждение может появиться в сканировании как “HEUR” и должно рассматриваться как подозрительный код для дальнейшей проверки.

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

Что такое эвристический анализ?

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

Эвристический анализ использует ряд методов для анализа поведения угроз и их уровня опасности, в том числе:

  • Динамическое сканирование: анализ поведения файла в моделируемой среде.
  • Файловый анализ: анализ цели файла, направлений его действия и предназначения.
  • Мультикритериальный анализ (MCA): анализ «веса» потенциальной угрозы.

Эвристические вирусные сканеры используют эти методы анализа для обнаружения вирусов внутри кода.

Эвристическое обнаружение вирусов

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

Эвристическое обнаружение может определить, что код представляет угрозу, если программа:

  • Остается после выполнения своих задач.
  • Пытается записать на диск.
  • Изменяет необходимые для операционной системы файлы.
  • Имитирует известное вредоносное ПО.

Эвристическое сканирование

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

Включите эвристическое сканирование и выберите уровни его чувствительности с помощью следующих шагов:

1. Откройте настройки в главном окне программы.

2. Настройте опции сканирования в разделе, связанном с проверками (сканированиями).

3. Включите опцию эвристического сканирования.

4. Чтобы изменить уровень чувствительности, выберите в настройках один из доступных уровней.

Как избавиться от эвристического вируса?

Удаленный сервер управляет вирусом Heur.Invader. При удалении вируса Heur.Invader используйте антивирусное программное обеспечение для запуска полного сканирования в безопасном режиме. Удалите угрозу с Вашего компьютера, как только она будет обнаружена.

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

1. Загрузите компьютер в безопасном режиме.

2. Запустите как обычно полную проверку в вашем антивирусе

3. Как только сканирование найдет вредоносный код, проверьте этот элемент вручную (вдруг это известный вам файл и произошло ложное срабатывание).

4. Удалите вредоносный код.

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

Кибер-понедельник всю неделю: скидка 40% на антивирус Panda Dome

  • информационная безопасность
  • вредоносная программа
  • угроза
  • безопасность
  • вирус
  • эвристика
  • Оригинал статьи:
    What Is a Heuristic Virus and How to Remove It

Эвристический анализ

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

Технология эвристического анализа

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

В ряде случаев, эвристические методы оказываются чрезвычайно успешными, к примеру, в случае очень коротких программных частей в загрузочном секторе: если, программа производит запись в сектор 1, дорожку 0, сторону 0, то это приводит к изменению раздела накопителя. Но кроме вспомогательной программы FDISK эта команда больше нигде не используется, и потому в случае ее неожиданного появления речь идет о загрузочном вирусе.

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

Другим распространенным методом эвристического анализа, применяемым большой группой антивирусов, является декомпиляция подозрительной программы и анализ ее исходного кода. Исходный код подозрительного файла проходит сверку и сравнение с исходным кодом известных вирусов и образчиков вирусной активности. В случае, если определенный процент исходного кода идентичен коду известного вируса или вирусной активности, файл отмечается как подозрительный, о чем оповещается пользователь.

Недостатки эвристического сканирования

  • Чрезмерная подозрительность эвристического анализатора может вызывать ложные срабатывания при наличии в программе фрагментов кода, выполняющего действия и/или последовательности, в том числе и свойственные некоторым вирусам. В частности, распаковщик в файлах, запакованных PE-упаковщиком (Win)Upack вызывает ложные срабатывания целого ряда антивирусных средств, де-факто не признающих такой проблемы. Другой проблемой анализаторов является ошибочное срабатывание при проверке совершенно безобидного кода.

К примеру, скомпилированный с помощью Delphi 7 или Delphi 2007 код:

 
Вызывает ложные срабатывания у антивирусов типа Panda (независимо от версии компилятора), Webwasher GateWay (при компиляции Delphi 2007 [1] ), F-Secure (при компиляции Delphi 7 [2] ). Как видно из примера, программа абсолютно безопасна и совершенно отсутствуют какие-либо признаки вредоносного кода и вирусного функционала (весь функционал примера: если в качестве третьего параметра указан ключ «d», программа удаляет файл, указанный во втором параметре).
  • Наличие простых методик обмана эвристического анализатора. Как правило, прежде чем распространять вредоносную программу (вирус), ее разработчики исследуют существующие распространенные антивирусные продукты, различными методами избегая ее детектирование при эвристическом сканировании. К примеру, видоизменяя код, используя элементы, выполнение которых не поддерживается эмулятором кода данных антивирусов, используя шифрование части кода и др.

Несмотря на заявления и рекламные проспекты разработчиков антивирусных средств относительно совершенствования эвристических механизмов, эффективность эвристического сканирования на данный момент далека от ожидаемой. Независимые тесты компонентов эвристического анализа показывают, что уровень обнаружения новых вредоносных программ составляет не более чем 40-50% от их числа. [3] (англ.)

  • Даже при успешном определении, лечение неизвестного вируса практически всегда является невозможным. Как исключение, некоторыми продуктами возможно лечение однотипных и ряда полиморфных, шифрующихся вирусов, не имеющих постоянного вирусного тела, но использующих единую методику внедрения. В таком случае, для лечения десятков и сотен вирусов может существовать одна запись в вирусной базе, как это реализовано, к примеру, в антивирусе И. Данилова.

См. также

  • Эвристика
  • Антивирус
  • Полиморфизм
  • Обнаружение, основанное на сигнатурах

Ссылки

  1. Ложное срабатывание при компиляции Delphi 2007
  2. Ложное срабатывание при компиляции Delphi 7
  3. Статья из английской Wiki

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *