Сравнение HIPS на предотвращение проникновения в ядро Microsoft Windows. Обзор программы для проактивной защиты компьютера Defense Wall HIPS

В этом сравнительном тестировании мы проводили анализ популярных персональных антивирусов и сетевых экранов, имеющих в своем составе компоненты HIPS (Host Intrusion Prevention Systems), на возможности предотвращения проникновения вредоносных программ на уровень ядра (далее Ring 0) операционной системы Microsoft Windows. Если вредоносной программе удается проникнуть на уровень ядра, то она получает полный контроль над компьютером жертвы.

Краткое содержание:

Введение

Технологии поведенческого анализа и системы предотвращения вторжения на уровне хоста (Host Intrusion Prevention Systems - HIPS) набирают популярность среди производителей антивирусов, сетевых экранов (firewalls) и других средств защиты от вредоносного кода. Их основная цель - идентифицировать и блокировать вредоносные действия в системе и не допустить ее заражения.

Наиболее сложная задача защиты при этом сводится к недопущению проникновения вредоносной программы на уровень ядра операционной системы (анг. Kernel Level), работающего в «нулевом кольце процессора» (Ring 0). Этот уровень имеет максимальные привилегии при выполнении команд и доступа к вычислительным ресурсам системы в целом.

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

В данном тестировании мы проводили сравнение популярных антивирусов и сетевых экранов, имеющих в своем составе компоненты HIPS, на возможности предотвращения проникновения вредоносных программ на уровень ядра (далее Ring 0) операционной системы Microsoft Windows XP SP3.

Отбор вредоносных программ для тестирования

Мы решили не моделировать проникновение в Ring 0 какими-либо искусственными средствами, а провести тест на реальных вредоносных программах. При этом последние отбирались таким образом, чтобы охватить все используемые способы записи в Ring 0, которые реально применяются в «дикой природе» (In The Wild):

  1. StartServiceA - загрузка вредоносного драйвера производится путем подмены файла системного драйвера в каталоге %SystemRoot%\System32\Drivers с последующей загрузкой. Позволяет загрузить драйвер без модификации реестра.
    Встречаемость ITW: высокая
  2. SCM - использование для регистрации и загрузки драйвера менеджера управления сервисами. Этот метод используется как легитимными приложениями, так и вредоносными программами.
    Встречаемость ITW: высокая
  3. KnownDlls - модификация секции \KnownDlls и копии одной из системных библиотек с целью загрузки вредоносного кода системным процессом.
    Встречаемость ITW: средняя
  4. RPC - создание драйвера и загрузка посредством RPC. Пример использования: загрузчик знаменитого Rustock.C
    Встречаемость ITW: редкая
  5. ZwLoadDriver - подмена системного драйвера вредоносным, путем перемещения и последующая прямая загрузка.
    Встречаемость ITW: высокая
  6. ZwSystemDebugControl - снятие перехватов, установленных HIPS для контроля системных событий, в SDT, используя debug-привилегии.
    Встречаемость ITW: высокая
  7. \ Device \ PhysicalMemory - снятие перехватов, установленных HIPS для контроля системных событий, в SDT, используя запись в секцию физической памяти.
    Встречаемость ITW: средняя
  8. ZwSetSystemInformation - загрузка драйвера без создания ключей в реестре вызовом ZwSetSystemInformation с параметром SystemLoadAndCallImage.
    Встречаемость ITW: средняя
  9. CreateFileA \\.\PhysicalDriveX - посекторное чтения/запись диска (модификация файлов или главной загрузочной записи диска).
    Встречаемость ITW: средняя

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

Методология сравнительного тестирования

Тестирование проводилось под управлением VMware Workstation 6.0. Для теста были отобраны следующие персональные средства антивирусной защиты и сетевые экраны:

  1. PC Tools Firewall Plus 5.0.0.38
  2. Jetico Personal Firewall 2.0.2.8.2327
  3. Online Armor Personal Firewall Premium 3.0.0.190
  4. Kaspersky Internet Security 8.0.0.506
  5. Agnitum Outpost Security Suite 6.5.3 (2518.381.0686)
  6. Comodo Internet Security 3.8.65951.477

К сожалению, по техническим причинам из теста были исключены антивирусы F-Secure и Norton. Встроенный в них HIPS не работает отдельно от включенного антивирусного монитора. А поскольку отобранные образцы вредоносных программ могли детектироваться сигнатурно, то ими нельзя было воспользоваться. Использовать эти антивирусы со старыми антивирусными базами (чтобы избежать сигнатурного детекта) не подходило, т.к. процесс обновления в этих продуктах может затрагивать и не только антивирусные базы, но и исполняемые модули (компоненты защиты).

Почему мы взяли в тест другие популярные антивирусные продукты и сетевые экраны, коих найдется множество? Да потому, что они не имеют в своем составе модуля HIPS. Без этого предотвратить проникновения в ядро ОС у них объективно нет шансов.

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

Перед проведением тестирования запускалась легитимная утилита cpu-z (небольшая программа, которая сообщает сведения об установленном в компьютере процессоре) и создавалось правило, которое предлагал тестируемый продукт (его HIPS-компонент). После создания правила на данную утилиту, режим автообучения отключался и создавался снимок состояние системы.

Затем поочередно запускались специально отобранные для теста вредоносные программы, фиксировалась реакция HIPS на события, связанные непосредственно с установкой, регистрацией, загрузкой драйвера и другие попытки записи в Ring 0. Как и в других тестах, перед проверкой следующей вредоносной программы производился возврат системы до сохраненного в начале снимка.

В участвующих в тесте антивирусах файловый монитор отключался, а в Kaspersky Internet Security 2009 вредоносное приложение вручную помещалось в слабые ограничения из недоверенной зоны.

Шаги проведения тестирования:

  1. Создание снимка чистой виртуальной машины (основной).
  2. Установка тестируемого продукта с максимальными настройками.
  3. Работа в системе (инсталляция и запуск приложений Microsoft Office, Adobe Reader, Internet Explorer), включение режима обучения (если таковой имеется).
  4. Отметка количества сообщений со стороны тестируемого продукта, запуск легитимной утилиты cpu-z и создание для нее правил.
  5. Отключение режима автообучения (если такой имеется).
  6. Перевод тестируемого продукта в интерактивный режим работы и создание очередного снимка виртуальной машины с установленным продуктом (вспомогательный).
  7. Создание снимков для всех тестируемых продуктов, выполняя откат к основному снимку и заново проводя пункты 2-4.
  8. Выбор снимка с тестируемым продуктом, загрузка ОС и поочередный запуск вредоносных программ каждый раз с откатом в первоначальное состояние, наблюдение за реакцией HIPS.

Результаты сравнительного тестирования

Плюс в таблице означает, что была реакция HIPS на некое событие со стороны вредоносной программы на проникновение в Ring 0 и была возможность пресечь это действие.

Минус - если вредоносный код сумел попасть в Ring 0, либо сумел открыть диск на посекторное чтение и произвести запись.

Таблица 1: Результаты сравнительного тестирования HIPS-компонент

Метод проникновения в Ring 0 PC Tools Jetico Online Armor Kaspersky Agnitum Comodo
StartServiceA
-
+ + + -
+
SCM
-
+ + + -
+
KnownDlls
-
+ + -
+ +
RPC
-
+ + + -
+
ZwLoadDriver
+
-
+ + -
+
ZwSystemDebugControl
-
+ + + + +
\Device\PhysicalMemory
+ + + + + +
ZwSetSystemInformation
-
+ + + + +
CreateFileA \\.\PhysicalDriveX
-
-
+
+ + +
Итого пресечено:
2
7
9
8
5
9
Количество оповещений и запросов действий пользователя
Мало
Очень много Много Мало Средне
Много

Стоит отметить, что при полном отключении режима обучения некоторые из тестируемых продуктов (например, Agnitum Outpost Security Suite 6.5) могут показать лучший результат, но в этом случае пользователь гарантированно столкнется в большим количеством всевозможных алертов и фактическими затруднениями работы в системе, что было отражено при подготовке методологии данного теста.

Как показывают результаты, лучшие продуктами по предотвращению проникновения вредоносных программ на уровень ядра ОС являются Online Armor Personal Firewall Premium 3.0, Comodo Internet Security 3.8, Kaspersky Internet Security 2009.

Необходимо отметить, что Online Armor Personal Firewall Premium - это продвинутый фаеровол и не содержит в себе классических антивирусных компонент, в то врем как два других победителя - это комплексные решения класса Internet Security.

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

Минимальное количество запросов действий пользователя наблюдалось у Kaspersky Internet Security 2009, PC Tools Firewall Plus 5.0 и Agnitum Outpost Security Suite 6.5. Остальные продукты зачастую надоедали алертами.

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

«В данном сравнении были отобраны самые известные продукты, имеющие на борту HIPS. Как видно, только три продукта смогли достойно препятствовать проникновению в нулевое кольцо. Так же очень важный параметр - кол-во сообщений (алертов) возникающих при повседневной работе за ПК и требующих решения пользователя. Именно тут и определяется технологическое преимущество продуктов - максимально контролировать систему и при этом использовать всевозможные технологии, для снижения кол-ва вопросов, задаваемых HIPS при запуске, инсталляции программ», - отмечает эксперт.

Принцип работы HIPS (Host-based Intrusion Prevention System): детальное описание. Общие параметры HIPS и Auto-Sandbox в Comodo Internet Security 8. Viruscope

HIPS

Режимы HIPS

Когда компонент HIPS включен, активность программ ограничивается в соответствии с правилами. Имеющиеся изначально правила устанавливают разрешения для некоторых системных программ, а в остальных случаях предписывают спрашивать пользователя. Пользователь может добавлять свои правила через интерфейс вкладки «Правила HIPS», либо они будут создаваться посредством его ответов на оповещения, либо создаваться автоматически при включенном «Режиме обучения». Можно отключить оповещения, предписав всегда разрешать или всегда запрещать активность в отсутствие правила.

Показ оповещений о программе зависит от ее и режима HIPS. В «Безопасном режиме» оповещения будут выдаваться только относительно неопознанных программ, доверенным же будет молча даваться разрешение (при отсутствии запрещающего правила) на любое действие, кроме запуска какого-либо неопознанного приложения. В «Параноидальном режиме» оповещения возникнут для всех программ, независимо от репутации.

В режиме «Чистый ПК» оповещения возникают только для новых неопознанных программ, т.е. которых прежде не было на диске, а «старые» воспринимаются подобно доверенным в «Безопасном режиме». Режим «Чистый ПК» работает следующим образом: с момента включения этого режима отслеживается создание новых программ, т.е. исполняемых файлов. Если новая программа меньше 40 МБ и не имеет репутации «доверенной», то она заносится в как «неопознанная». Лишь программы из списка «неопознанных» будут ограничены в правах. Остальные же программы, меньшие 40 МБ, будут восприниматься аналогично доверенным: таковыми их воспримет и HIPS, и Auto-Sandbox, и фаервол.

Режим «Чистый ПК» весьма проблемный, и я не рекомендую его использовать. В частности, если при этом режиме поместить новую неизвестную программу в какой-либо каталог и изменить его имя, то программа будет считаться «старой», т.е. получит разрешения. Тем не менее можно реализовать корректно работающий аналог режима «Чистый ПК» в «Безопасном режиме» путем добавления всех исполняемых файлов в доверенные способом, предложенным в .

Порядок работы «Безопасного режима» с включенной опцией «Создавать правила для безопасных приложений», а также «Режима обучения» . Работа в режиме «Чистый ПК» подобна «Безопасному», но отличается тем, что неопознанные файлы, находившиеся на диске до включения этого режима, будут обрабатываться аналогично доверенным («доверять» им будет не только HIPS, но и Auto-Sandbox, и фаервол).

Оговорю особый случай: если программа выполняется в виртуальной среде и/или с ограничениями Auto-Sandbox, то в отсутствие разрешающего или запрещающего правила будет дано разрешение (подобно опции «Не показывать оповещения: Разрешать запросы»). В виртуальной среде защиты файлов и реестра вообще не будет, даже при явно заданных запретах. Но, конечно, на данную программу и ее дочерние процессы наложатся виртуальной среды и/или Auto-Sandbox.

Управление правами программ через оповещения

Если в оповещении HIPS выбрать «Разрешить» или «Только заблокировать», то это разрешение или запрет будет действовать только в отношении определеного ресурса. Например, если разрешить приложению создать файл C:\test\A.exe , то попытка создать файл C:\test\B.exe снова приведет к оповещению. Чтобы разрешить приложению создавать любые файлы в каталоге C:\test , придется редактировать правило через окно настройки CIS. К сожалению, в оповещениях не предусмотрены разрешения для каталогов, шаблонов, групп и т.п.

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

Однако через оповещение можно применить к приложению заранее созданную политику. Эти политики создаются на вкладке «HIPS» > «Наборы правил». Предустановленная политика «Системное приложение Windows» разрешает любую активность, политика «Разрешенное приложение» — любую, но не регламентирует запуск дочерних процессов; политика «Изолированное приложение» жестко запрещает любую активность; политика «Ограниченное приложение» запрещает почти все, кроме оконных сообщений и монитора, и не регламентирует запуск дочерних процессов. Можно не только создавать свои политики, но и менять предустановленные.

Разрешения, запреты и политики, назначенные какому-либо приложению через оповещения, действуют по-разному, в зависимости от того, включена ли в оповещении опция «Запомнить мой выбор». Если включить эту опцию и выбрать вариант «Разрешить» или «Только заблокировать», то изменится назначенный данному приложению набор правил: к нему добавится разрешение или запрет в точности для определенного ресурса (файла, интерфейса и т.д.). Если же включить опцию «Запомнить мой выбор» и выбрать какой-либо набор правил — новые правила не добавятся к старым, а полностью заменят их; т.е. перестанут действовать правила, назначенные данному приложению ранее. Если для этого приложения нет правила HIPS — оно будет создано вверху списка.

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

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

Контроль запуска программ

Возможность запуска какой-либо программы задается в HIPS правилом для запускающей программы, а не для запускаемой. При «Параноидальном режиме» запуск програм молча разрешается только при наличии явного разрешения в правилах (за ). При «Безопасном режиме» в отсутствие правила запуск разрешается, если и запускающая, и запускаемая программа имеют репутацию «доверенных».

Так, предположим, что при «Безопасном режиме» HIPS программа parent.exe запущена и пытается запустить программу child.exe . В отсутствие дополнительных правил запуск произойдет молча, только если обе программы являются доверенными. Если же программа child.exe неопознанная, а в правилах HIPS для программы parent.exe (или содержащей ее группы) отсутствует разрешение на запуск программы child.exe (или содержащей ее группы), то вне зависимости от правил HIPS для самой программы child.exe и вне зависимости от рейтинга программы parent.exe перед запуском возникнет оповещение (причем относительно именно программы parent.exe).

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

Если же требуется пресечь запуск программы, то, получив оповещение относительно родительского процесса, следует отключить опцию о запоминании и выбрать «Блокировать» > «Только заблокировать».

Внимание! Пункт «Заблокировать и завершить выполнение» в оповещении о запуске программы означает завершение работы родительского процесса . Также и выбор какой-либо политики (т.е. набора правил) в этом оповещении назначит ее именно родительскому процессу. Соответственно, включение опции «Запомнить мой выбор» в таком оповещении приведет к созданию/изменению правила HIPS для родительского процесса. Типичная ошибка пользователей — выбор политики в оповещении о запуске программы проводником. Правильный же порядок действий — сначала лишь разрешить запуск, а политику выбрать в последующем оповещении о собственной активности программы.

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

Возможность запуска какой-либо программы определяют правила не только HIPS, но и . Запуск будет заблокирован, если того требует хотя бы один из этих компонентов. Если же запуск разрешен в правилах HIPS, а правила Auto-Sandbox предписывают изолировать данную программу — она будет запускаться изолированно.

У описанного порядка работы есть определенные исключения. Первое исключение касается программ, которые уже изолированы в Sandbox. Дочерние процессы этих программ будут изолированы точно так же, не подчиняясь другим правилам Auto-Sandbox. Оповещений HIPS об их запуске не будет: только при наличии явного запрещающего правила HIPS произойдет блокировка. Иначе говоря, работа HIPS для таких программ подобна включению опции «Не показывать оповещения: Разрешать запросы».

Другое исключение — программы, имеющие привилегии установщика . Их дочерние процессы не подчиняются правилам Auto-Sandbox (это поведение ) и не вызывают оповещений HIPS. Они подчиняются лишь явным запретам в правилах HIPS, подобно включенной опции «Не показывать оповещения: Разрешать запросы» (это поведение настройке не поддается).

Третье исключение — программы, имеющие в Auto-Sandbox правило действие «Игнорировать» с отключенной опцией « ». Такие программы просто исключены из контроля Auto-Sandbox вместе со своими дочерними процессами. Правила HIPS к ним применяются в обычном порядке.

Автоматическое создание правил HIPS в «Режиме обучения» и в «Безопасном режиме»

В определенных режимах создание правил HIPS происходит автоматически:

  • если включен «Режим обучения» и опция «Не показывать оповещения» отключена или установлена в режим «Блокировать запросы», то будет отслеживаться активность всех приложений и будут создаваться правила, разрешающие каждое их замеченное действие;
  • если включен «Безопасный режим», включена опция «Создавать правила для безопасных приложений», а опция «Не показывать оповещения» отключена или установлена в режим «Блокировать запросы», то будут создаваться правила, разрешающие каждое замеченное действие доверенных приложений.

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

Правила для программы (любой при «Режиме обучения» или доверенной при «Безопасном режиме») создаются следующим образом:

Вид нового правила будет зависеть от запрашиваемого действия:

  • Когда одна программа запускает другую, для первой создается правило, разрешающее запускать конкретно определенную программу.
  • Когда программа изменяет файл или ключ реестра, входящий в список на вкладке «HIPS» > «Защищенные объекты», вид правила будет зависеть от того, как записан шаблон этого ресурса.
    • Если в конце шаблона стоит знак | , то создастся правило, разрешающее изменение конкретно того объекта, к которому обратилась программа. Например, программа создает на рабочем столе файл text.txt . Он соответствует шаблону « ?:\Users\*\Desktop\*| ». Значит, будет создано правило, разрешающее изменение файла C:\Users\Name\Desktop\text.txt .
    • Если в конце шаблона отсутствует знак | , то создастся правило, разрешающее изменение любого объекта по данному шаблону. Например, программа создает файл D:\prog.exe . В списке защищенных объектов этот файл соответствует шаблону *.exe . Значит, создастся правило, разрешающее данной программе изменение любых exe-файлов.
  • При обращении программы к какому-либо из следующих ресурсов автоматически создаются правила, разрешающие ей доступ одновременно к ним всем:
    • «Защищенные COM-интерфейсы»,
    • «Хуки Windows и хуки приложений»,
    • «Межпроцессный доступ к памяти»,
    • «Прерывание работы приложений»,
    • «DNS-запросы»,
    • «Диск» (прямой доступ),
    • «Клавиатура»,
    • «Монитор».

Обычно реальный порядок работы HIPS совпадает с описанным, но случаются различные отступления. Например, иногда правила HIPS создаются автоматически даже для программ, выполняющихся с привилегиями установщика; это наблюдалось при отключении Auto-Sandbox. Также наблюдалась ситуация, когда правила для программы, создавшиеся в «Режиме обучения», зафиксировали доступ не ко всем файловым объектам, запрошенным ею в «Параноидальном режиме».

Идентификация приложений по их путям

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

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

В связи с тем, что правила HIPS основаны на путях, представляет опасность опция «Создавать правила для безопасных приложений». Например, если она включена, и Проводник запустит доверенную (имеющую подпись) программу C:\myDownloads\test.exe , то при «Безопасном режиме» HIPS автоматически создадутся правила; а в другой раз на месте test.exe окажется нечто иное. Поэтому рекомендую отключать эту опцию.

Защита процессов

В окне с правилами HIPS для какого-либо приложения можно ограничить не только собственную активность этого приложения, но и влияние на его работу других программ. Для этого вкладке «Настройка защиты» выбираем, какие действия с данным приложением будут блокироваться, а в окне исключений (кнопка «Изменить») — каким программам они будут разрешены. Оповещения здесь не предусмотрены — только разрешение или запрет, вне зависимости от рейтинга. Запрещенное таким образом действие будет блокироваться, независимо от правил и рейтинга других программ.

В частности, с помощью этой функции осуществляется самозащита CIS от выгрузки его процессов и доступа к памяти. Поэтому, даже когда HIPS не нужен, желательно включить его хотя бы с опцией «Не показывать оповещения: Разрешать запросы» (в «Безопасном» или «Параноидальном» режиме).

Побочным эффектом самозащиты CIS является огромное количество записей в журнале «События Защиты+» при использовании некоторых программ, например, ProcessExplorer. Можно избавиться от необязательных блокировок, разрешив отдельным приложениям доступ к памяти CIS.

Отмечу, что сама по себе защита от прерывания работы приложений не охватывает всех способов выгрузить процесс. Так, многие приложения (но не процессы CIS) можно завершить посредством оконных сообщений (например, программой System Explorer) или посредством доступа к памяти. Чтобы защитить приложение от таких способов завершения, понадобится отметить в его правилах на вкладке «Настройка защиты» не только пункт «Прерывание работы приложений», но и пункты «Оконные сообщения» и «Межпроцессный доступ к памяти».

Метод прерывания процессов, применяемый программой Process Hacker , позволяет выгрузить даже CIS. Чтобы запретить применение этого метода, можно изменить правило HIPS для группы «Все приложения»: в пункте «Защищенные COM-интерфейсы» нажать «Изменить» и на вкладку «Заблокированные» добавить строку LocalSecurityAuthority.Restore . Однако не рекомендуется вносить данный запрет, так как он создаст проблемы при обновлении Windows.

Привилегии установщика

Смысл привилегий установщика

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

  1. HIPS разрешает такому приложению все, что не запрещено ему в правилах явным образом, т.е. работает подобно режиму «Не показывать оповещения: Разрешать запросы»;
  2. Auto-Sandbox не изолирует программы, запускаемые этим приложением;
  3. пока это приложение работает — его дочерние процессы (а также их дочерние процессы и т.д.) выполняются с привилегиями установщика;
  4. исполняемые файлы, которые создаст это приложение (или дочерние процессы, унаследовавшие его привилегии), автоматически занесутся в список доверенных (кроме скриптов и файлов, превосходящих 40 МБ).

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

Наконец, обратим внимание на : когда приложение-установщик завершится, его дочерние процессы лишатся унаследованных привилегий, и HIPS станет контролировать их в обычном режиме. А дальнейшие их дочерние процессы попадут и под контроль Auto-Sandbox.

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

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

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

Автоматическое наделение приложения привилегиями установщика

Приложение автоматически получает привилегии установщика, если оно является доверенным и имеет . Этот статус назначается приложениям, которые запрашивают при запуске права администратора, и некоторым другим.

В прежних версиях CIS автоматическое наделение программы привилегиями установщика происходило только в случае, когда ограничения проактивной защиты зависели от рейтинга этой программы. Если же программа была исключена из Auto-Sandbox и ей была назначена полностью определенная политика HIPS (наподобие «Системного приложения»), то привилегиями установщика она не наделялась. В версии CIS 8 привилегии установщика даются даже при отключении HIPS и Auto-Sandbox. Единственная замеченная ситуация, когда программа со статусом доверенного инсталлятора , — если ее ограничения в HIPS не зависят от рейтинга, а правила Auto-Sandbox исключают из изоляции ее родительский процесс вместе с дочерними.

Назначение привилегий установщика через оповещения и правила HIPS

Привилегии установщика могут быть назначены программе явным образом через HIPS: им соответствует политика «Установка или обновление».

Когда возникает оповещение HIPS относительно активности какого-либо приложения, можно в окне этого оповещения выбрать желаемую политику, с запоминанием или без него.

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

Через окно настройки CIS можно заранее назначить приложению политику «Установка или обновление» в списке правил HIPS. Очевидно, в этом случае приложение получит привилегии установщика без оповещений и в полной мере.

Общие функции и параметры проактивной защиты

Рассмотрим опции, которые влияют на работу проактивной защиты в целом: и HIPS, и Auto-Sandbox.

Различные параметры проактивной защиты

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

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

Опция «Блокировать неизвестные запросы, если приложение не запущено» предназначена только для зараженных систем и не рекомендуется к постоянному использованию, так как она мешает корректному автозапуску безопасных приложений. Если эта опция включена, то до тех пор, пока не загрузится графический интерфейс CIS, всем программам, независимо от их рейтинга, будет заблокирована любая активность, кроме явно разрешенной в правилах HIPS. Иначе говоря, до загрузки GUI поведение HIPS будет подобно «Параноидальному режиму» с опцией «Не показывать оповещения: Блокировать запросы». Блокировки не будет, если HIPS отключен или включен с опцией «Не показывать оповещения: Разрешать запросы».

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

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

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

К объектам, входящим в список «HIPS» > «Защищенные объекты» > «Заблокированные файлы», запрещается любой доступ, включая и запись, и чтение. В данный список вносятся пути и шаблоны путей к файлам. Блокировка работает только при включенном HIPS.

Оговорю особый случай: режим «Чистый ПК». Формально этот режим относится к HIPS, но в действительности он определяет работу всей проактивной защиты. Если включить этот режим, то «неопознанными» будут считаться лишь файлы, которые появятся на диске впоследствии. Файлы же, присутствовавшие на диске до включения этого режима, получат права доверенных: и HIPS, и Auto-Sandbox, и фаервол будут воспринимать эти «старые» файлы так, как если бы они входили в список доверенных. , что режим «Чистый ПК» имеет определенные проблемы и не рекомендуется к использованию.

Особенности защиты файлов

Как уже говорилось, защите посредством HIPS или Auto-Sandbox (в отсутствие виртуализации) подлежат только те файлы, которые занесены в список «HIPS» > «Защищенные объекты» > «Защищенные файлы». Для указания этих файлов можно использовать шаблоны (знаки * и?) и переменные среды (%temp% , %windir% и т.д.), как и .

Отмечу особенность использования шаблонов при защите каталогов. Обычно, если через интерфейс CIS указать какой-либо каталог, то он запишется в виде шаблона: D:\Docs\* . Такого вида шаблону соответствуют файлы и папки, расположенные в выбранном каталоге D:\Docs , а также в его подкаталогах. Добавление этого шаблона в список защищенных файлов означает защиту соответствующих ему файлов и папок от изменения и переменования. Однако сам выбранный каталог Docs при этом не становится защищенным от переименования. Если же переименовать его, то и его содержимое перестанет быть защищенным. Чтобы защитить каталог от переименования, следует записать его без слэша и звездочки на конце: D:\Docs . Таким образом, для полноценной защиты каталога и его содержимого следует заносить в список защищенных две строки: D:\Docs\* и D:\Docs . (Возможен вариант с одной строкой — оставить на конце звездочку, но без слэша: D:\Docs* . Но такой шаблон защитит одновременно каталоги D:\Docs , D:\Docs2 и т.п.)

В списке «HIPS» > «Защищенные объекты» > «Защищенные файлы» многие шаблоны имеют на конце символ | . Использование этого знака влияет на и на ограничения, накладываемые Auto-Sandbox. Если какая-либо программа запущена в Auto-Sandbox с ограничениями без виртуализации, то ей будет запрещено создавать, удалять или изменять файлы, которые заданы шаблонами с символом | на конце. Файлы, которые заданы шаблонами без символа | на конце, тоже будут защищены от изменений, однако ограниченной посредством Auto-Sandbox программе разрешается создавать такие файлы, а также удалять созданные ей (но не модифицировать). Например, по умолчанию программе, выполняющейся с уровнем ограничений «Частично ограниченное», разрешается создавать исполняемые файлы в каталоге %PROGRAMFILES% , но запрещается — в каталоге автозагрузки. Подчеркну, что символ | влияет на ограничения именно Auto-Sandbox в режимах без виртуализации. При защите же посредством HIPS запрещается и создание, и удаление, и модификация файлов, независимо от наличия символа | в их шаблонах.

Имеется проблема с указанием путей на съемных устройствах. Формально можно создать правило HIPS, Auto-Sandbox или другого компонента с использованием пути к съемному устройству наподобие H:\Docs\* , но такое правило работать не будет: CIS не воспринимает буквы съемных дисков. Однако на съемных носителях будут работать правила, не привязанные к букве диска, например, защита exe-файлов. С другой стороны, все же есть возможность создавать правила Auto-Sandbox, которые будут выполняться именно для программ, расположенных на съемных носителях. Пример такого правила приведен .

Как и в случае со съемными устройствами, CIS некорректно работает с буквами сетевых дисков: данные на сетевом диске Y: могут не соответствовать ни шаблону Y:\* , ни даже?:\* . Вместо шаблонов с буквой сетевого диска можно использовать шаблоны вида \\имя_сетевого_ресурса* — эксперименты показали корректную их работу. В частности, чтобы защитить данные на Яндекс.Диске , подключенном в виде сетевого диска по протокоу WebDAV, можно добавить в список «Защищенные объекты» > «Защищенные файлы» строку \\webdav.yandex* .

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

Особенности защиты реестра

Как и в случае файлов, защите посредством HIPS и Auto-Sandbox подлежат лишь те ключи реестра, которые перечислены в списке «HIPS» > «Защищенные объекты» > «Ключи реестра».

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

Рассмотрим, например, строку *\Software\Microsoft\Windows\CurrentVersion\Run* . Знак * в ее начале означает, что она охватывает и системный раздел реестра HKEY_LOCAL_MACHINE , и раздел HKEY_CURRENT_USER каждого пользователя в отдельности. Обратим внимание, что знак * в конце этой строки не отделен слэшем. Это значит, что строка охватывает оба подраздела: Run и RunOnce . Смысл конкретно этой строки в защите одновременно разных видов автозагрузки: как общей автозагрузки, так и автозагрузки пользователя; как постоянной, так и однократной.

В предустановленных в CIS группах реестра используются сокращенные названия разделов: HKLM , HKCU и HKUS . Также при указании путей реестра через интерфейс CIS автоматически подставляются эти сокращенные названия. Однако в действительности правила HIPS, в которых разделы реестра указаны сокращенно, могут не работать. Таким образом, следует всегда указывать полные названия разделов реестра: например, не HKCU\SOFTWARE\Policies\* , а HKEY_CURRENT_USER\SOFTWARE\Policies\* . Также понадобится исправить пути в предустановленных группах на вкладке «Группы HIPS» > «Группы реестра»:

  • заменить HKLM на HKEY_LOCAL_MACHINE
  • заменить HKCU на HKEY_CURRENT_USER
  • заменить HKUS на HKEY_USERS

По моим наблюдениям, CIS некорректно воспринимает аббревиатуры корневых разделов реестра в случаях, когда указанный путь является ссылкой, а не «реальным» местоположением в реестре. Примеры таких путей-ссылок — HKLM\SYSTEM\CurrentControlSet\* , HKCU\* .

Возможный вариант указания раздела HKEY_CURRENT_USER — шаблон HKEY_USERS* . К этому шаблону можно добавить часть идентификатора пользователя. Например, строкой HKEY_USERS*1002\SOFTWARE\Policies\* задается ветвь SOFTWARE\Policies раздела HKEY_CURRENT_USER для одного конкретного пользователя. Данный прием можно использовать, чтобы запретить ограниченному пользователю менять автозагрузку, ассоциации и прочие параметры.

Для удобного и наглядного создания правил рекомендуется применять группы реестра:

  • открыть вкладку «HIPS» > «Группы HIPS» > «Группы реестра» и через контекстное меню создать новую группу;
  • добавить в эту группу ключи реестра и при необходимости отредактировать пути;
  • открыть вкладку «HIPS» > «Защищенные объекты» > «Ключи реестра» и добавить новую группу в список;
  • на вкладке «Правила HIPS» задать необходимые разрешения и запреты с использованием групп.

Защита данных от чтения

Можно защищать данные не только от изменений, но и, в какой-то мере, от чтения определенными приложениями. Для этого служит вкладка «HIPS» > «Защищенные объекты» > «Папки с защищенными данными». Каталоги, добавленные в список на этой вкладке, защищаются следующим образом:

  • программы, запущенные виртуально, воспринимают эти каталоги пустыми;
  • программам, запущенным в реальной среде с ограничениями Auto-Sandbox, запрещается обзор содержимого этих каталогов;
  • программам, которым посредством HIPS заблокирован ресурс «Диск», запрещается обзор содержимого этих каталогов (но остается возможным открытие содержащихся в них файлов).

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

Через интерфейс CIS можно добавить в список «Папок с защищенными данными» лишь те каталоги, которые видны в проводнике. Если необходимо защитить данные в каком-либо скрытом каталоге, следует временно разрешить показ скрытых файлов и папок в проводнике (например, через «Панель управления»).

Интерфейс CIS позволяет заносить в список «Папок с защищенными данными» только однозначные пути к каталогам, но не шаблоны, наподобие *\ReadProtected\* . Попытка же внести в этот список шаблон редакированием файла конфигурации может привести к BSOD.

В список «Папок с защищенными данными» следует добавлять каталоги, расположенные только на локальных дисках. Формально можно добавить в этот список съемные носители или виртуальные шифрованные диски, но для них защита, как правило, не работает.

Данную защиту способны полностью обойти приложения, выполняющиеся от имени администратора. Такие приложения смогут увидеть содержимое защищенного каталога и прочитать данные в нем, даже если им заблокирован доступ к диску, даже если они выполняются в виртуальной среде, и даже если они изолированы в Auto-Sandbox как «Частично ограниченное» или «Подозрительное». Настоятельно рекомендую держать включенным UAC.

Защита памяти процессов

CIS способен запрещать одним процессам изменять память других. Так, программам, которые запущены виртуально и/или с ограничениями Auto-Sandbox, запрещено менять память процессов, выполняющихся в реальной среде. Дополнительные ограничения на межпроцессное изменение памяти задаются в правилах HIPS.

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

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

Анализ командной строки

Некоторые виды приложений выполняются не самостоятельно, а посредством программ-интерпретаторов. Например, выполнением bat-скриптов занимается системный интерпретатор cmd.exe , выполнением vbs-скриптов — системный интерпретатор wscript.exe , выполнением jar-приложений — программа javaw.exe , входящая в состав виртуальной машины Java, и т.д. При запуске скрипта (или подобного приложения) фактически запускается ассоциированная с ним программа-интерпретатор, получая путь этого скрипта в аргументах командной строки.

CIS отслеживает запуск некоторых интерпретаторов и применяет к ним те ограничения, которые имеет файл, заданный в аргументах командной строки. Благодаря этому некоторые виды скриптов воспринимаются CIS как самостоятельные приложения: их активность ограничивается правилами HIPS или вызывает оповещения, а Auto-Sandbox изолирует работу скриптов, не являющихся доверенными. (Некоторые особенности работы Auto-Sandbox со скриптами описаны в соответствующей статье: невозможность или .) Также в на месте интерпретаторов отображаются выполняемые ими скрипты.

Описанным образом контролируется запуск и активность различных видов приложений: *.bat, *.cmd, *.js, *.vbs, *.wsf, *.hta, *.chm, *.msi, *.jar и др. Аналогично контролируются библиотечные файлы, когда их исполнением занимается системная программа rundll32.exe .

Данное поведение задается опцией «Выполнять эвристический анализ командной строки для определенных приложений» на вкладке «Настройка HIPS», по умолчанию она включена. Если ее отключить, то скрипты и подобные им приложения будут выполняться с теми же правами, которые имеют их интерпретаторы.

В версии CIS 7 имел место баг: не контролировался запуск скриптов с длинными путями. В версии CIS 8.0 баг устранен. Также во всех версиях от 5.10 до 8.1 имела место серьезная уязвимость анализа командной строки, позволявшая запустить одну программу с правами другой. В версии CIS 8.2 эта уязвимость почти устранена.

Опция защиты от внедрения shell-кода

На вкладке «Настройка HIPS» расположена опция «Обнаруживать внедрение shell-кода». Как следует из названия, ее включение призвано предотвращать атаки, основанные на переполнении буфера.

Тем не менее опция «Обнаруживать внедрение shell-кода» все же влияет на работу CIS. Вернее — влияние оказывает список исключений данной опции, независимо от того, включена ли она сама. В работе приложений, добавленных в список исключений «защиты от shell-кода», наблюдаются следующие особенности:

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

По-видимому, именно внедрение библиотеки guard(32|64).dll отвечает за те функции CIS, которые не работают для приложений, исключенных из «защиты от shell-кода».

Иногда занесение программ в исключения опции «Обнаруживать внедрение shell-кода» устраняет некоторые конфликты. Так, обычно рекомендуется добавлять в эти исключения каталог программы VMware Player/Workstation, программу Alcohol, программу и каталог ее песочницы. Также имел место конфликт версии CIS 8.2.0.4674 с браузером Google Chrome 45.0.2454.85, устранявшийся добавлением файла chrome.exe в исключения данной опции.

Viruscope

Оповещения Viruscope

Кроме основных средств проактивной защиты — HIPS и Auto-Sandbox — имеется компонент Viruscope, предназначенный для динамического обнаружения подозрительной активности процессов. Он должен выявлять опасное поведение неопознанных программ и выдавать оповещение с предложением откатить изменения, произведенные определенной программой и ее дочерними процессами, а саму программу удалить.

Если включена опция «Не показывать оповещения» на вкладке «Viruscope», то удаление программ и откат изменений произойдет автоматически (аналогично, если не отвечать на оповещение в течение 2 минут).

Откат изменений вручную

Завершение программ с откатом произведенных ими изменений можно производить не только при обнаружении подозрительной активности, но и вручную. Для этого следует запустить менеджер задач KillSwitch, вызвать контекстное меню на нужном процессе и выбрать пункт «Завершить дерево процесса и вернуть произведенные изменения». Файл программы при этом не удаляется. Данный пункт контекстного меню KillSwitch имеется только при включенном Viruscope.

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

Отчет об активности

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

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

Следует сказать, что представление отчета об активности в окне CIS далеко от удобного. Однако можно через контекстное меню экспортировать этот отчет в XML-файл и изучать отдельно.

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

Ограничение контроля Viruscope только изолированными программами

По умолчанию в конфигурации «Proactive Security» на вкладке «Viruscope» включена опция «Использовать Viruscope» и отключена опция «Применять действие Viruscope только к приложениям в Sandbox». В такой конфигурации происходит слежение за всеми процессами в реальной и в виртуальной среде. Выше описана работа Viruscope именно для такого режима.

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

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

Управление распознавателями

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

Ограниченность применения и проблемы Viruscope

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

В версии CIS 7 наблюдалась серьезная проблема — при включенном Viruscope происходили непредсказуемые сбои в работе безопасных приложений. Эти сбои происходили в отсутствие каких-либо уведомлений и записей в журналах CIS, что затрудняло поиск их причины. По-видимому, сбои провоцировались самим наблюдением за процессами, а не обнаружением подозрительного поведения.

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

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

Please enable JavaScript to view the

Что означает HIPS в общем смысле?

Это означает "Хост-система предотвращения вторжений" (H ost I ntrusion P revention S ystem). В сущности, это программа, которая выдает оповещения пользователю, когда вредоносная программа, такая как вирус, возможно пытается запуститься на компьютере пользователя, или когда неавторизованный пользователь, такой как хакер, возможно получил доступ к компьютеру пользователя.

Происхождение и предыстория

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

В прошлом программы обнаружения при выявлении вредоносного ПО опирались прежде всего на его сигнатуры. Этот метод, несмотря на то, что он надежен, хорош лишь настолько, насколько часто производятся обновления. Существует дополнительная сложность в том, что большая часть сегодняшних вредоносных программ постоянно видоизменяется. В процессе этого изменяются и их сигнатуры. Для борьбы с этим были разработаны HIPS-программы, способные "узнавать" вредоносное программное обеспечение скорее по его поведению, чем по сигнатурам. Это "поведение" может быть попыткой управлять другим приложением, запустить службу Windows или изменить ключ реестра.

Иллюстрация сайта EUobserver.com

Это слегка напоминает поимку преступника по его поведению, а не по отпечаткам пальцев. Если он действует как вор, он, вероятнее всего, вор. Так же и с компьютерной программой: если она действует как вредоносная, значит, вероятнее всего, она является вредоносной программой.

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

Что в действительности делает HIPS-программа?

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

Comodo: Всплывающее окно-предупреждение HIPS

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

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

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

Тип продукта

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

Комплексный антивирус Comodo Internet Security

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

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

Установка и настройка

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

ESET NOD32 Антивирус: Настройка HIPS

Ранее я упоминал о возможности использования HIPS-программы с целью контроля над использованием еще и легальных приложений. Мы уже делаем это в наших фаерволах, ограничивая использование портов. Вы можете использовать HIPS-программу подобным образом, чтобы блокировать или ограничивать доступ к системным компонентам и службам. В общих словах, чем сильнее вы ограничиваете Windows, тем безопаснее в ней будет работать. Я где-то читал, что самая безопасная Windows-система называется Linux! Но это уже другая проблема. Иногда легальные программы при инсталляции устанавливают такой уровень доступа к системе, который сильно превышает то, что они фактически должны выполнять в рамках своих обычных функций. Ограничение работы приложений до уровня "разрешено считывать" (с жесткого диска), если они при этом по умолчанию не нуждаются в "разрешении на запись", является одним из способов снижения риска. Для этого вы можете, к примеру, использовать настройку модуля "Защита+" в составе Comodo Internet Security.

Когда потенциальная угроза выявлена

Большинство HIPS-программ, когда что-либо происходит, оповещают пользователей о потенциальных угозах с помощью интерактивного всплывающего окна. Некоторые программы автоматизируют этот процесс и сообщают об этом (может быть!) уже позже. Важно то, чтобы самому не стать "автоматизированным" при ответах. Ни от каких приложений безопасности не будет толку, если вы вслепую будете щелкать по кнопке "Да", отвечая на любые вопросы. Всего несколько секунд размышления перед принятием решения может сохранить часы работы в дальнейшем (если не упоминать о потере данных). Если уведомление оказывается ложной тревогой, вы можете иногда сохранять его как "исключение", чтобы предотвратить такое уведомление в будущем. Также, о ложных тревогах рекомендуется уведомлять производителей, чтобы они могли устранять их в последующих версиях.

Что, если вы не уверены?

Показатели разнятся в зависимости от того, что вы читаете, но до 90% всей вредоносной заразы приходит из интернета, поэтому большую часть всплывающих оповещений безопасности вы будете получать, будучи в онлайне. Рекомендуемое действие - остановить данное событие и поискать в Google информацию о показанном файле (-ах). Местонахождение зафиксированной угрозы может быть столь же важным, как и имя файла. Более того, "Ispy.exe" может быть легальным ПО, но "ispy.exe" может быть вредоносным. Отчеты журнала "HijackThis" в этом могли бы помочь, но результаты, предоставляемые автоматизированной службой, могут быть не совсем однозначными. Вообще, вы будете допускать некоторый вред, блокируя или изолируя происходящее событие, пока не научитесь, что с ним делать. Такое бывает лишь при удалении чего-либо и незнании, что это могло привести к плачевным результатам!

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

Это привлекательная идея в теории, но на практике результаты могут быть неутешительными. Например, если 10 человек ранее видели определенное уведомление, и девять из них сделали неправильный выбор, то когда вы видите рекомендацию с 90%-м рейтингом о блокировании программы, вы следуете их примеру! Я называю это "синдром стада". С увеличением количества пользователей должна увеличиваться и надежность рекомендаций, но так бывает не всегда, поэтому необходима некоторая осторожность. Вы всегда можете поискать в Google другое мнение.

Несколько средств защиты или "многоуровневый подход"?

Несколько лет назад использование единых комплектов безопасности не давало уровня производительности, сопоставимого с использованием нескольких отдельных приложений безопасности для достижения "многоуровневой" защиты. Хотя, недавно производители инвестировали значительные средства на разработку комплектов, и это теперь отразилось на их продуктах. Впрочем, некоторые все еще содержат по крайней мере один слабый компонент, и если это фаервол, то вам следовало бы сделать выбор в пользу чего-то другого. Общее мнение таково, что комбинация отдельных элементов все еще будет давать высокую производительность и лучшую общую надежность. Что они делают по большому счету, это конечно предлагают больше выбора и большую гибкость. Comodo был первым серьезным комплектом, который действительно бесплатен, но теперь Outpost (примечание Comss.ru: к сожалению, данный продукт не развивается в последнее время ) и ZoneAlarm также выпускают бесплатные комплекты. Все они предлагают серьезную альтернативу платному программному обеспечению.

Бесплатный ZoneAlarm Free Antivirus + Firewall

Автомобиль хорош настолько, насколько хорош его водитель, то же применимо и к программному обеспечению. Нет такой вещи, как программа безопасности разряда "установил и забыл". Постарайтесь выбрать то, что вы можете понять и что вам нравится использовать. Это все равно, что сравнивать фаерволы Sunbelt-Kerio и Comodo. Да, если вы хотите твердо стоять на земле, Comodo может дать лучшую защиту, но он еще и более труден для понимания. Если вы полагаете, что с Kerio проще работать, вы скорее всего будете использовать его эффективно, и в конечном счете это было бы лучшим выбором (только вплоть до Windows XP. Пользователи Windows 7 и выше могут попробовать TinyWall). В качестве ориентира используйте результаты различных тестов, но только для этого. Никакой тест никогда не сможет подменить ваш компьютер, вашу программу и привычки вашего серфинга.

Критерии выбора

Приложения для себя я всегда выбирал следующим образом. Вы, конечно, можете думать по-другому!

Нужно ли оно мне?

Многие люди оспаривают целесообразность использования некоторого программного обеспечения, когда возражают против того, чего оно позволяет достичь. Если в вашем фаерволе уже есть хороший компонент HIPS (как, например, в Comodo, Privatefirewall или Online Armor) то, возможно, этого достаточно. Однако, такие программы, как Malware Defender, используют различные методы, которые позволяют предоставить дополнительную защиту при некоторых обстоятельствах. Только вы можете решить, необходимо ли вам это. Эксперты по прежнему не советуют запускать более чем одно защитное ПО одного и того же вида.

Смогу ли я им пользоваться?

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

Поможет ли оно?

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

У старательных и опытных пользователей для HIPS-программ есть место в сфете безопасности ПК, поскольку HIPS адаптирует иной подход к традиционному сигнатурному ПО. Используемый отдельно или вместе с фаерволом, HIPS добавит вам возможностей для обнаружения.

Не испортит ли оно мою систему?

Программы обеспечения безопасности по самой своей природе, чтобы быть эффективными, должны вторгаться в святая святых вашего ПК. Если у вас реестр уже похож на тарелку со спагетти, если у вас в программных файлах "папки-призраки", если у вас появляются "синий экран", сообщения Windows об ошибках и не запрашиваемые страницы в Internet Explorer, то установка HIPS-программы приведет лишь к неприятностям. Даже на чистой машине принятие неверного решения может привести к необратимой нестабильности. Хотя, в принципе вы можете нанести такой же ущерб и при работе в программе очистки реестра.

Могу ли я использовать более чем одно приложение?

Я не вижу преимущества в использовании совместно двух HIPS-программ. Эксперты все еще не советуют запускать более одного активного защитного приложения одного и того же вида. Опасность возникновения конфликта перевешивает любые возможные преимущества.

Заключение

Пользователям, прежде чем размышлять о HIPS, может быть стоит позаботиться о повышении безопасности их браузера, первым делом заменив IE на Chrome, Firefox или Opera и используя песочницу. Люди, использующие стандартный фаервол, для дополнительной защиты могли бы ввести в работу Malware Defender. А пользователи CIS или Online Armor не получат от этого никаких преимуществ. Нагрузка на систему и использование ресурсов - это то, что должно учитываться, хотя это, главным образом, важно при использовании старых машин. В действительности, нет никакого категоричного решения, кроме того, чтобы сказать, что слишком много исключений из правил, слишком много! В общем, все дело в балансе. Самой большой угрозой для моего компьютера всегда буду я сам!

1. Какой экспертный HIPS по вашему мнению обнаруживает больше всего угроз?
2. По-вашему мнению, насколько хорошо защищает HIPS в ESET NOD32 в "Интеллектуальном режиме" от угроз?
3. В каких антивирусах проактивная защита имеет больше всего "поведенческих" сигнатур? Например, в KIS они называются "шаблоны опасного поведения" (Behavior Stream Signatures) , в Comodo эта технология называется "Viruscope", в Norton - "Sonar".
4. Насколько хорошо защищает от угроз "Экран поведения" в Avast ? Насколько он надёжен или ненадёжен?
5. Какие антивирусы умеют делать откат действий вредоносных программ? Я знаю, что это умеют делать Каперский, Доктор веб.

1) Давно не занимался, но из того-что понял, "Число обнаружений" прямо влияет на такое понятие как "Удобство работы", пример у того-же нода:

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

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

2) HIPS в ESET NOD32 с настройками по умолчанию, так-себе, можно сказать что защиты нет. Но можно настроить под себя.

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

4) К сожалению подобная защита, как я уже писал в пункте 1-н старается уменьшить "диалог с пользователем", для удобства работы, но в то-же время ложные срабатывания также никому не нужны.

Поэтому такая защита "пропускает" так-называемый легальный софт, например винрар-архиватор, используется для упаковки файлов, но так-же этот винрар-архиватор можно использовать и для шифрования файлов, что мешает его использовать в шифровальщиках? :)

Или "косить" под винрар, это просто пример.

Такая-же проблема и с цифровыми подписями.

5)Касперский умеет, доктор не умел раньше, да это и не важно. Если шифровальщик грамотно сделать, это не поможет. Поможет беккап. :)

Опыт такой:

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

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

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

Если нельзя обнаружить потенциальную опасность файла по внешним признакам, можно определить его вредоносную природу по поведению. Именно поведенческим анализом занимается система предотвращения вторжений Host Intrusion Prevention System (HIPS).

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

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

Модули HIPS защищают компьютер от известных и неизвестных видов угроз. При выполнении подозрительных действий вредоносной программой или злоумышленником, HIPS блокирует данную активность, уведомляет пользователя и предлагает дальнейшие варианты решения. На какие именно изменения обращает внимание HIPS?

Приведем приблизительный список действий, за которыми в первую очередь пристально наблюдает HIPS:

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

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

Завершение других программ. Например, отключение антивирусного сканера;

Установка устройств и драйверов, которые запускаются перед другими программами;

Межпроцессорный доступ к памяти, который позволяет внедрять вредоносный код в доверительную программу

Что ожидать от успешной HIPS?

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

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

Существуют ли риски?

Рисками, связанными с HIPS являются ложные срабатывания и неверные пользовательский решения. Система отвечает за определенные изменения, выполняемые другими программами. Например, HIPS всегда отслеживает путь системного реестра HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run , отвечающий за автозагрузку программ при старте системы.

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

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

Заключение: HIPS является важным элементом многоуровневой защиты. Рекомендуется также использовать совместно с системой другие модули защиты. Для оптимальной и эффективной работы HIPS пользователь должен обладать определенными знаниями и квалификацией.

По материалам блога Malwarebytes Unpacked

Нашли опечатку? Выделите и нажмите Ctrl + Enter