Фильтрация

Введение

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

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

Решение (Действие) может быть следующим:

  • Принимать (Accept);

Система принимает и обрабатывает все пакеты, подходящие под правила фильтрации;

  • Блокировать (Drop);

Система блокирует(откидывает) все пакеты, подходящие под правила фильтрации;

  • Отклонять (Reject);

Система блокирует(откидывает) все пакеты, подходящие под правила фильтрации и отправляет ответное ICMP-сообщение об ошибке;

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

Трафик условно можно разделить на:

  • Входящий;

Трафик, который непосредственно предназначается системе (любой службе, сервису). В заголовке пакетов трафика IP-адрес получателя является любой интерфейс системы.

  • Исходящий;

Трафик, который непосредственно инициируется самой системой (службой, сервисом). В заголовке пакетов трафика IP-адрес отправителя является любой интерфейс системы.

  • Транзитный;

Трафик, который не предназначается и не инициируется системой. Т.е. данный трафик имеет отличные IP-адреса отправителя и получателя в заголовке пакет от IP-адреса интерфейсов системы. В данном случае система должна принять, обработать (фильтрация, коммутация, маршрутизация) и отправить в место назначения данный трафик.

Важно

Входящий трафик обрабатывается Направлением Input.

Важно

Исходящий трафик обрабатывается Направлением Output.

Важно

Транзитный трафик обрабатывается Направлением Forward.

При конфигурировании правила фильтрации важно выбрать корректное Направление трафика. Все транзитные пакеты, которые не предназначаются и не инициируются системой, должны обрабатываться Направлением Forward. Правила фильтрации с Направлением Input и Output будут игнорировать транзитные пакеты. Аналогичная ситуация с входящим и исходящим трафиком. Например, если необходимо заблокировать доступ по протоколу SSH к системе (REFOS), в данном случае в правиле фильтрации должно использоваться Направление Input, т.к. предполагаемый блокируемый трафик будет предназначаться системе (REFOS).

Приоритет обработки трафика правилами фильтрации

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

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

Список фильтрации правил представлен на рисунке.

../../../../_images/one4.png

Список правил фильтрации

Стандартная политика фильтрации трафика

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

Существует несколько политик фильтрации:

  • Стандартная политика INPUT;

  • Стандартная политика OUTPUT;

  • Стандартная политика FORWARD;

  • Стандартная политика DNAT;

  • Стандартная политика SNAT.

Каждое Направление обрабатывается своей стандартной политикой.

Конфигурация производится в разделе Межсетевой экран - Настройки - Общие настройки.

По умолчанию все политики сконфигурированы на прием любого трафика.

Важно

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

Журналирование позволяет фиксировать обработку трафика стандартной политикой фильтрации. По умолчанию журналирование отключено.

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

Важно

Для правильного функционирования фильтра системы. Политики DNAT и SNAT должны использовать параметр Принимать (установлен по умолчанию).

../../../../_images/two5.png

Межсетевой экран - Настройки - Общие настройки

Настройки параметров безопасности

Интерфейсы системы логически разделены на две зоны – LAN и WAN. Сделано это с целью повысить безопасность доступа к системе. По умолчанию весь трафик на интерфейсах LAN для всех Направлений разрешен. Для интерфейсов WAN по умолчанию сконфигурирован набор правил фильтрации по доступу к системе, представленный в таблице:

Набор правил фильтрации по доступу к системе

Направление

Правило фильтрации

Input

Запрещен Web доступ

Output

Запрещен SSH доступ

Запрещен ответ на ICMP-запросы

Так как Направления Input и Output при конфигурации правил фильтрации используются крайне редко, в основном обработка касается транзитных пакетов Направлением Forward, поэтому присутствует возможность ограничить использование данных Направлений – параметры:

  • Предотвращение конфигурации INPUT правил;

  • Предотвращение конфигурации OUTPUT правил.

Настройки параметров безопасности показаны на рисунке

../../../../_images/tri2.png

Настройки параметров безопасности

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

REFOS позволяет производить фильтрацию по разным уровням OSI: L2, L3, L4 и выше.

Основные параметры фильтрации представлены в таблице

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

Параметр

Описание

Действие

Выбор действия по пакету, если параметры пакета подходят под условия фильтрации:

  • Принимать (Accept);

  • Блокировать (Drop);

  • Отклонять (Reject);

Отключить

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

Интерфейс

Интерфейс, на котором применяется правило фильтрации

Направление

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

  • Input

  • Output

  • Forward

MAC-адрес / Инвертировать;

Отправитель / Инвертировать;

Получатель/ Инвертировать;

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

Исходный МАС-адрес

МАС-адрес отправителя (source MAC-address).

Версии TCP/IP

Выбор протокола:

  • IPv4;

  • ARP;

Параметры при выборе протокола IPv4

Протокол

Выбор протокола L3, L4 уровней:

TCP, UDP, ICMP, ESP, AH, GRE, IGMP, PIM, OSPF, GGP, IPENCAP, ST, EGP, IGP, PUP, HMP, XNS-IDP, RDP, ISO-TP4, DCCP, XTP, DDP, IDPR-CMTP, IPv6, IPv6-ROUTE, IPv6-FRAG, IDRP, RSVP, SKIP, IPv6-ICMP, IPV6-NONXT, IPv6-OPTS, RSPF, VMTP, EIGRP, AX.25, IPIP, ETHERIP, ENCAP, IPCOMP, VRRP, L2TP, ISIS, SCTP, FC, MOBILITY-HEADER, UDPLITE, MPLS-IN-IP, MANET, HIP, SHIM6, WESP, ROHC.

По умолчанию используется значение Любой.

Тип ICMP

(Параметр доступен

только при выборе протокола ICMP)

Выбор ICMP-сообщения:

  • Любой;

  • Эхо-запрос;

  • Эхо-ответ;

  • Адресат недоступен;

  • Подавление источника;

  • Перенаправить;

  • Объявления маршрутизатора;

  • Запрос маршрутизатора;

  • Время истекло;

  • Некорректный параметр;

  • Временная метка;

  • Ответ с меткой времени;

  • Информационный запрос (устаревшее сообщение);

  • Ответ на информационный запрос (устаревшее сообщение);

  • Запрос адресной маски (устаревшее сообщение);

  • Ответ на запрос адресной маски (устаревшее сообщение);

По умолчанию используется значение Любой.

Отправитель;

Получатель;

Указать IP-адрес или целую сеть отправителя или получателя.

По умолчанию используется значение Любой.

Диапазон портов источника;

Диапазон портов получателя;

(Параметры доступны только

при выборе протоколов TCP, UDP).

Возможно задать любой порт или список портов источника или получателя, используя параметр Другое. А также можно использовать список портов из поля Хорошо известные порты:

FTP, SSH, Telnet, SMTP, DNS, TFTP, HTTP, POP3, IDENT/AUTH, NNTP, NTP, NetBIOS-NS, NetBIOS-DGM, NetBIOS-SSN, IMAP, SNMP, SNMP-Trap, LDAP, HTTPS, MS DS, SMTP/S, ISAKMP, ModBus(TCP), SUBMISSION, IMAP/S, POP3/S, OpenVPN, MS WINS, L2TP, PPTP, MMS/TCP, RADIUS, RADIUS accounting, MSN, MQTT, IEK 60870-5-104; HBCI, MS RDP, STUN, Teredo, IPsec NAT-T, RTP, SIP, VNC, CVSup, MMS/UDP, MQTT(SSL).

По умолчанию используется значение Любой.

DSCP

Фильтрация по коду DSCP.

Указать Выражение:

  • Равный;

  • Не равен;

По умолчанию используется значение Отсутствует.

Указать Значения:

  • CS0 – CS1; AF11-AF13; AF21-AF23;AF31-AF-33; AF41-AF43;

По умолчанию используется значение Отсутствует.

Параметры при выборе протокола ARP

Тип ARP

Выбор ARP-сообщения:

  • Request;

  • Reply;

По умолчанию используется значение Отсутствует.

Журналирование

Запуск журналирования.

Журналируется каждый пакет, который попадает под текущее правило фильтрации.

Счетчики

Запуск счетчиков пакетов, которые подходят под параметры правил фильтрации.

Описание

Общие комментарии к правилу фильтрации.

Расписание

Задать сконфигурированное расписание, по которому будет функционировать правило фильтрации.

Конфигурация расписания доступна в разделе Расписание.

Ограничение скорости

Задать ограничение по количеству и размеру трафика.

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

  • Параметр Выражение – Больше, чем;

  • В поле Ограничение указать количество пакетов;

  • Параметр Тип – пкт/сек, пкт/мин, пкт/ч;

Дополнительно возможно установить ограничение по размеру:

  • Задать значение в поле Размер пакета;

  • Тип – байты, килобайты;

По умолчанию используется значение Отсутствует.

Пример конфигурации правила с основными параметрами

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

Пример фильтрации транзитного трафика

Параметры транзитного пакета

Должны выполнять следующее действие:

1

MAC-адрес отправителя - 00:0C:29:54:F6:03;

IP-адрес отправителя - 10.0.0.3;

TCP-порт отправителя - 300;

IP-адрес получателя - 20.0.0.3;

Порт получателя - 333;

Принимать

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

Добавление правил фильтрации происходит в разделе Межсетевой экран - Правила фильтрации, используя соответствующий интерфейс.

../../../../_images/four4.png

Пример конфигурации правила фильтрации

../../../../_images/five3.png

Статус правила фильтрации

Lite DPI. Фильтрация трафика по смещению

Механизм Lite DPI позволяет производить фильтрацию по смещению в пакете, а также предусматривает фильтрацию по основным параметрам промышленных протоколов.

Фильтрация по смещению в пакете

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

../../../../_images/six3.png

Представленный блок данных в виде последовательности байтов

При конфигурации профиль Смещение позволяет задать параметры смещения:

  • Заголовок;

  • Смещение в битах;

  • Длину анализируемой части в битах;

  • Значение по которому необходимо анализировать заданную часть.

../../../../_images/seven1.png

Параметры профиля смещение

Пример

Предположим, необходимо анализировать значение в поле Sequence Number (Raw) TCP-сегмента

../../../../_images/eit1.png

Поле Sequence Number (Raw) TCP-сегмента

Если представить данный блок данных в байтах, тогда значение поля Sequence Number (Raw) будет доступно в 38-41 байте и принадлежит заголовку TCP-сегмента. В данном случае для анализа этого поля необходимое смещение является 37 байт, а анализировать необходимо 4 байта.

Для корректной конфигурации необходимо задать Заголовок и значение Смещение в битах. Т.к. значение поля Sequence Number (Raw) находится в TCP сегменте, корректно задать в параметрах Начать с – Сетевой уровень и Смещение – 32. Сетевой уровень заканчивается на 33 байте (смещение до 33 байта) и Смещение 32 бита (4 байта) – это часть заголовка транспортного уровня. Т.е. 37 байта (33+4) полностью игнорируются(смещаются) для обработки и анализируется только 4 байтовое(32 бита) поле Sequence Number (Raw).

../../../../_images/nine1.png

Конфигурация по фильтрации значения в поле Sequence Number (Raw) TCP-сегмента

Фильтрация по основным параметрам промышленных протоколов

Система позволяет производить фильтрацию по основным параметрам промышленных протоколов MQTT и ModBus.

Профили фильтрации протокола MQTT

  • Профиль Connect представлен на рисунке.

Включает параметры Client ID, Client name, Client password.

../../../../_images/ten1.png

Профиль Connect

  • Профиль Subscribe представлен на рисунке.

Включает параметры Message Id, Topic.

../../../../_images/eleven1.png

Профиль Subscribe

  • Профиль Publish представлен на рисунке.

Включает параметры Message + Topic length, Topic length, Topic, Сообщение.

../../../../_images/tvelve.png

Профиль Publish

  • Профиль Unsubscribe представлен на рисунке.

Включает параметры Message ID, Topic.

../../../../_images/trinad.png

Профиль Unsubscribe

  • Профиль Disconnect представлен на рисунке.

Включает параметры Messsage type.

../../../../_images/fourteen.png

Профиль Disconnect

Профили фильтрации протокола ModBus

  • Профиль Transaction ID представлен на рисунке.

Включает параметры ModBus field type, Operation, Данные.

../../../../_images/fiveteen.png

Профиль Transaction ID

  • Профиль Unit ID представлен на рисунке.

Включает параметры ModBus field type, Операция, Данные.

../../../../_images/sixteen.png

Профиль Unit ID

  • Профиль Function code представлен на рисунке.

Включает параметры ModBus field type, Операция, Данные.

../../../../_images/seventeen.png

Профиль Function code