Авто containment comodo что это
Себе и людям
Auto-Containment в COMODO Internet Security 10-12
Автоматическая изоляция программ посредством Auto-Containment в Comodo Internet Security. Смысл опций. Ограничения изолированных программ
Основные черты Auto-Containment как средства защиты
Типичное применение Auto-Containment — автоматическая виртуализация при запуске файлов с рейтингом неопознанных.
Предустановленные наборы правил
Изначально на вкладке Containment → Авто-Containment задано несколько правил. Если набор правил изменить, то всегда можно вернуться к предустановленному варианту нажатием кнопки «Правила по умолчанию».
Предустановленный набор правил будет различным, в зависимости от выбранной конфигурации. В конфигурации «Internet Security» или «Firewall Security» набор правил, заданный по умолчанию, предписывает изолировать только те неопознанные приложения, которые:
Правила в этих конфигурациях устроены так, что почти любое новое неопознанное приложение, появившееся на ПК, будет изолировано при запуске. Однако неопознанные программы, которые находятся на ПК давно и чье происхождение не относится к подозрительным, запустятся без изоляции.
В конфигурации «Proactive Security» предустановленный набор правил Auto-Containment предписывает виртуализировать работу любых неопознанных программ, независимо от их даты и происхождения.
Задание целевых приложений в правилах Auto-Containment
Приложение, к которому должно применяться правило Auto-Containment, называется целью. Цель определяется по совокупности признаков: своему пути или хэшу, происхождению, рейтингу и др. Чтобы задать эти признаки необходимо нажать кнопку Изменить на вкладке Критерии в правиле Auto-Containment.
Путь или хэш целевого приложения
Путь к целевому приложению можно вписать непосредственно в поле Расположение файла, а также можно нажать кнопку Обзор и выбрать файл, каталог или группу файлов. Если требуется, чтобы правило не зависело от пути (а зависело, например, только от рейтинга), то следует выбрать в качестве цели группу «Все приложения».
Вместо пути можно задать хэш, указав файл через соответствующий пункт меню Обзор. Тогда правило будет применяться только к файлам, которые совпадают с выбранным по содержимому, хотя могут отличаться от него по имени и местоположению.
Рейтинг целевого приложения
Если правило должно применяться только к программам с определенным рейтингом, понадобится указать в поле Рейтинг файла один из вариантов: доверенный, неопознанный или вредоносный.
Внимание! Если не создать отдельное правило для файлов с рейтингом «вредоносный», то такие файлы будут запускаться без ограничений Auto-Containment. Одного лишь правила для файлов с рейтингом «неопознанный» недостаточно. Напомню, что приложения получают рейтинг «вредоносных» на основании облачной проверки.
Поставщик целевого приложения
В версии CIS 12 можно потребовать, чтобы правило применялось только к приложениям с подписью определенного производителя.
Производителя можно либо выбрать из имеющегося списка поставщиков, либо указать файл/процесс, имеющий нужную подпись. Можно перечислить несколько подходящих поставщиков.
К сожалению, не предусмотрена возможность задать имя поставщика по маске (например, чтобы охватить возможные его будущие изменения). Любопытно, что по экспериментам, прямое редактирование конфигурации позволяет это сделать и результат оказывается работоспособным.
Возраст целевого приложения
Можно наложить условие возраст целевого приложения, т.е. потребовать, чтобы целевое приложение было создано раньше или позже определенной даты или указать, насколько должно отличаться время его создания от текущего времени.
Отмечу, что возраст определяется на основании файлового атрибута Дата создания (не модификации). Этот атрибут может быть легко изменен без нарушения целостности файла, и, наоборот, модификация файла не приводит к изменению этого атрибута. Таким образом, определяемый «возраст» файла совершенно не гарантирует, что файл был создан в указанное время и не изменялся с тех пор.
Родительский процесс
В версии CIS 12 можно указать, какая программа должна запускать целевое приложение.
Родительскую программу можно задать путем, группой файлов или хэшем. При желании, можно наложить ограничения на ее рейтинг.
По умолчанию правило действует только на непосредственных потомков заданной программы. Но можно увеличить максимальное число уровней наследования. Например, для уровня 2 правилу подойдут приложения, запускаемые не только заданной программой, но и теми, кого она непосредственно запустила.
Происхождение целевого приложения
Можно потребовать, чтобы правило применялось только к приложениям, полученным из определенных источников либо созданным определенными программами или определенными пользователями.
Источником приложения может считаться Интернет, Интранет или Съемный носитель.
Программу, создавшую целевое приложение, можно задать ее путем, хешем или принадлежностью к группе файлов. Интерфейс не позволяет отредактировать путь к программе-создателю (чтобы, например, превратить его в шаблон); однако можно создать группу файлов, наполнить ее произвольными путями или шаблонами и указать эту группу в качестве программы-создателя. Начиная с CIS 12, можно также уточнить, должно ли приложение-создатель иметь определенный рейтинг.
Наконец, можно указать пользователя, от имени которого должно быть создано целевое приложение. Для этого используется стандартный интерфейс выбора пользователя. Вместо конкретного пользователя можно указать группу, к которой он принадлежит.
В одном правиле можно перечислить несколько возможных программ или пользователей, создавших целевое приложение, а также несколько возможных его источников.
Учет происхождения файлов
CIS отслеживает создание исполняемых файлов и записывает информацию об их происхождении в свою базу данных. При этом различается создание файла и его копирование: в данные о копии переписываются некоторые данные об оригинале. Таким образом, программой, создавшей копию файла будет считаться именно та, которая создала его оригинал, а не файловый менеджер, выполнивший копирование.
Порядок применения правил
Итак, программа попадает под действие правила, если для нее выполняются одновременно все условия, перечисленные в окне Критерии файлов:
Если запускаемое приложение является целью нескольких правил, то сработает правило, расположенное выше.
Задание ограничений и исключений в правилах Auto-Containment
Рассмотрим действия над целевыми приложениями, задаваемые в окне создания правила Auto-Containment.
Запуск в реальной среде с ограничениями
Если выбрать действие Запускать с ограничениями, то целевое приложение будет запускаться в реальной среде, но оно и его дочерние процессы будут ограничены в правах. Уровень ограничений задается на вкладке «Опции». При любом из уровней запрещается модификация защищенных файлов и ключей реестра, а также доступ к защищенным COM-интерфейсам. Защищенными являются те файлы, ключи реестра и COM-интерфейсы, которые перечислены в соответствующих списках на вкладке HIPS → Защищенные объекты.
Уровень Частично ограниченное означает, что приложению запрещаются вышеуказанные операции с защищенными объектами, а также привилегированные операции, такие как загрузка драйверов и отладка. Однако при этом разрешен доступ к различным системным ресурсам, наподобие буфера обмена.
Уровень Подозрительное более строгий. При нем разрешены только отдельные системные ресурсы; блокируются операции, требующие привилегий администратора. Приложению запрещается запускать более 10 процессов одновременно.
При уровне Ограниченное разрешено еще меньше системных ресурсов, в частности, блокируется буфер обмена. Как и при уровне «Подозрительное», приложению разрешается запускать одновременно не более 10 процессов. (По моим наблюдениям, блокируются операции, которые разрешены лишь группе пользователей «Прошедшие проверку».)
Уровень Недоверенное накладывает на приложение примерно такие же ограничения, как и уровень «Ограниченное», но при этом вообще запрещает ему запускать другие процессы.
Дополнительно можно ограничить размер памяти, выделяемой приложению, а также время, отводимое на его выполнение.
Запуск в виртуальной среде
Выбор действия Запустить виртуально задает запуск целевого приложения и всех его дочерних процессов в виртуальной среде. На мой взгляд, виртуализация без дополнительных ограничений — наиболее предпочтительный вид изоляции неопознанных приложений. При ней, с одной стороны, реальная система относительно защищена от изменений, с другой — приложениям дается довольно много свободы для корректного выполнения. Особенности виртуальной среды COMODO и приемы работы с ней описаны в отдельной статье.
В дополнение к виртуализации можно наложить на целевое приложение и его дочерние процессы ограничения. Эти ограничения задаются на вкладке «Опции». Они аналогичны ограничениям для запуска в реальной среде, однако в виртуальной среде разрешена модификация защищенных файлов и ключей реестра.
Блокировка запуска приложений
Действие Блокировать означает, что целевому приложению будет запрещено запускаться.
При выборе этого действия на вкладке «Опции» появляется пункт Переместить программу в карантин. Если отметить этот пункт, то при попытке запуска целевого приложения оно будет не только блокироваться, но и удаляться, причем удаление нельзя будет предотвратить никакими оповещениями. Поэтому рекомендую избегать использования данной опции. В частности, понадобится отключить ее в предустановленном наборе правил.
Исключение приложений из изоляции
Действие Игнорировать означает, что целевое приложение будет запускаться без изоляции Auto-Containment. Даже если есть другое правило, назначающее данному приложению изолированный запуск или блокировку, но оно расположено ниже — изоляция не будет применена.
При выборе данного действия на вкладке Опции появляется пункт Не применять выбранное действие к дочерним процессам. Если он отмечен, то только целевое приложение будет исключено из изоляции, а его дочерние процессы будут подчиняться правилам Auto-Containment, как обычно. Если же он не отмечен — из изоляции Auto-Containment будут исключены все дочерние процессы целевого приложения, а также их дочерние проессы и т.д.
Внимание! По умолчанию при создании игнорирующего правила опция «Не применять выбранное действие к дочерним процессам» отключена. Если нет необходимости в бесконтрольном запуске дочерних процессов, рекомендую включить эту опцию.
Иногда действительно необходимо исключить дочерние процессы из контроля Auto-Containment, т.е. отключить опцию «Не применять выбранное действие к дочерним процессам». Отмечу, что правило, исключающее из изоляции целевое приложение вместе с его дочерними процессами, продолжит действовать на эти процессы, даже когда само целевое приложение завершит работу.
Таким образом, исключение из Auto-Containment наследуется более надежно, чем привилегии установщика: они теряются, когда программа-установщик завершает работу.
Однако в некоторых ситуациях исключение дочерних процессов не работает:
Ограничения приложений, изолированных посредством Auto-Containment
Права приложений, изолированных посредством Auto-Containment, определяются видом и уровнем изоляции, списками защищенных объектов, а также правилами HIPS и фаервола. Виды и уровни изоляции рассмотрены выше. Теперь рассмотрим, как влияют на ограничения изолированных приложений списки защищенных объектов и правила HIPS и фаервола.
Программам, выполняющимся в реальной среде с ограничениями Auto-Containment, запрещаются операции с объектами, перечисленными в списках на вкладке HIPS → Защищенные объекты:
Если программа уже изолирована посредством Auto-Containment, то ее активность не вызовет оповещений HIPS. Однако активность изолированных программ можно дополнительно ограничить правилами HIPS.
Посредством HIPS можно лишь ужесточить ограничения, наложенные Auto-Containment, но не снять их. Например, как уже сказано, программе, выполняющейся в реальной среде с ограничениями Auto-Containment разрешено создавать защищенные файлы, шаблон которых не содержит знака | (запрещено лишь модифицировать их). Однако если в правилах HIPS заблокировать такой программе операции с защищенными файлами, то будет запрещено не только их изменение, но и создание.
Если же программа выполняется в виртуальной среде, то на нее не действуют никакие запреты HIPS на создание и изменение файлов и ключей реестра. Однако действуют другие запреты, в частности, на запуск процессов, на доступ к COM-интерфейсам и т.д. Каталоги, перечисленные в списке «Папки с защищенными данными», будут выглядеть для этих программ пустыми.
Обычно сетевая активность изолированных приложений возможна лишь при запуске в виртуальной среде (с ограничениями и без них). Если же приложение выполняется в реальной среде с ограничениями Auto-Containment, то, как правило, независимо от разрешений фаервола, оно не сможет установить соединение, поскольку будут заблокированы необходимые для этого файловые объекты (сокеты) или ключи реестра.
Обнаружение установщиков
Контроль программ, запущенных доверенными установщиками
По умолчанию на вкладке Containment → Настройка Containment включена опция «Обнаруживать программы, требующие повышенных привилегий». Она означает, что программы, имеющие статус доверенных установщиков, будут исключены из контроля Auto-Containment вместе со своими дочерними процессами. Таким образом, эта опция облегчает установку и обновление безопасных программ.
С другой стороны, эта опция несколько ослабляет защиту. В прежних версиях CIS ослабление было значительным, поскольку ряд прикладных программ ошибочно наделялся привилегиями установщика. Сейчас эта проблема во многом устранена и, на мой взгляд, опцию можно оставить включенной.
Если вы все-таки желаете, чтобы Auto-Containment полностью контролировал дочерние процессы доверенных установщиков, отключите опцию «Обнаруживать программы, требующие повышенных привилегий» в настройке Containment и опцию «Доверять приложениям, установленным с помощью доверенных установщиков» в настройке рейтинга файлов. Отключение второй опции необходимо на случай, если доверенный установщик создаст какой-либо неизвестный файл и запустит его.
Оповещения о неопознанных установщиках
Если на вкладке Containment → Настройка Containment опция «Обнаруживать программы, требующие повышенных привилегий» включена, то становится доступной следующая опция: «Не показывать оповещения при запросах повышенных привилегий». Если отключить эту вторую опцию, то при попытке запуска неопознанных программ, имеющих признак установщика, будут выдаваться оповещения.
Более точно — оповещения будут возникать, когда некая программа-установщик (неопознанная или нет) должна быть, согласно правилам Auto-Containment, виртуализирована и/или ограничена (но не заблокирована). Еще более точно — оповещения возникнут не только для программ, которые действительно имеют признак установщика, но и для тех, которые лишь запрашивают при запуске права администратора.
В данных оповещениях предлагается выбрать одно из действий:
При выборе последнего варианта (запуск без ограничений и доверие) автоматически создается правило Auto-Containment, предписывающее запуск данной программы и ее дочерних процессов без ограничений. Это правило бессмысленно при стандартной конфигурации, и я рекомендую его удалить.
Если включить опцию «Не показывать оповещения при запросах повышенных привилегий», то можно будет выбрать вариант, который всегда будет применяться вместо показа оповещения. Рекомендую вариант «Запускать изолированно».
Способы запуска программ без изоляции
Добавление в доверенные или создание исключающего правила
При стандартных наборах правил Auto-Containment изолируются только неопознанные программы. Поэтому, чтобы предотвратить изоляцию какой-либо безопасной программы, следует просто добавить ее в список доверенных. Это можно сделать через окно настройки CIS или, если программа запущена, через список активных процессов.
Иногда приходится иметь дело с часто создающимися или меняющимися программами, например, при программировании. Чтобы не добавлять в доверенные каждую новую программу, можно исключить их из Auto-Containment по расположению, т.е. создать правило:
Проблема всплывающих уведомлений об изоляции
Когда программа впервые изолируется в Auto-Containment, всплывает окно, уведомляющее об этом. Также это окно содержит кнопку разблокировки («Больше не изолировать»).
Внимание! Для исключения программы из изоляции опасно пользоваться кнопкой «Больше не изолировать» на всплывающем уведомлении.
Нажатие кнопки «Больше не изолировать» не только делает данную программу доверенной, но и создает правило, снимающее контроль Auto-Containment со всех ее дочерних процессов. Рекомендую удалить такие правила, если они уже созданы.
Можно запретить уведомления об изоляции, отключив опцию «Показывать информационные сообщения» на вкладке Общая настройка → Интерфейс, однако тогда исчезнут и другие уведомления, например, о блокировке файла антивирусом.
Запуск программ без изоляции через контекстное меню
Предложу способ запуска программ через контекстное меню, чтобы они и их дочерние процессы выполнились без контроля Auto-Containment. Этот способ облегчит установку нового ПО, особенно в условиях отключенного обнаружения установщиков.
Для этого будет использоваться простейшая программа, которая запускает файл, указанный в ее аргументах командной строки. Понадобится скачать архив с программой (пароль cis ), поместить программу в любое удобное место, добавить ее в доверенные и запустить — будет предложено добавить в контекстное меню проводника пункт COMODO: запустить без изоляции (его удаление выполняется повторным запуском). Программа написана на AutoIt3, в папке source прилагается исходный код и конвертер: в случае сомнений вы можете сгенерировать аналогичную программу, проверив ее код и подпись конвертера.
Затем понадобится добавить правило Auto-Containment:
Ограниченность контроля Auto-Containment
В некоторых случаях правила Auto-Containment не действуют.
Для приложений, которые запускаются раньше графического интерфейса CIS, не работают правила, которые предписывают их изолировать, а также правила, которые исключают из изоляции их дочерние процессы. Таким образом, Auto-Containment не спасет от вредоносного приложения, которому удалось попасть в автозагрузку.
Если некое приложение уже изолировано посредством Auto-Containment, то его дочерние процессы будут выполняться с тем же видом изоляции, не подчиняясь другим правилам Auto-Containment. Например, если приложение выполняется как «частично ограниченное», то оно будет запускать и другие приложения как «частично ограниченные», даже если, согласно правилам Auto-Containment, они должны быть заблокированы или запущены виртуально и т.д.
Также правила Auto-Containment не действуют на приложения, запускаемые в виртуальной среде COMODO.
Дополнительные ограничения Auto-Containment не работают для программ, добавленных в исключения опции «Обнаруживать внедрение shell-кода».
Как сказано выше, Auto-Containment не изолирует дочерние процессы программ, выполняющихся с привилегиями установщика (если включена опция «Обнаруживать программы, требующие повышенных привилегий»).
И, конечно, изоляции не подлежат дочерние процессы программ, которым назначено соответствующее исключающее правило.
Виртуальная среда в COMODO Internet Security 10-12. Безопасный шоппинг
Работа в виртуальной среде
Виртуальное выполнение программ
COMODO Internet Security позволяет запускать программы в виртуальной среде (называемой также «контейнер» или «песочница»), чтобы их активность почти не затрагивала реальную систему. Если, например, вызвать контекстное меню на какой-либо программе и выбрать пункт Запустить в Контейнере COMODO, то она запустится и во многих случаях будет полноценно работать, но не произведет нежелательных изменений. Запущенные ей программы также будут виртуализированы. Другие способы запуска программ в виртуальной среде будут рассмотрены ниже.
Обычно виртуализированные программы имеют зеленую рамку вокруг окна, однако гарантированный способ узнать о виртуализации — нажать в главном окне CIS индикатор Изолировано в Контейнере и найти программу в открывшемся списке активных процессов: в столбце Ограничение должно быть указано Полная виртуализация. Аналогичное можно увидеть в менеджере процессов KillSwitch.
Через контекстное меню можно открывать в контейнере файлы любых типов, а не только исполняемые. Так, сомнительные документы предпочтительнее открывать виртуально, во избежание эксплоитов или вредоносных макросов.
Очистка виртуальной среды
Следы активности виртуализированных программ сохраняются в специальном каталоге на диске и в специальном разделе реестра. Эти данные останутся доступными и после перезагрузки компьютера. Например, можно будет запускать и использовать программы, установленные в виртуальной среде.
Области общего доступа
Если необходимо сохранить файлы с результатами работы виртуализированной программы, следует поместить их в специальную папку обмена, доступ к которой не виртуализируется. Соответственно, очистка Контейнера не затронет эти файлы.
Разумеется, в такой папке нельзя хранить важные файлы, так как сомнительные программы будут иметь к ним полный доступ.
Если виртуализированная программа сохранила результаты работы в иное место, следует запустить какой-либо файловый менеджер (проводник, Total Commander и т.п.) виртуально через контекстное меню и переместить нужные файлы в папку обмена. Также можно сделать ярлык для запуска файлового менеджера в виртуальной среде.
Если необходимо, чтобы для какой-либо программы, выполняемой в виртуальной среде, даже после очистки Контейнера сохранялись изменения конфигурации и прочие данные, можно исключить из виртуализации используемые ей конфигурационные файлы и записи реестра. Эти исключения задаются в соответствующих опциях на вкладке Настройка Containment.
Особенности виртуализации COMODO
Параметры виртуальной среды
Опция Включить автозапуск сервисов, установленных в Контейнере (Containment → Настройка Containment) имеет следующий смысл: если в виртуальной среде создать службу, то при каждом использовании виртуальной среды эта служба будет запускаться. Если лишь перезагрузить компьютер — автозапуск службы не произойдет. Но если запустить какую-либо программу в виртуальной среде, то вместе с ней запустится и эта служба. Так запускаться будут программы, установленные именно как службы, а не добавленные в автозагрузку иными способами. При очистке виртуальной среды эти службы, естественно, удаляются. Если нет необходимости в данной опции, рекомендую ее отключить.
Опции на вкладке Настройка Containment, связанные с обнаружением программ, требующих повышенных привилегий, относятся к компоненту Auto-Containment, а не собственно к виртуальной среде.
Размещение данных виртуальной среды
Виртуальному реестру соответствует раздел реального реестра HKLM\SYSTEM\VritualRoot (sic!). При работе виртуализированных программ данные реестра записываются в его подразделы.
При очистке виртуальной среды каталог VTRoot и раздел реестра VritualRoot удаляются.
Контроль HIPS над виртуализированными программами
Разбор компонента HIPS будет в другой статье, здесь же коснусь особенностей его работы с виртуальной средой.
На программы, выполняющиеся виртуально, совершенно не действуют запреты на изменение файлов и ключей реестра. Внимание! Такие программы смогут повредить файлы и ключи реестра, исключенные из виртуализации, независимо от правил HIPS. Таким образом, повторю, опасно добавлять что-либо важное в области общего доступа.
Активность программ, выполняющихся виртуально, не вызывает оповещений HIPS: им разрешается все, что не запрещено в правилах. Как уже сказано, защита файлов и реестра не работает даже при наличии запретов, однако можно наложить запреты на запуск приложений, на завершение процессов, на слежение за клавиатурой, на доступ к COM-интерфейсам и др.
Изоляция буфера обмена
Запрещен обмен данными между реальной и виртуальной средой через буфер обмена. Данные, скопированные в реальной среде, не вставляются в виртуально запущенную программу. И наоборот, данные, скопированные из программы в Контейнере, не вставляются в программу, работающую в реальной среде.
В то же время можно обмениваться данными внутри виртуальной среды: копировать из одной программы и вставлять в другую.
Тем не менее, есть способ переносить содержимое буфера обмена между реальной и виртуальной средой. Для этого достаточно исключить какую-либо программу, например, текстовый редактор из «защиты от shell-кода». Однако тогда ослабнет контроль над этой программой и ее дочерними процессами. Поэтому предложу другой вариант.
Программы написаны на AutoIt3, в папке source прилагается исходный код и конвертер: в случае сомнений вы можете сгенерировать аналогичные, проверив их код и подпись конвертера.
Теперь, чтобы «переместить» буфер обмена из одной среды в другую, достаточно запустить программу ComodoShareClipboard.exe — данные станут доступны для вставки. Это работает в обе стороны, из реальной среды в виртуальную и обратно. Ограничение: данные должны быть текстом, не превышающим несколько килобайт.
Защита от чтения
Виртуальная среда может защищать данные не только от изменения, но и от чтения: если в окне настройки открыть вкладку HIPS → Защищенные объекты → Защищенные данные и добавить в список какой-либо каталог, то виртуализированные приложения будут воспринимать его пустым. Полезно скрыть таким способом каталог с профилем интернет-браузера, различные хранилища паролей и т.п.
Через интерфейс CIS можно добавить в список «Защищенных данных» лишь те каталоги, которые видны в проводнике. Если необходимо защитить данные в каком-либо скрытом каталоге, следует временно разрешить показ скрытых файлов и папок в проводнике (например, через «Панель управления»).
В «Защищенные данные» желательно добавлять каталоги, расположенные только на локальных дисках. Формально можно добавить в этот список съемные носители или виртуальные шифрованные диски, но для них защита от чтения, как правило, не работает.
Начиная с CIS 11, защищать от чтения можно делать не только каталоги, но и произвольные файлы, шаблоны их путей и группы — соответствующие файлы становятся невидимыми в виртуальной среде. Также в какой-то мере стало работать сокрытие данных, размещенных на виртуальных шифрованных дисках. Однако, например, данные на томе VeraCrypt, смонтированном в режиме съемного устройства, по-прежнему не скрываются.
Специализированные программы, запущенные в виртуальной среде от имени администратора, могут обойти эту защиту посредством прямого доступа к файловой системе и прочитать конфиденциальные данные. Кроме того, такие программы способны прочитать данные из удаленных файлов.
Контроль фаервола над виртуализированными программами
В отличие от HIPS, фаервол выдает оповещения о программах, выполняющихся в виртуальной среде.
Когда программа запущена виртуально, фаервол контролирует ее сетевую активность, независимо от рейтинга. Таким образом, при «Безопасном режиме» фаервол обращается с виртуализированными программами так же, как при «Пользовательском наборе правил»: в отсутствие разрешающего или запрещающего правила выдается оповещение (если их показ не отключен).
Итак, для использования браузеров и подобных программ в виртуальной среде необходимо создать для них разрешающие правила, даже если выбран «Безопасный режим» фаервола. Ценой этого неудобства предотвращается утечка данных в ситуации, когда вредоносная программа запускает безопасную для доступа в интернет.
Разумеется, разрешающие правила не потребуются, если фаервол вообще отключен или настроен на разрешение всех запросов без оповещений.
Прочие ограничения программ в виртуальной среде
Независимо от правил HIPS, программам, которые выполняются виртуально, ограничен доступ к клавиатуре и монитору: им запрещается слежение за нажатиями клавиш, отдельные способы снятия скриншотов, а также создание рабочего стола, блокирующего интерфейс. Эта защита появилась в CIS 10, она в некотором смысле более мягкая, чем создаваемая правилами HIPS, и потому должна меньше грозить конфликтами и неудобствами.
Доступ к некоторым другим ресурсам также запрещен из виртуальной среды, независимо от правил HIPS. Например, в виртуальной среде недоступна служба BITS, которая могла бы использоваться для выхода в интернет в обход фаервола. Также блокируются различные операции виртуализированных процессов с процессами, выполняющимися в реальной среде.
В то же время в виртуальной среде доступен интерфейс DNS, что создает некоторую угрозу утечки данных в обход фаервола, — однако его можно закрыть правилами HIPS.
Еще один способ обойти фаервол из виртуальной среды — поместить вредоносный код в память браузера или другой программы, имеющей разрешения в правилах фаервола. Эту угрозу также можно предотвратить правилами HIPS.
В виртуальной среде не действуют правила Auto-Containment: например, если некое приложение положено блокировать, то оно все же выполнится при запуске в виртуальной среде.
Способы открытия файлов и ссылок в виртуальной среде
Обычно, чтобы открыть файл в виртуальной среде, удобнее всего воспользоваться пунктом контекстного меню Запустить в Контейнере Comodo, упомянутым в начале статьи. Однако возможны особые случаи, рассмотрим их.
Установка программ в виртуальной среде и их запуск
В виртуальной среде можно устанавливать различные программы, пользоваться ими и сохранять результаты работы. Программы, установленные виртуально, будут доступными и после перезагрузки компьютера. Удаление этих программ вместе со следами их работы производится нажатием кнопки «Очистка Контейнера».
Чтобы установить программу виртуально, необходимо запустить ее установщик через пункт контекстного меню Запустить в Контейнере COMODO. Однако чтобы воспользоваться установленной программой, понадобится сначала через контекстное меню открыть в виртуальной среде какой-либо файловый менеджер, найти исполняемый файл или ярлык этой программы и запустить ее.
Поскольку при установке программы обычно создается ее ярлык на рабочем столе, было бы удобно сразу открывать виртуальное содержимое рабочего стола. Для этого создадим ярлык, указав в поле Объект команду:
Зададим этому ярлыку желаемый значок и назовем, например, «Desktop (virtual)». Теперь этот ярлык будет запускать в виртуальной среде проводник с открытым в нем рабочим столом.
Открытие интернет-ссылок в песочнице
Можно оснастить интернет-браузер контекстным меню для открытия сомнительных ссылок в виртуальной среде. Приведу пример для браузера Firefox:
Запуск программ в песочнице через интерфейс CIS
Интерфейс CIS имеет специальную кнопку для запуска программ в Контейнере: Главное окно → Задачи → Задачи Containment → Запуск в виртуальной среде. Этой кнопкой можно также создать ярлык для запуска какого-либо приложения в виртуальной среде.
Также можно создавать правила, чтобы определенные программы или их группы всегда запускались в виртуальной среде. Для этого следует включить Auto-Containment, и добавить правило на вкладке Containment → Авто-Containment. Если при этом вы не хотите, чтобы все неопознанные программы автоматически запускались виртуально, деактивируйте соответствующее правило на этой вкладке.
Запуск программ в виртуальной среде с ограничениями
Существует возможность запускать программы не только в виртуальной среде, но и с дополнительными ограничениями. Для этого следует включить Auto-Containment и создать правило, предписывающее целевому приложению запускаться виртуально, при этом задав на вкладке Опции уровень ограничений. Данные ограничения наследуются дочерними процессами. Так, если задать какому-либо приложению уровень Ограниченное, то оно и запущенные из него программы будут работать в виртуальной среде и не получат доступа к буферу обмена. Также можно ограничить время выполнения этих программ и выделяемую им память.
На мой взгляд, неудобно заниматься настройкой CIS каждый раз, когда требуется запустить новое сомнительное приложение в виртуальной среде с ограничениями. Предложу способ такого запуска через контекстное меню проводника.
Для этого будет использоваться простейшая программа, которая запускает файл, указанный в ее аргументах командной строки. Понадобится скачать архив с программой (пароль cis ), поместить программу в любое удобное место, добавить ее в доверенные и запустить — будет предложено добавить в контекстное меню проводника пункт COMODO: открыть в песочнице с ограничениями (его удаление выполняется повторным запуском). Программа написана на AutoIt3, в папке source прилагается исходный код и конвертер: в случае сомнений вы можете сгенерировать аналогичную программу, проверив ее код и подпись конвертера.
Затем понадобится включить Auto-Containment и добавить новое правило:
Виртуальный рабочий стол
Кроме виртуального запуска отдельных программ, CIS имеет дополнительную оболочку Виртуальный рабочий стол. Эта оболочка предназначена для запуска/установки сомнительных программ и посещения сомнительных сайтов без причинения вреда реальной системе. Программы, запускаемые в этой оболочке, выполняются в виртуальной среде, соответственно, вносимые ими изменения виртуальны и уничтожаются после очистки Контейнера, а чтобы сохранить файлы с результатом работы таких программ, понадобится поместить эти файлы в область общего доступа.
На мой взгляд, в отношениии безопасности «Виртуальный рабочий стол» не имеет преимуществ перед обычным виртуальным запуском программ через контекстное меню, разве что скрывает реальный рабочий стол от снятия скриншотов. В качестве же полноценного безопасного рабочего стола рекомендую использовать настоящие виртуальные машины.
С другой стороны, «Виртуальный рабочий стол» пригодится при использовании компьютера детьми, чтобы устанавливаемые ими программы не нанесли вреда реальной системе. При этом можно запретить переключение в реальную систему, установив пароль на «Виртуальный рабочий стол» (Containment → Настройка Containment), однако пользователю не составит труда обойти этот запрет.
Несмотря на наличие в «Виртуальном рабочем столе» виртуальной клавиатуры, защищающей от перехвата нажатий клавиш, не рекомендую выполнять в в этой среде важные операции, наподобие платежных. Для них предназначена совершенно другая среда: Безопасный шоппинг.
Безопасный шоппинг
Общие сведения
Помимо виртуальной среды, предназначенной для запуска сомнительных программ и защищающей от них реальную систему, CIS имеет среду Безопасный шоппинг, которая, наоборот, защищает запущенные в ней программы от воздействий и наблюдения из внешней среды. Основное назначение Безопасного шоппинга — защита платежных операций в интернет-браузере, но также он пригоден для защищенной работы других важных приложений: почтовых клиентов, менеджеров паролей и т.д. Защита включает следующие меры:
Если какая-либо программа работает в среде «Безопасного шоппинга», то и ее дочерние процессы запускаются в этой среде, за некоторыми исключениями. Отмечу, что эта среда не виртуализирует работу запущенных в ней программ: они вносят изменения в реальную систему.
Использование «Безопасного шоппинга»
Попасть в среду «Безопасного шоппинга» можно через главное окно CIS: Задачи → Общие задачи. Собственно «Безопасный шоппинг» выглядит как отдельный рабочий стол, панель задач которого содержит ярлыки для запуска браузера и проводника.
Чтобы запустить в среде «Безопасного шоппинга», помимо браузера, произвольную программу, следует открыть проводник и перейти к ней, или к ее ярлыку, или к ассоциированному с ней файлу. Например, в среде «Безопасного шоппинга» можно запустить менеджер паролей KeePass, чтобы подставлять пароли в защищенный браузер. При этом программам, выполняющимся вне защищенной среды, будет запрещено читать память KeePass’а и перехватывать подставляемые пароли.
К сожалению, «Безопасный шоппинг» блокирует автонабор, выполняемый KeePass’ом, принимая его за попытку удаленного доступа. Однако остается возможность подставлять пароли перетаскиванием их из KeePass’а в браузер или копированием в буфер обмена. Повторю, что содержимое буфера обмена скрывается от программ, работающих вне среды «Безопасного шоппинга».
Другой способ перехода в среду «Безопасного шоппинга» — через оповещения. Если в обычной среде открыть определенный сайт, появится оповещение, предлагающее открыть этот сайт в защищенной среде. Список таких сайтов задается в настройке CIS на вкладке «Безопасный шоппинг».
Существует также возможность запускать программы в защищенной среде без переключения на отдельный рабочий стол: если в оповещении выбрать не «Безопасный шоппинг», а Безопасный браузер, то браузер откроется в обычном рабочем столе. При этом браузер будет иметь голубую рамку и, согласно официальному руководству, к нему будут применены те же защитные меры, что и при «Безопасном шоппинге», за исключением того, что «полная» изоляция процесса будет заменена «частичной». Если таким браузером запускать различные приложения (например, используя меню Файл → Открыть. ), то, как правило, они запустятся тоже в защищенной среде, с голубой рамкой вокруг окна. Однако, в отличие от «Безопасного шоппинга», проводник запустится в обычной среде.
Контроль рейтинга программ в среде «Безопасного шоппинга»
Если программа выполняется в среде «Безопасного шоппинга», в т.ч. как «Безопасный браузер», то в списке акивных процессов (Главное окно → Задачи → Задачи Containment → Активные процессы) в столбце Ограничение будет указано Безопасный шоппинг.
В противоположность виртуальной среде и «Виртуальному рабочему столу», в среде «Безопасного шоппинга» может пресекаться запуск неопознанных программ, в зависимости от настройки проактивной защиты. Если HIPS включен в «Безопасном режиме» и имеет правила наподобие предустановленных в конфигурации «Proactive Security», то запуск неопознанного файла в среде «Безопасного шоппинга» будет предотвращен оповещением. Если при этом будет использоваться именно рабочий стол «Безопасного шоппинга» (в отличие от «Безопасного браузера»), то оповещение будет недоступно: понадобится переключиться на обычный рабочий стол, чтобы ответить на него.
Если запуск неопознанных программ контролируется посредством Auto-Containment с автоматическим их запуском в виртуальной среде, то неопознанная программа, запущенная из среды «Безопасного шоппинга», запустится виртуально. Однако, несмотря на выполнение в виртуальной среде, у нее будут особые права, в частности, на чтение памяти процессов, выполняющихся в среде «Безопасного шоппинга».
Таким образом, «Безопасный шоппинг» эффективнее, если настроить проактивную защиту на предотвращение запуска неопознанных программ: заменить в правилах Auto-Containment их виртуализацию блокировкой или включить HIPS в «Безопасном режиме» с показом оповещений.
Некоторые проблемы «Безопасного шоппинга»
Среда «Безопасного шоппинга» или «Безопасного браузера» защищает, в основном, запущенные в ней программы от воздействия программ, выполняющихся вне этой среды. Таким образом, не рекомендую полагаться на эту защиту, если сам браузер заражен, имеет вредоносные расширения или вместе с браузером запускается другая зараженная программа. Впрочем, при должной настройке HIPS пресекает работу вредоносных приложений (но, увы, не вредоносных модулей).
Согласно тестированию лаборатории AVLab, «Безопасный шоппинг» не защищает от подмены кода посещаемых HTTP-сайтов, от перенаправлений с HTTPS-сайтов и от некоторых других атак.
Кроме того, «Безопасный шоппинг» угрожает некоторыми конфликтами, даже когда он лишь установлен и не используется. В частности, наблюдались проблемы с песочницей Sandboxie: она не очищалась после запуска в ней браузера Firefox, а запуск Google Chrome вообще приводил к BSOD’у. Эти и некоторые другие конфликты устраняются настройкой песочницы Sandboxie: следует в разделе Доступ к ресурсам → Доступ к файлам → Блокировать доступ выбрать пункт Все программы и добавить строки: