WIPS/WIDS - внутренний сервис ТД по предотвращению и обнаружению вторжений в беспроводную сеть.
По своей сути этот механизм анализирует весь трафик в радио окружении ТД, делает вывод о наличии в сети угроз безопасности, оповещает о них администратора СУ и при необходимости предпринимает действия по подавлению этих угроз.
В текущем релизе ТД (1.17.0) поддерживается следующий функционал:
- Детектирование DDoS атаки;
- Отслеживание перебора паролей;
- Отслеживание небезопасной конфигурации;
- Детектирование точек, имитирующих SSID;
- Детектирование точек, имитирующих MAC;
- Отключение клиентов от вражеских ТД.
eltex-wids-service - вспомогательный сервис на серверной стороне, отвечающий за распространение белых/черных списков "вражеских" ТД между участниками WIPS/WIDS.
Лицензирование
Лицензия ограничивает настройку и мониторинг сервиса WIPS/WIDS в СУ.
В демо лицензии (лицензия по-умолчанию) доступна активация сервиса на 2-х ТД.
К-во доступных и использованных на сервере лицензий можно увидеть в GUI EMS в разделе Справка - Лицензии, либо непосредственно в файле лицензий /usr/lib/eltex-ems/conf/licence/licence.xml
<group> <title>Wireless WIPSWIDS</title> <count>10</count> <typeList> <type>WiFi</type> </typeList> </group>
Если лицензия на WIPS/WIDS присутствует в списке, то в GUI EMS в меню "Wireless" будет доступна для настройки вкладка "WIDS manager":
А на вкладке "Доступ" ТД появится соотв флаги активации сервиса.
Активация сервиса на ТД
В GUI EMS явно регулируется какой ТД отдать лицензию. Для этого в параметрах доступа ТД есть две настройки :
- параметр "Вкл WIDS/WIPS сервис" - определяет ТД которая будет использовать сервис. При установке флага к-во доступных лицензию уменьшится на 1. По-умолчанию флаг снят - сервис WIPS/WIDS не доступен.
- параметр "Реальное применение WIDS/WIPS" - это не редактируемый флаг, он отражает смогла ли система активировать сервис или нет. Может получиться так, что в базе данных параметр "Вкл WIDS/WIPS сервис" выставлен для большего количества точек чем фактически разрешено в лицензии - тогда для части ТД этот флаг будет снят, хотя флаг активации выставлен.
Если сервис успешно активирован - то есть на странице "Доступ" выставлено оба флага то:
- в на вкладке "Конфигурация" появится новый раздел - "WIDS/WIPS"
- на вкладке "Мониторинг" в разделах "Журнал событий" и "Активные аварии" начнут отображаться события связанные с сервисом WIDS/WIPS
Настройка сервиса на ТД и логика работы
Все ТД в эфире можно разделить на три группы:
- "не доверенные" ТД - те точки которые присутствуют в эфире но о них более ничего не известно.
- "доверенные" ТД - точки которые установлены и управляются оператором
- "вражеские" ТД - точки которые однозначно несет угрозу сети - это ТД которые имитируют MAC-адрес или SSID исходной ТД.
Для однозначного выявления всех "не доверенных" ТД эфире, в Beacon пакет ТД использующих сервис WIDS добавляется динамически изменяющаяся зашифрованная подпись.
Расшифровать пакет могут лишь те точки на которых настроен идентичный ключ Shared key в конфигурации сервиса.
Если подписи в пакете нет либо при его декодировании получен не ожидаемый результат - ТД от которой был получен пакет будет считаться "не доверенной". Иначе "доверенной"
Если "не доверенная" ТД имеет MAC адрес или SSID совпадающий с текущими значениями на сканирующей ТД, то такая ТД будет считаться "вражеской", и будет отправлен соответствующий трап в СУ.
Для более гибкой работы сервиса, есть возможность явно указать список ТД которые должны или не должны считаться "доверенными" ТД. Этот список распространяется между ТД вспомогательным сервисом eltex-wids-service
Основная настройка сервиса происходит на вкладке "WIDS/WIPS" в меню "Конфигурация"
Имя параметра | Допустиные значения | Описание |
---|---|---|
WIDS Parameters | ||
Status | Full/Down/Key-only | Full - активировать работу сервиса отслеживания атак. Down - отключить сервис. (значение по-умолчанию) Key-only - активировать сервис, но отключить детектирование угроз. В таком режиме ТД будет добавлять шифрованную подпись в Beacon, для того чтобы на встречных ТД попасть в список "доверенных" ТД, но сама детектировать угрозы не будет. В таком режиме для настройки доступно лишь поле Shared key |
Shared key | ASCII строка от 10 до 32 символов | Общий ключ, используемый для отслеживание доверенных ТД в радиоэфире По-умолчанию значение не выставлено, и активировать сервис нельзя пока оно не будет установлено |
WIDS list URL | ws://<ip>:<port>/MacLists | Путь до вспомогательного сервиса eltex-wids-service. Не обязательная настройка. |
WIDS MAC list | Имя списка мак адресов | Предоставляется возможность выбрать один из списков мак адресов созданных в разделе "Wireless - WIDS Manager" Не обязательная настройка. |
Scan mode | Passive/Sentry | Режим сканирования эфира. Passive - в этом режиме ТД через заданные промежутки времени (Passive scan interval) будет кратковременно (Passive scan duration) менять свой текущий канал(на котором идет работа с клиентами) на очередной канал из общего списка, для обнаружения других ТД в эфире. Sentry - режим сканера - здесь не предусмотрена работа ТД с клиентами. ТД постоянно сканирует весь список каналов и максимально быстро обнаруживает угрозы. |
Passive scan interval, sec | 5..3600 | Период пассивного сканирования (20сек по-умолчанию) |
Passive scan duration, ms | 10..2000 | Длительность пассивного сканировании (100мс по-умолчанию) |
Prevention mode | None/Rogue/All | Режим подавления угроз. None - выключен Rogue - сканирующая ТД детектирует мак адреса клиентов к которые подключены к "вражеским" ТД, и отравляет DeAuth пакет от имени "вражеской" ТД клиенту, и от имени клиента "вражеской" ТД. All - в данном режиме форсированный DeAuth отправляется не только клиентам подключенным к "вражеским" ТД, а вообще всем кто подключен к "не доверенной" ТД. |
DoS Detection Parameters | ||
Mode | Up/Down | Активирование функции детектирования атак DoS атак DoS атака определяется превышением лимита управляющих фреймов разных типов в радиоэфире. Анализируются только фреймы в которых destination mac совпадает с mac-адресом сканирующей ТД. (исключение Beacon) |
Interval, sec | 1..86400 | Интервал, в течении которого идет подсчет фреймов. Если за это время заданный лимит превышен - будет сгенерирован SNMP-трап об обнаружении атаки. По-умолчанию - 1сек |
... treshlold | 1..10000 | Пороговый лимит для каждого типа управлящего фрейма(Assoc, ReAssoc, DiAssoc, Auth, DeAuth, RTS, CTS, Prob, Beacon, BlockAck, BlockAckReq, Pspoll ) По-умолчанию - 50 для Assoc, ReAssoc, DiAssoc, Auth, DeAuth По-умолчанию - 100 для RTS, CTS, Prob, BlockAck, BlockAckReq, Pspoll По-умолчанию - 200 для Beacon |
Bruteforce Detection Parameters | ||
Interval, sec | 0..86400 | Функция детектирования атаки перебора паролей. В течении указанного интервала считается к-во не успешных авторизаций пользователей на SSID с шифрование (Personal и Enterprise) активных на сканирующей ТД. Если порог Threshold был превышен в СУ отправляется трап об обнаружении атаки. По-умолчанию - 5сек 0 - отключить детектирование этой атаки. |
Threshold | 1..10000 | Пороговый лимит к-ва неуспешных авторизаций. По-умолчанию - 25 |
При активированом сервисе WIPS/WIDS ТД в СУ по-умолчанию отсылает трап при каждом изменении в настройках, если итоговая конфигурация небезопасна.
Критерии небезопасной конфигурации можно посмотреть тут
Настройка вспомогательного сервиса eltex-wids-service
Переопределение "доверенных" и "вражеских" ТД происходит путем явного задания списков в GUI EMS - раздел "Wireless - WIDS Manager" и дальнейшего их указания в поле "WIDS MAC list" на вкладке "WIDS/WIPS" в меню "Конфигурация" ТД
Конфигурационный файл сервиса - /etc/eltex-wids-service/config.json:
{ "ServicePort": 9095, "Database": "wids", "MongoConnectionString": "mongodb://localhost:27017", "FileLog": "/var/log/eltex-wids-service/log.log", "Environment": "production", "LogLevel": "debug", "MaxAge": 7, "MaxSize": 5, "MaxBackups": 14, "SleepDaemonQueueTime": 50000, "FoulTime": 60, "GelfHost": "lab3-test.eltex.loc:12201"