Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
защита информации.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
3.2 Mб
Скачать

Препроцессор Stream5

Препроцессор Stream5 производит сборку пакетов сетевого трафика в потоки, относящиеся к одному и тому же TCP или UDP соединению (сеансу). Это делается потому, что сборка сеансов помогает обнаружить атаки, которые невозможно обнаружить на уровне одиночного пакета. Результатом сборки является над-пакет (uber-packet), который передается другим препроцессорам и далее процессору обнаружения атак. Препроцессор делает сборку сеансов для трех протоколов: TCP, UDP, ICMP. Параметры каждого из протоколов настраиваются отдельно.

Если в сигнатуре правила есть ключевые слова «flow» или «flowbits», то это значит, что правило требует активации препроцессора Stream5. Например, следующая сигнатура требует применения препроцессора Stream5:

alert tcp $EXTERNAL_NET any -> $HOME_NET 53 (msg:»DNS zone transfer TCP»; flow:to_server,established; content: «|00 00 FC|»; offset:15; reference:cve,CAN-1999-0532; reference:arachnids,212; classtype:attempted-recon; sid:255; rev:8;)

Stream5 Global Configuration

Сначала надо настроить общие параметры конфигурации Stream5. Формат команды Global Configuration:

preprocessor stream5_global [: список параметров]

Таблица 4. Параметры команды Global Configuration для препроцессора stream5

Параметры конфигурации

Описание параметра

Track_tcp <yes/no>

Сборка сеанса для ТСР. По умолчанию «yes»

Max_tcp <число>

Максимальное количество собираемых ТСР сеансов. По умолчанию 256000, минимум 1, максимум 1052672.

Memcap <число>

Ограничивает объем памяти в байтах, которую Snort может использовать для хранения частично собранных сеансов. Значение по умолчанию 8388608 (8Мб), максимум 1073741824 (1Гб)

Track_udp <yes/no>

Сборка сеанса для UDP. По умолчанию «yes»

Max_udp <число>

Максимальное количество собираемых UDP сеансов. По умолчанию 128000, минимум 1, максимум 1052672.

Track_icmp <yes/no>

Сборка сеанса для ICMP. По умолчанию «yes»

Max_icmp <число>

Максимальное количество собираемых ICMP сеансов. По умолчанию 64000, минимум 1, максимум 1052672.

Flush_on_alert

Обратная совместимость (с предыдущими версиями). По умолчанию отключена.

Show_rebuilt_packets

Для работы под отладчиком – вывод на экран или печать собранных пакетов. По умолчанию отключена.

Prune_log_max <число>

Выдает сообщение, если сборка останавливается при превышении заданного количества байтов. По умолчанию 1048576 (1 Мб), минимум 0, максимум равен Memcap.

Stream5 TCP Configuration

После настройки глобальных параметров надо настроить параметры конфигурации сборки сеансов ТСР для конкретного IP-адреса. Формат команды ТСР Configuration:

preprocessor stream5_tcp: [список параметров]

В ТСР Configuration нужно обязательно указать две политики настройки: одну по умолчанию, другую для конкретного IP адреса, для которого идет сборка сеансов.

Таблица 5. Параметры команды ТСР Configuration для препроцессора stream5

Параметры конфигурации

Описание параметра

bind_to <список IP>

Адрес сети или хоста, к которому будет применена данная политика. По умолчанию any (любой)

Timeout <число>

Указывает, через сколько секунд прекратить сборку сеанса, если это не удалось сделать. Значение по умолчанию 30, максимум 86400 (примерно 1 день)

Policy <тип политики>

Тип политики, связанный с типом ОС на целевом хосте.

min_ttl <число>

Минимальное значение поля TTL (время жизни пакета), которое должен иметь пакет, чтобы быть собранным. Значение по умолчанию 1, максимум 255.

overlap_limit <число>

Количество перекрывающихся пакетов в сеансе. Значение по умолчанию 0, минимум 0, максимум 255.

max_window <число>

Максимальный размер окна в сегменте ТСР, считающийся допустимым. По умолчанию 0, минимум 0, максимум 1073725440. Параметр введен для предотвращения DoS атак на препроцессор, когда нарушитель специально задает слишком большой размер окна, препятствующий нормальной сборке.

detect_anomalies

Обнаруживает пакеты, несоответствующие протоколу ТСР, и предупреждает о них. По умолчанию отключен.

check_session_hijacking

Проверяет, не произошло ли внедрение противника в установленное ТСР соединение. Для этого у каждого кадра данных МАС адреса источника и приемника сверяются с этими же адресами в предыдущих пакетах. По умолчанию отключен.

max_queued_bytes <число>

Определяет максимальное количество байт, которое можно поставить в очередь на сборку пакетов для данного ТСР соединения. Значение по умолчанию 1048576 (1 Мб), максимум 1073741824 (1 Гб). Если значение 0, то предел не ограничен.

max_queued_segs <число>

Определяет максимальное количество ТСР сегментов, которое можно поставить в очередь на сборку потока для данного ТСР соединения. Значение по умолчанию 2621, максимум 1073741824 (1 Гб). Если значение 0, то предел не ограничен.

ports <client/server/both> <all/number(s)>

Определяет список портов для клиента, сервера или того и другого, на которых нужно проводить сборку потока. По умолчанию установлены порты клиента 21 23 25 42 53 80 110 111 135 136 137 139 143  445  513  514 1433 1521 2401 3306. Максимальное значение 65535.