Сессионная защита
Принцип работы
Сессионная защита анализирует сетевые соединения и параметры TLS/DTLS-рукопожатий (SNI, ALPN, JA3/JA4, наборы шифров). При обнаружении аномалий трафику назначается метка для последующей блокировки на сетевом уровне, что позволяет отсекать подозрительные соединения до глубокого анализа и снижать нагрузку на DosGate.
Настройка в веб-интерфейсе
При первом открытии раздела UH отображается пустая рабочая область. Справа расположена панель параметров для создания первой конфигурации.

Панель настройки параметров:

- Название: Указать имя конфигурации.
- Описание: Задать произвольное описание конфигурации.
- Проверка контрольных сумм: Включить проверку контрольных сумм для выбранных протоколов: TCP, UDP, ICMP, ICMPv6.
- Отслеживание соединений: Задать параметры сессионного отслеживания для протоколов TCP, UDP, SCTP, ICMP и ICMPv6. Активный протокол выделяется зеленым цветом, неактивные — серым.
- New — ожидание установления неподтверждённого соединения (по умолчанию 10 секунд).
- Confirmed — время жизни подтверждённого соединения (по умолчанию 1800 секунд).
- Time-wait — ожидание полного закрытия соединения (по умолчанию 20 секунд).
- Catch-up — синхронизация состояний соединений при запуске сессионной защиты.
- Active-close — принудительное закрытие соединений при остановке сессионной защиты или при наступлении заданных условий.
- Валидация IP-фрагментации — проверять корректность фрагментированных IP-пакетов.
TLS и DTLS
Разделы TLS и DTLS предназначены для настройки анализа и обработки защищённого трафика. Они позволяют контролировать и идентифицировать сетевые соединения по параметрам TLS- и DTLS-рукопожатий.
- TLS — используется для контроля защищённых потоковых соединений поверх TCP (например, веб-трафик).
- DTLS — используется для контроля защищённых датаграммных соединений поверх UDP (например, VoIP, видеоконференции и другие сервисы, чувствительные к задержкам).

- Client Hello — анализируются параметры ClientHello, исходящие от клиента.
- Server Hello — анализируются параметры ServerHello, исходящие от сервера.
Для включения анализа использовать соответствующий переключатель.
- JA3
Фильтрация по JA3-хэшу. JA3-хэш — это отпечаток TLS-соединения, формируемый на основе параметров, согласуемых при его установлении. - JA4
Фильтрация по JA4-хэшу. JA4-хэш — это расширенный отпечаток TLS-соединения, формируемый на основе параметров, согласуемых при его установлении, с учётом дополнительных характеристик протокольного обмена. - SNI (Server Name Indication)
Фильтрация по имени хоста. Имя хоста объявляется клиентом при установлении TLS-соединения и используется для выбора целевого сервиса. - ALPN (Application-Layer Protocol Negotiation)
Фильтрация по значениям расширения ALPN. ALPN используется при установлении TLS-соединения для согласования протокола HTTP (например, http/1.1, h2, h3). - Cipher List
Фильтрация по наборам шифров. Наборы шифров объявляются в сообщении ClientHello, а выбранный набор подтверждается в сообщении ServerHello при установлении TLS-соединения.

- Поле поиска (значок 🔍 в правом верхнем углу): Позволяет осуществлять быстрый поиск по списку указанных элементов.
- Переключатели режима фильтрации:
- Сбрасывать указанные — режим, при котором соединения, соответствующие элементам списка, будут блокироваться или отбрасываться.
- Все кроме указанных — режим, при котором соединения, не соответствующие элементам списка, будут блокироваться или отбрасываться.
- Список элементов: Содержит перечень заданных значений: идентификаторы, хэши, имена доменов и другие параметры, используемые для фильтрации.
Оффендеры
Оффендеры предназначены для маркировки и временного отслеживания сетевых объектов (сессий, хостов, потоков), распознанных как нарушители или аномальные участники TLS/DTLS-трафика. Маркировка используется для последующей фильтрации, ограничения или анализа таких соединений.

Верхняя часть интерфейса содержит переключатель между двумя типами защищённых протоколов: TLS и DTLS.
- Тип:
- CONNMARK — Метка для соединений
- DHMARK — Метка для IP-получателя
- HMARK — Метка для IP-отправителя
- SDHMARK — Метка для IP отправителя и получателя
- ID
Целочисленный идентификатор группы или правила, к которому привязывается маркер. По умолчанию: 1. - Value
Значение метки, присваиваемое нарушителю. По умолчанию: 1. - Expire, сек
Время жизни (в секундах) метки после назначения. По истечении этого времени метка автоматически удаляется. Значение по умолчанию: 3600 (1 час).
Пример работы оффендеров
Сценарий: выявление вредоносных клиентов по признакам TLS/DTLS и их блокировка на уровне сетевого трафика.
1. Обнаружение подозрительного клиента
Модуль TLS зафиксировал соединение с аномальными признаками, указывающими на потенциально нежелательный или вредоносный трафик.
2. Назначение метки
В настройках Оффендер задаются параметры метки, которые определяют, как именно будет помечен подозрительный IP-адрес:
Тип: HMARK
ID: 1
Value: 100
Expire: 3600

Это означает, что IP-отправителя будет отмечен меткой 100 на один час.
3. Блокировка по метке
Далее следует настроить правило блокировки для автоматической фильтрации нежелательного трафика. Для этого необходимо:
Перейти в нужный профиль → Правила → Создать новое правило
- Совпадение: hmark
- ID: 1
- Status: valid
- Value: 100
- Действие: DROP

Нажать зелёную кнопку Добавить, а затем жёлтую кнопку Применить.
Переместите правило в начало списка, чтобы оно применялось в первую очередь. Таким образом, после первого подозрительного соединения все последующие попытки с этого IP будут блокироваться ещё до обработки TLS/DTLS.
Сетевые дампы
Функция захвата сетевых пакетов позволяет сохранить трафик для последующего анализа. Захват выполняется без потерь, без передачи пакетов в ОС и без дополнительной задержки.
Механизм записи сетевых пакетов можно держать постоянно-активным. Это не рекомендуется на платформах обрабатывающих более 30Mpps единовременно в рамках сессионной защиты из-за возможной деградации производительности.
Внимание!
При использовании действия захвата трафика рекомендуем использовать дополнительные совпадения для более частной выборки, или использовать захват в комбинации с рейтлимитом, захват на высокой скорости может негативно влиять на производительность платформы
1. Настройка конфигурационного файла
Во время установки dosgate-uh, вы должны будете указать следующую информацию в основном конфигурационном файле (/etc/dosgate-uh.conf):
capture:
path: /var/cache/dosgate-uh/capture
filename: cap_${DEV}_${ID}_${NUM}.pcap
age: 3600
count: 10
size: 10M
- path — директория хранения дампов
- filename — шаблон имени файла:
dev= network interface name,id= номер в очереди,num= номер в группе - age — время жизни файла (сек)
- count — максимальное число файлов в ротации
- size — максимальный размер файла
- path, путь для сохранения файлов с захваченными пакетами.
- filename, сгенерированное название файла.
dev= network interface name,num= номер в группе,id= номер в очереди. - count, количество файлов в группе для ротации. Например 10.
- size, максимальный размер сохраняемого файла в мегабайтах. Например 10 мегабайт (10M).
- age, время ожидания до остановки записи файла. Например 3600 секунд.
2. Создание правила с действием CAPTURE
Отправка трафика на анализ для построения правил автогенера
Создайте правило захвата сетевых пакетов (действие capture on) и его остановки (действие capture off).
Между capture on и capture off обязательно должно присутствовать правило передачи сетевых пакетов в любую из политик dosgate-uh. Именно на уровне dosgate-uh происходит захват пакетов.
Захват пакетов активируется раньше чем любые настроенные политики безопасности (терминальные действия сброса или передачи трафика конечному получателю).

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

Откроется область управления дампами:

В блоке Сетевые дампы отображаются активные настройки:
- path — директория хранения дампов;
- filename — шаблон имени файла;
- age — время жизни файла (сек);
- count — максимальное число файлов в ротации;
- size — максимальный размер файла.
Алгоритм ротации
Файл в который сейчас ведется запись всегда имеет ID 0 (например, cap_ens35_000_00.pcap).
После того как размер файла соответствует size или заканчивается age (время в секундах которое выделяется на время записи), файл переименовывается в соответствии с очередью и лимитом count (например, cap_ens35_000_01.pcap или cap_ens35_000_02.pcap).
В случае, если все ID заняты - dosgate обнулит файл с последним ID и начнет его запись повторно. В таком цикле и ротации работа будет продолжаться и дальше.
Скачать дамп
Для того чтобы скачать дамп, необходимо нажать на название файла в списке. Загрузка начнётся автоматически. Файл сохраняется в формате .pcap.
При скачивании автоматически создаётся снэпшот дампа. Найти и повторно скачать его можно в разделе Снэпшоты.
Срок хранения снэпшотов — 1 год.
Интерфейс после настройки
После настройки конфигураций в разделе отображается рабочая область с активными сессионными профилями.

В центральной части экрана показан список настроенных UH-профилей. Ниже отображается статистика по TLS-отпечаткам JA3/JA4 за выбранный период, включая количество событий и время последнего срабатывания.
В правой части экрана расположена аналитическая панель с детализацией по источникам трафика и динамикой событий. Панель позволяет быстро определить наиболее активные IP-адреса, частоту запросов и характер нагрузки, связанной с конкретными TLS-отпечатками.