Фаервол и контент-фильтр в COMODO Internet Security 10-12

Comodo Firewall: режимы работы, опции настройки, порядок применения правил. Контент-фильтр

Основные параметры фаервола

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

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

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

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

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

При подключении к незащищенной Wi-Fi сети возникают оповещения с предложением воспользоваться платным сервисом Trustconnect. Показ этих оповещений отключается соответствующей опцией.

Рекомендуемые параметры фаервола

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

Для контроля соединений по IP-протоколу версии не только IPv4, но и IPv6 следует отметить опцию «Включить фильтрацию IPv6-трафика» (рекомендую).

Опция «Блокировать фрагментированный IP-трафик» защищает от атаки, основанной на отправлении TCP-пакета, фрагментированного настолько сильно, что не удается определить его заголовок и принадлежность к TCP-сессии. Рекомендую включить.

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

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

Создание правил фаервола

Правила для приложений

Обычный порядок создания правила для приложения:

  • открыть вкладку «Правила для приложений», нажать «Добавить»;
  • указать приложение, это можно сделать разными способами:
    • нажать Обзор → Файлы и указать файл;
    • нажать Обзор → Запущенные процессы и выбрать приложение;
    • нажать Обзор и выбрать группу файлов;
    • непосредственно в поле «Имя» ввести путь (либо шаблон с использованием символов * и ? и переменных среды);
  • задать правила:
    • либо нажать «Использовать набор правил» и выбрать из списка нужный набор;
    • либо нажать «Использовать собственный набор правил» и добавить собственные правила (можно скопировать какой-либо набор);
  • нажать «Ok» и упорядочить правила для приложений с помощью кнопок «Вверх»/«Вниз».

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

  • действие: «Разрешить», «Блокировать», или «Спросить»;
  • направление: входящее (т.е. инициированное удаленно), исходящее (т.е. инициированное на данном компьютере) или любое;
  • описание: текст, представляющий данное правило; если не указать, то в списке правил будет отображено подробное описание;
  • адрес отправления и адрес назначения;
  • протокол:
    • IP, в этом случае можно будет конкретизировать протокол на вкладке «Детали IP»;
    • ICMP, в этом случае на вкладке «Детали ICMP» можно будет уточнить тип и ICMP-сообщение;
    • TCP и/или UDP, в этом случае можно будет задать порт источника и порт назначения;
  • опцию, регистрировать ли сетевую активность в журнале.

Отмечу, что в качестве адреса отправления/назначения может выступать не только единичный IP-адрес, но и сетевая зона, и множество других объектов, а также можно инвертировать выбор опцией «Исключить». Аналогично портами источника/назначения могут быть наборы портов, в т.ч. инвертированные. Следует учитывать, что удаленный адрес для исходящего соединения — это «Адрес назначения», а удаленный для входящего — это «Адрес отправления»; аналогично с портами. Поэтому, вообще говоря, одновременное разрешение входящих и исходящих соединений с каким-либо удаленным узлом задается двумя правилами:

  • одно правило разрешает входящие с удаленного узла на любой адрес;
  • другое разрешает исходящие с любого адреса на данный удаленный узел.

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

Глобальные правила

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

Существуют предустановленные наборы глобальных правил. Интерфейс переключения между ними представлен как выбор режима видимости компьютера в сети: «Блокировать входящие соединения» или «Оповещать о входящих соединениях» (Главное окно → Задачи → Задачи фаервола → Скрыть порты).

Выбор предустановленного набора глобальных правил фаервола для блокировки входящих соединений

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

Рекомендуемые глобальные правила фаервола

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

Группы файлов, сетевые зоны, наборы портов и наборы правил

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

Группы файлов формируются на вкладке Рейтинг файлов → Группы файлов, это именованные наборы путей их шаблонов с использованием подстановочных символов * и ? и переменных среды. Например, их использование позволяет создать правила для работы и автообновления Flash-плеера или Java, так как при этих процессах меняются имена файлов и используются временно создаваемые загрузчики. Можно указывать шаблоны имен без использования групп файлов, однако группы предпочтительны благодаря наглядности, компактности, а также возможности назначать ограничения определенного рода одновременно в разных компонентах защиты. Например, можно завести группу «NoInternet», которой будут одновременно запрещены непосредственные интернет-соединения, DNS-запросы, использование службы BITS, запуск браузера и доступ к его памяти.

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

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

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

Порядок применения правил фаервола

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

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

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

Правила для приложений в фаерволе обрабатываются иначе, чем в HIPS.

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

Если в списке правил фаервола не найдется подходящего, то соединение будет автоматически разрешено в следующих случаях:

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

В остальных случаях возникает оповещение или, если включена опция «Не показывать оповещения: Блокировать запросы», соединение запрещается.

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

Можно заметить, что при «Безопасном режиме» фаервол несколько нелогично обрабатывает входящие соединения доверенных программ. Вероятно, это баг.

Доступ к ресурсам локальной сети

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

Статус «доверенной сети»

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

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

Обнаружение сети

Если обнаружение новых сетей отключено или сети ранее был назначен статус «общественной», то следует открыть окно «Управление сетями» (Главное окно → Задачи → Задачи фаервола), отметить пункт «Доверять сети» и нажать «Ok». Результат будет аналогичен предыдущему.

Чтобы обратно вернуть сети нейтральный статус, проще всего отметить пункт «Блокировать сеть» в окне «Управление сетями», а затем в окне настройки открыть вкладку Сетевые зоны → Заблокированные зоны и удалить данную сеть оттуда.

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

Неправильное отображение статуса сети

Внимание! Если в таком окне нажать кнопку «Ok», то активная сеть действительно станет «доверенной», т.е. появится соответствующая запись в списке сетевых зон и создадутся правила фаервола, разрешающие соединения в этой сети. Если доверие сети не требуется, то следует закрывать окно «Управление сетями» кнопкой «Отмена».

Пример разрешений для доступа к локальной сети

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

  • UDP-соединения с портом источника 137 и портом назначения 137: чтобы можно было обращаться к компьютерам по NetBIOS-именам;
  • UDP-соединения с портом источника 138 и портом назначения 138: чтобы при этом видеть сетевое окружение;
  • TCP-соединения с портом назначения 445: для открытия общего доступа к файлам.

Чтобы при создании правил указать «System» в качестве приложения, нужно выбрать его из запущенных процессов.

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

Особенности фаервола

Фаервол Comodo не контролирует входящие loopback-соединения (но контролирует исходящие). Так, при использовании локального прокси достаточно разрешить только исходящие соединения в интернет для прокси-сервера и исходящие в «localhost» для браузера (тогда как многие другие фаерволы потребовали бы еще разрешить входящие из «localhost» для прокси-сервера).

Своеобразно устроено определение IP-адреса по имени хоста: если указать в правиле в качестве адреса доменное имя, то CIS найдет минимальный и максимальный IP-адреса для этого имени, а затем все промежуточные IP будет считать принадлежащими ему же.

Особенность версии CIS 10, которую можно назвать достоинством, — стала определяться принадлежность ICMP-трафика различным приложениям. Прежние версии CIS (а также, например, Брандмауэр Windows) воспринимали этот трафик принадлежащим процессу System.

Контент-фильтр

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

Категории. Импорт пользовательских списков

Списки адресов или их шаблонов (использующих символы * и ?) называются категориями. Собственные категории Comodo — «Безопасные сайты», «Фишинговые сайты» и «Вредоносные сайты». Они обновляются автоматически, их невозможно просмотреть или изменить. Остальные категории — доступные для изменения пользователем — задаются на вкладке «Контент-фильтр» > «Категории». Изначально там находится категория «Исключения», в нее попадают сайты, исключенные из блокировки через оповещения в браузере.

Имеет смысл добавить категории со списками вредоносных сайтов из других источников. Рекомендуются списки MVPS Hosts list и Symantec WebSecurity. Для получения последнего следует зарегистрироваться на сайте MalwarePatrol.

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

Импорт списка вредоносных сайтов

Формат записей в категориях контент-фильтра

Записи в категориях контент-фильтра могут выглядеть доменными именами, адресами отдельных страниц, а также шаблонами с символом подстановки * и ?.

Запись в виде шаблона охватывает адреса, целиком соответствующие этому шаблону. Например, записи *.example.com соответствует адрес http://test.example.com, но не http://test.example.com/404 и не http://example.com.

Запись без символов подстановки идентична шаблону, полученному добавлением в ее конце символа *. Например, записи https://example.com и https://example.com* идентичны, им соответствуют адреса https://example.com, https://example.com/404 и https://example.comss.ru/404, но не https://www.example.com. Таким образом, запись в виде доменного имени сайта охватывает также его каталоги, но не поддомены.

Обозначением протокола HTTP в контент-фильтре является отсутствие протокола. Например, записи вида example.com сответствует адрес http://example.com, но не https://example.com. Записи вида example.com/* соответствует адрес http://example.com/404. Внимание! Адрес http://example.com не соответствует записям http*example.com* и */example.com*, т.е. содержащим хотя бы часть указания протокола.

Протокол HTTPS обозначается явным образом либо с помощью шаблонов. Например, записи https://example.com соответствуют адреса https://example.com, https://example.com/404 и т.п. Записи *//example.com соответствует адрес https://example.com, но не http://example.com и не https://example.com/404.

Следует сказать, что блокировка контент-фильтром HTTPS-страниц происходит без уведомлений и предложений отменить запрет. Более того, блокировка HTTPS-страниц может не работать, в зависимости от используемого браузера.

Итак, предположим, требуется заблокировать сайт example.com одновременно для протоколов HTTP и HTTPS, с каталогами, но без поддоменов. Чтобы сделать это наиболее «прицельно», внесем в блокируемую категорию 4 записи:

  • example.co?
  • example.com/*
  • https://example.co?
  • https://example.com/*

(Использование знака ? вместо какой-либо буквы предотвращает неявную подстановку символа * к концу строки.)

Как вариант, можно обойтись единственной записью вида *example.com*, но тогда будут блокироваться не только требуемые адреса, но и https://www.example.com/404, https://myexample.com и даже http://comss.ru/404/myexample.common.html.

Правила контент-фильтра

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

Редактирование правила контент-фильтра Comodo

Пользователи и их группы добавляются через контекстное меню в поле «Ограничения»: «Добавить» > «Дополнительно...» > «Типы объектов» > отметить все > «Ok» > «Поиск» > выбрать нужную запись > «Ok».

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

Согласно официальному руководству, для Windows 8 и выше в каждом правиле к списку пользователей следует добавлять запись «ВСЕ ПАКЕТЫ ПРИЛОЖЕНИЙ» («ALL APPLICATION PACKAGES») с теми же ограничениями, что и у пользователей. Иначе блокировка не будет работать для Internet Explorer 11.

Для корректной работы с исключениями из блокировки правило «Разрешенные сайты» должно находиться выше правила «Заблокированные сайты».