WIPS/WIDS - внутренний сервис точки доступа (ТД) по предотвращению и обнаружению вторжений в беспроводную сеть.
По своей сути этот механизм анализирует весь трафик в радио окружении ТД, делает вывод о наличии в сети угроз безопасности, оповещает о них администратора СУ и, при необходимости, предпринимает действия по подавлению этих угроз.
В текущем релизе ПО точки доступа (1.18.0) поддерживается следующий функционал:
- Детектирование DDoS атаки;
- Отслеживание перебора паролей;
- Отслеживание небезопасной конфигурации;
- Детектирование точек, имитирующих SSID;
- Детектирование точек, имитирующих MAC;
- Отключение клиентов от вражеских ТД;
- Отправка трапа о попытке несанкционированного доступа к ТД в СУ.
eltex-wids-service - вспомогательный сервис на серверной стороне, отвечающий за распространение белых/черных списков "вражеских" ТД между участниками WIPS/WIDS.
Лицензирование
Лицензия ограничивает настройку и мониторинг сервиса WIPS/WIDS в СУ.
В демо-лицензии EMS (лицензия по-умолчанию) доступна активация сервиса на 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 сервис" - определяет точку доступа, которая будет использовать сервис. При установке флага, количество доступных устройств, которые могут использовать сервис WIDS/WIPS, уменьшится в лицензии на 1. По-умолчанию флаг снят - сервис WIPS/WIDS не доступен.
- параметр "Реальное применение WIDS/WIPS" - это не редактируемый флаг, он отражает смогла ли система активировать сервис или нет. Может получиться так, что в базе данных параметр "Вкл 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 - активировать сервис, но отключить детектирование угроз. В режиме Key-only точка будет добавлять шифрованную подпись в Beacon для того, чтобы на встречных ТД попасть в список "доверенных" ТД, но сама детектировать угрозы не будет. Для настройки доступно лишь поле Shared key. |
Shared key | ASCII строка от 10 до 32 символов | Общий ключ, используемый для отслеживание доверенных точек доступа в радиоэфире. По-умолчанию значение не выставлено и активировать сервис нельзя, пока оно не будет установлено. |
WIDS list URL | ws://<ip>:<port>/MacLists | Путь до вспомогательного сервиса eltex-wids-service. Не обязательная настройка. |
WIDS MAC list | Имя списка мак адресов | Предоставляется возможность выбрать один из списков MAC-адресов, созданных в разделе "Wireless - WIDS Manager" Не обязательная настройка. |
Scan mode | Passive/Sentry/Home-only | Режим сканирования эфира. Passive - в этом режиме точка доступа через заданные промежутки времени (Passive scan interval) будет кратковременно (Passive scan duration) менять свой текущий канал (на котором идет работа с клиентами) на очередной канал из общего списка, для обнаружения других ТД в эфире. Качество услуги, предоставляемой клиенту, в момент сканирования не ухудшается. Значение по-умолчанию. Sentry - режим сканера - в данном режиме не предусмотрена работа точки доступа с клиентами. Точка постоянно сканирует весь список каналов и максимально быстро обнаруживает угрозы. Home-only - режим, при котором точка работает с клиентом и периодически сканирует эфир только на рабочем канале. Отличие от режима Passive заключается в том, что точка в момент сканирования не меняет канал. |
Passive scan interval, sec | 5..3600 | Период пассивного сканирования. Значение по-умолчанию: 20 сек. |
Passive scan duration, ms | 10..2000 | Длительность пассивного сканировании. Значение по-умолчанию: 100 мс. |
Home-only scan interval, sec | 5..3600 | Период сканирования в режиме Home-only. Значение по-умолчанию: 20 сек. |
Home-only scan duration, ms | 10..2000 | Длительность сканирования в режиме Home-only. Значение по-умолчанию: 100 мс. |
Prevention mode | None/Rogue/All | Режим подавления угроз. None - режим выключен. Значение по-умолчанию. Rogue - сканирующая ТД детектирует MAC-адреса клиентов, которые подключены к "вражеским" ТД, и отравляет DeAuth пакеты от имени "вражеской" ТД клиенту и от имени клиента "вражеской" ТД. All - в данном режиме форсированный DeAuth пакет отправляется не только клиентам, подключенным к "вражеским" ТД, а вообще всем, кто подключен к "не доверенной" ТД. |
Misconfigure detection | Off/On | Функционал, при включении которого точка доступа отправляет в систему управления трап при каждом изменении в настройках конфигурации, если итоговая конфигурация небезопасна. Значение по-умолчанию: off С критериями небезопасной конфигурации можно ознакомиться в статье - v1.16_Критерии небезопасной конфигурации |
DoS Detection Parameters | ||
Mode | Up/Down | Активирование функции детектирования DoS-атак. Значение по-умолчанию: down. DoS атака определяется превышением лимита управляющих фреймов разных типов в радиоэфире. Анализируются только фреймы, в которых destination mac совпадает с mac-адресом сканирующей ТД. (исключение Beacon) |
Interval, sec | 1..86400 | Интервал, в течение которого идет подсчет фреймов. Если за это время заданный лимит превышен, то будет сгенерирован SNMP-трап об обнаружении атаки. Значение по-умолчанию: 1 сек. |
DoS-trigger | 1..1000000000 | Параметр показывает, насколько должно измениться количество пакетов по сравнению с предыдущим периодом, чтобы был отправлен трап о DoS-атаке. Значение по-умолчанию: 250. |
... treshlold | 1..10000 | Пороговый лимит для каждого типа управлящего фрейма(Assoc, ReAssoc, DiAssoc, Auth, DeAuth, RTS, CTS, Prob, Beacon, BlockAck, BlockAckReq, Pspoll ) Значение по-умолчанию: 500. |
Bruteforce Detection Parameters | ||
Interval, sec | 0..86400 | Функция детектирования атаки перебора паролей. В течение указанного интервала считается количество неуспешных авторизаций пользователей на SSID с шифрованием (Personal и Enterprise) активных на сканирующей ТД. Если порог Threshold был превышен, в СУ отправляется трап об обнаружении атаки "перебор паролей". Значение по-умолчанию: 5 сек. При значении параметра Interval = 0, детектирование атаки "перебор паролей" будет отключено. |
Threshold | 1..10000 | Пороговый лимит количества неуспешных авторизаций. Значение по-умолчанию: 25. |
Enable MAC Blacklist | On/Off | При включении данной функции MAC-адреса клиентских устройств, замеченных за атакой "перебор паролей", будут добавлены в черный список на период времени Timeout. При попадании в "MAC Blacklist" устройство будет игнорироваться точкой доступа на период времени Timeout, в результате чего, клиент не сможет подключиться к сети. Значение по-умолчанию: off |
Timeout, sec | 1..86400 | Время хранения MAC-адреса клиентского устройства в черном списке. Значение по-умолчанию: 1800 сек |
Начиная с версии ПО точки доступа 1.18.0 появилась возможность отправки трапа о попытке несанкционированного доступа к ТД в СУ. Данный функционал (ap-security) включен на точке по-умолчанию и работает следующим образом:
Если в течение 180 секунд будет совершено 3 попытки входа в интерфейс управления ТД с неверными учетными данными (login/password) посредством telnet/ssh/web/consol, то ip-адрес устройства, с которого были совершены неудачные попытки входа, будет добавлен в черный список на 5 минут, а в СУ отправится предупреждающий трап.
Имя параметра | Допустимые значения | Описание |
---|---|---|
logon-snmp-retries | 0..127 | Количество неудачных попыток входа в интерфейс управления ТД, при достижении которых за интервал logon-snmp-interval, ip-адрес устройства будет добавлен в "черный список". Значение по умолчанию: 3 |
logon-snmp-interva, sec | 1..86400 | Интервал, в течение которого ведется подсчет неудачных попыток входа в интерфейс управления ТД. Значение по умолчанию: 180 сек |
logon-snmp-freeze-interval, sec | 0..600 | Время, в течение которого ip-адрес устройства, с которого была зафиксирована попытка входа в интерфейс управления ТД с неверными учетными данными, будет находиться в черном списке. Значение по умолчанию: 300 сек |
Редактировать и просматривать значения параметров, а также включать/выключать функционал отправки трапов о попытке несанкционированного входа в интерфейс управления ТД, можно только через CLI точки доступа.
Команда для вывода значений параметров: get ap-security Пример вывода команды: Property Value --------------------------------- logon-snmp-retries 3 logon-snmp-interval 180 logon-snmp-freeze-interval 300 Команда для изменения значения параметра: set ap-security <имя_параметра> <значение> Пример: set ap-security logon-snmp-interval 86400 Команда для выключения работы функционала: set ap-security logon-snmp-retries 0 Для сохранения внесенных изменений введите команду: save-running
Настройка вспомогательного сервиса 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"