Описание
WIPS/WIDS - внутренний сервис точки доступа (ТД) по обнаружению и предотвращению вторжений в беспроводную сеть.
Функционал WIDS/WIPS доступен на следующих точках доступа:
WEP-3ax - начиная с версии ПО 1.14.0.
WEP-30L, WOP-30L, WOP-30LS - начиная с версии ПО 2.6.0.
По своей сути этот механизм анализирует трафик в радио окружении ТД, делает вывод о наличии в сети угроз безопасности, оповещает о них администратора контроллера и, при необходимости, предпринимает действия для подавления этих угроз.
Поддержан следующий функционал WIDS/WIPS:
- Обнаружение DDoS атак;
- Отслеживание перебора паролей;
- Обнаружение точек доступа, имитирующих SSID;
- Обнаружение точек доступа, имитирующих MAC-адрес;
- Отключение клиентов от вражеских ТД.
Лицензирование
Функционал WIDS/WIPS активируется лицензией WLC-WIDS-WIPS.
Подробнее о том, как загрузить и применить лицензию, описано в статье (НУЖНА ССЫЛКА НА СТАТЬЮ!!!!!!!!!!) Активация функционала по лицензии.
Проверить наличие лицензии можно с помощью команды show licence:
wlc-30# show licence Feature Source State Value Valid from Expiries -------------------------------- -------- ----------- -------------------------------- -------------------- -------------------- WLC Boot Active true -- -- WLC Boot Candidate true -- -- WLC-WIDS-WIPS File Active true -- -- WLC-WIDS-WIPS File Candidate true -- --
В случае отсутствия лицензии конфигурирование WIDS/WIPS доступно, но функционал не активирован.
Управление
Активация сервиса
Важно!
Включить сервис можно только в общих настройках WIDS.
Если в общих настройках сервис выключен, то он не работает на всех точках доступа контроллера и включить его на отдельной точке доступа или в конкретной локации нельзя.
Предусмотрена возможность выключить сервис в определенной локации или на конкретной точке доступа с помощью команды wids-disable. При этом команда 'no wids-disable' в локации или в индивидуальном профиле точки доступа не означает, что сервис включен, если одновременно с этим он выключен в общих настройках WIDS.
Для включения сервиса используйте следующие команды:
wlc-30# configure wlc-30(config)# wlc wlc-30(config-wlc)# wids wlc-30(config-wlc-wids)# enable wlc-30(config-wlc-wids)# shared-key ascii-text 0123456789 wlc-30(config-wlc-wids)# do commit wlc-30(config-wlc-wids)# do confirm
Важно!
По умолчанию в общих настройках WIDS используется профиль default-wids. Увидеть настройку можно в полной конфигурации контроллера с помощью команды:
wlc-30# sh ru full wlc wids wids wids-profile default-wids shared-key ascii-text encrypted CCE5513EE45A1EAC450A enable exit
Чтобы проверить настройки профиля используйте команду:
wlc-30# sh ru full wlc wids-profile
wids-profile default-wids
prevention-mode none
attack-stats-trap-send-period 10
scan
mode none
interface all
passive interval 20
passive time 110
sentry time 200
exit
bruteforce-detection
threshold 25
interval 5
no mac-ban enable
mac-ban timeout 1800
no enable
exit
dos-detection
interval 1
trap-send-period 20
threshold leap 250
threshold assoc 500
threshold reassoc 500
threshold disassoc 500
threshold probe 500
threshold beacon 500
threshold blockack 500
threshold blockack-req 500
threshold ps-poll 500
threshold auth 500
threshold deauth 500
threshold rts 500
threshold cts 500
no enable
exit
exit
В данном случае профиль содержит настройки параметров по умолчанию.
Порядок применения настроек
Существуют 3 варианта применения настроек:
1. На все точки доступа контроллера.
2. На точки доступа локации.
3. На конкретную точку доступа.
Приоритет применения настроек
В общих настройках сервиса задается общий ключ доверенных точек доступа, выбирается профиль настроек WIDS, а также белые и черные списки для более точной настройки "доверенных" и "вражеских" ТД. Все эти настройки можно переопределить на уровне локации, а также на конкретной точке доступа через индивидуальный профиль.
Настройка сервиса на точке доступа и логика работы
Атака "Человек посередине" (Man-in-the-Middle, MITM)
Атака, при которой используются методы перехвата данных, позволяющие внедриться в существующее подключение или процесс связи.
Обнаружение вредоносных ТД
Для определения вредоносных точек доступа необходимо настроить сканирование. Сканирование может быть пассивным или активным.
В пассивном режиме сканирования точка доступа периодически (через время, заданное в параметре 'passive interval') и кратковременно (на время, заданное в параметре 'passive time') меняет свой текущий радиоканал, на котором работает с клиентами, на очередной канал из общего списка, чтобы обнаружить другие ТД в эфире. Качество услуги, предоставляемой клиенту в момент сканирования, практически не деградирует.
В активном режиме сканирования не предусмотрена работа ТД с клиентами. Точка доступа всё время сканирует весь список радиоканалов (продолжительность сканирования одного канала задается в параметре 'sentry time') и максимально быстро обнаруживает угрозы.
В результате сканирования точка доступа распределяет все точки доступа в эфире на три группы:
- "Недоверенные" ТД - точки, которые присутствуют в эфире, но о них более ничего не известно;
- "Доверенные" ТД - точки, которые установлены и управляются оператором;
- "Вражеские" ТД - точки, которые несут угрозу для остальных точек доступа в сети - это ТД, которые имитируют MAC-адрес или SSID исходной ТД.
Для однозначного выявления всех "недоверенных" ТД эфире, в Beacon пакет точек доступа, использующих сервис WIDS, добавляется динамически изменяющаяся зашифрованная подпись. Расшифровать пакет могут лишь те точки, на которых настроен идентичный общий ключ 'Shared key' в конфигурации сервиса. Если подписи в пакете нет, либо при его декодировании получен не ожидаемый результат, то точка доступа, от которой был получен пакет, будет считаться "недоверенной". Иначе - "доверенной".
Если "недоверенная" точка доступа имеет MAC-адрес или SSID, совпадающий с текущими значениями на сканирующей ТД, то такая точка будет считаться "вражеской", о чем будет сообщено администратору, посредством отправки с ТД соответствующей нотификации на контроллер.
Настройки сканирования выполняются в профиле WIDS.
Пример настройки пассивного сканирования со временем сканирования одного канала 50 мкс и интервалом между сканированием 30 с, и сканированием в обоих частотных диапазонах:
wlc-30# configure
wlc-30(config)# wlc
wlc-30(config-wlc)# wids-profile test_wids_profile
wlc-30(config-wlc-wids-profile)# scan
wlc-30(config-wlc-wids-profile-scan)# mode passive
wlc-30(config-wlc-wids-profile-scan)# interface all
wlc-30(config-wlc-wids-profile-scan)# passive time 50
wlc-30(config-wlc-wids-profile-scan)# passive interval 30
wlc-30(config-wlc-wids-profile-scan)# do commit
wlc-30(config-wlc-wids-profile-scan)# do confirm
wlc-30(config-wlc-wids-profile-scan)#
wlc-30(config-wlc-wids-profile-scan)# do sh ru wlc wids-profile test_wids_profile
wids-profile test_wids_profile
scan
mode passive
passive interval 30
passive time 50
exit
exit
В зависимости от того, куда необходимо применить профиль, есть следующие варианты:
1. На все точки доступа контроллера. Для этого необходимо указать профиль в общих настройках WIDS.
wlc-30(config)# wlc wlc-30(config-wlc)# wids wlc-30(config-wlc-wids)# wids-profile test_wids_profile wlc-30(config-wlc-wids)# do commit wlc-30(config-wlc-wids)# do confirm wlc-30(config-wlc-wids)#
2. На точки доступа локации. Для этого необходимо указать профиль в настройках конкретной локации. Если одновременно профиль задан в общих настройках и в локации - будет использоваться профиль из локации.
wlc-30# configure wlc-30(config)# wlc wlc-30(config-wlc)# ap-location default-location wlc-30(config-wlc-ap-location)# wids wlc-30(config-wlc-ap-location-wids)# wids-profile test_wids_profile wlc-30(config-wlc-ap-location-wids)# wlc-30(config-wlc-ap-location-wids)# wlc-30(config-wlc-ap-location-wids)# do commit wlc-30(config-wlc-ap-location-wids)# do confirm wlc-30(config-wlc-ap-location-wids)#
3. На конкретную точке доступа. Для этого необходимо указать профиль WIDS в индивидуальном профиле точки доступа. Если одновременно профиль задан в общих настройках и/или в локации и в индивидуальном профиле точки доступа - будут использоваться настройки из индивидуального профиля ТД.
wlc-30# configure wlc-30(config)# wlc wlc-30(config-wlc)# ap 68:13:e2:03:00:10 wlc-30(config-wlc-ap)# ap-location default-location wlc-30(config-wlc-ap)# override wids wlc-30(config-wlc-ap-wids-override)# wids-profile default-wids wlc-30(config-wlc-ap-wids-override)# do commit wlc-30(config-wlc-ap-wids-override)# do confirm wlc-30(config-wlc-ap-wids-override)#
Для более гибкой работы сервиса, есть возможность явно указать список ТД, которые должны считаться "доверенными" ТД (white-list) или "вражескими"(black-list). Эти списки настраиваются в object-group, а применяются так же на 3 уровнях - в общих настройках, в локации или индивидуально на точке доступа.
Особенность применения списков
Пример настройки списков для всех точек доступа контроллера. Здесь в котором в черном списке задан MAC-адрес e4:5a:d4:e8:d9:20 (эта точка доступа будет считаться "вражеской"), а в белом списке задан MAC-адрес e8:28:c1:d7:3c:20 (эта точка будет считаться "доверенной"):
wlc-30# configure wlc-30(config)# object-group mac AP1 wlc-30(config-object-group-mac)# mac address e4:5a:d4:e8:d9:20 wlc-30(config-object-group-mac)# ex wlc-30(config)# object-group mac AP2 wlc-30(config-object-group-mac)# mac address e8:28:c1:d7:3c:20 wlc-30(config-object-group-mac)# ex wlc-30(config)# wlc-30(config)# wlc wlc-30(config-wlc)# wids wlc-30(config-wlc-wids)# black-list AP1 wlc-30(config-wlc-wids)# white-list AP2 wlc-30(config-wlc-wids)# do commit wlc-30(config-wlc-wids)# do confirm wlc-30(config-wlc-wids)# wlc-30(config-wlc-wids)# do sh ru object-groups mac object-group mac AP1 mac address e4:5a:d4:e8:d9:20 ff:ff:ff:ff:ff:ff exit object-group mac AP2 mac address e8:28:c1:d7:3c:20 ff:ff:ff:ff:ff:ff exit wlc-30(config-wlc-wids)# wlc-30(config-wlc-wids)# do sh ru wlc wids wids wids-profile test_wids_profile shared-key ascii-text encrypted CCE5513EE45A1EAC450A enable white-list AP2 black-list AP1 exit
Важно
Если требуется задать пустой список, то необходимо создать пустую группу MAC-адресов и использовать ее на нужном уровне.
Пример настройки пустого списка:
wlc-30# configure wlc-30(config)# object-group mac noAP wlc-30(config-object-group-mac)# exit wlc-30(config)# wlc wlc-30(config-wlc)# wids wlc-30(config-wlc-wids)# black-list noAP wlc-30(config-wlc-wids)# do commit wlc-30(config-wlc-wids)# do confirm wlc-30(config-wlc-wids)# wlc-30(config-wlc-wids)# do sh ru object-groups mac noAP object-group mac noAP exit wlc-30(config-wlc-wids)# wlc-30(config-wlc-wids)# do sh ru wlc wids wids wids-profile test_wids_profile shared-key ascii-text encrypted CCE5513EE45A1EAC450A enable white-list AP2 black-list noAP exit
Предотвращение угроз (WIPS)
Для настройки подавления угроз от вредоносных точек доступа, которые имитируют SSID или MAC-адрес сканирующей точки доступа, используется параметр prevention-mode . В случае активации режима 'Rogue', исходная точка доступа будет отправлять пакеты типа 'Deauthentification' от имени "вражеской" точки доступа клиенту и от имени клиента - "вражеской" точке доступа. При использовании режима 'All' форсированные пакеты 'Deauthentification' будут отправляться не только "вражеским" точкам доступа, но и всем "недоверенным".
Пример настройки подавления угроз от "вражеских" точек доступа:
wlc-30# configure wlc-30(config)# wlc wlc-30(config-wlc)# wids-profile test_wids_profile wlc-30(config-wlc-wids-profile)# prevention-mode rogue wlc-30(config-wlc-wids-profile)# do commit wlc-30(config-wlc-wids-profile)# do confirm wlc-30(config-wlc-wids-profile)#
Применить профиль можно в общих настройках WIDS для всех точек доступа контроллера, в локации или индивидуально на точке доступа.
При активации режима подавления можно настроить период отправки на контроллер сообщений, содержащих статистику срабатываний функционала подавления угроз (WIPS). Для этого используйте параметр attack-stats-trap-send-period и задайте значение в минутах.
wlc-30(config-wlc-wids-profile)# attack-stats-trap-send-period 10 wlc-30(config-wlc-wids-profile)# do commit wlc-30(config-wlc-wids-profile)# do confirm wlc-30(config-wlc-wids-profile)#
При срабатывании функционала WIPS точка доступа будет отправлять нотификации на контроллер с указанной периодичностью.
Атака "Отказ в обслуживании" (denial-of-service, DoS)
Атака создана для значительного затруднения работы сети или системы путем загрузки служебными запросами, которые исчерпывают ресурсы сети или системы для обслуживания пользователей.
DoS атака определяется превышением лимита, который задается параметром threshold для управляющих фреймов разных типов в радиоэфире. В профиле также задается интервал времени, в течение которого идет подсчет фреймов (параметр interval). Если за это время заданный лимит превышен, то будет сгенерировано и отправлено на контроллер сообщение об обнаружении атаки. Период отправки таких сообщений настраивается в параметре trap-send-period.
Также администратором задается параметр threshold leap, который показывает, насколько должно измениться количество пакетов по сравнению с предыдущим периодом, чтобы было отправлено сообщение о DoS-атаке на контроллер.
Пример настройки профиля WIDS с активацией режима обнаружения DoS-атаки при превышении количества любого типа пакетов 700 на интервале 5 секунд, а также при резком увеличении количества пакетов более чем на 500, с периодом отправки нотификаций - 30 секунд:
wlc-30# wlc-30# configure wlc-30(config)# wlc wlc-30(config-wlc)# wids-profile test_wids_profile wlc-30(config-wlc-wids-profile)# dos-detection wlc-30(config-wlc-wids-profile-dos-detection)# wlc-30(config-wlc-wids-profile-dos-detection)# interval 5 wlc-30(config-wlc-wids-profile-dos-detection)# trap-send-period 30 wlc-30(config-wlc-wids-profile-dos-detection)# threshold leap 500 wlc-30(config-wlc-wids-profile-dos-detection)# threshold assoc 700 wlc-30(config-wlc-wids-profile-dos-detection)# threshold reassoc 700 wlc-30(config-wlc-wids-profile-dos-detection)# threshold disassoc 700 wlc-30(config-wlc-wids-profile-dos-detection)# threshold probe 700 wlc-30(config-wlc-wids-profile-dos-detection)# threshold beacon 700 wlc-30(config-wlc-wids-profile-dos-detection)# threshold blockack 700 wlc-30(config-wlc-wids-profile-dos-detection)# threshold blockack-req 700 wlc-30(config-wlc-wids-profile-dos-detection)# threshold ps-poll 700 wlc-30(config-wlc-wids-profile-dos-detection)# threshold auth 700 wlc-30(config-wlc-wids-profile-dos-detection)# threshold deauth 700 wlc-30(config-wlc-wids-profile-dos-detection)# threshold rts 700 wlc-30(config-wlc-wids-profile-dos-detection)# threshold cts 700 wlc-30(config-wlc-wids-profile-dos-detection)# enable wlc-30(config-wlc-wids-profile-dos-detection)# wlc-30(config-wlc-wids-profile-dos-detection)# do commit wlc-30(config-wlc-wids-profile-dos-detection)# do confirm
Применить профиль можно в общих настройках WIDS для всех точек доступа контроллера, в локации или индивидуально на точке доступа.
Атака "Перебор паролей" (Bruteforce)
Метод атаки с угадыванием паролей, учетных данных для входа в систему, ключей шифрования и прочей информации для получения несанкционированного доступ к данным, системам или сетям. Метод заключается в переборе всех возможных комбинаций для получения правильного пароля.
Точка доступа считает количество неудачных попыток авторизации пользователя при Personal или Enterprise авторизации в течении периода, определенного в параметре interval. Если общее количество таких попыток за указанное время превышает заданный порог threshold, то считается, что производится атака перебора паролей, и на контроллер отправляется сообщение о Bruteforce атаке.
При включении опции mac-ban enable точка доступа дополнительно считает количество неудачных попыток авторизации для каждого клиента в отдельности и блокирует доступ клиента к сервису по его MAC-адресу, если количество неудачных попыток авторизации для него превышено, а также оповещает об этом контроллер. По истечению времени блокировки, заданному в параметре mac-ban timeout, клиент вновь может делать попытки подключения к точке доступа, при этом точка доступа также оповещает контроллер о том, что клиент был разблокирован.
Пример настройки профиля WIDS с активацией режима обнаружения атаки "перебор паролей" при превышении порога 10 попыток на интервале времени 5 секунд, с блокировкой клиентов на 60 секунд.
wlc-30# configure wlc-30(config)# wlc wlc-30(config-wlc)# wids-profile test_wids_profile wlc-30(config-wlc-wids-profile)# bruteforce-detection wlc-30(config-wlc-wids-profile-bf-detection)# enable wlc-30(config-wlc-wids-profile-bf-detection)# threshold 10 wlc-30(config-wlc-wids-profile-bf-detection)# interval 5 wlc-30(config-wlc-wids-profile-bf-detection)# mac-ban enable wlc-30(config-wlc-wids-profile-bf-detection)# mac-ban timeout 60 wlc-30(config-wlc-wids-profile-bf-detection)# do commit wlc-30(config-wlc-wids-profile-bf-detection)# do confirm
Применить профиль можно в общих настройках WIDS для всех точек доступа контроллера, в локации или индивидуально на точке доступа.
Параметры WIDS
| Имя параметра | Допустимые значения | Описание |
|---|---|---|
| Настройка WIDS | ||
| Включить WIDS | Вкл/Выкл | Включить/отключить сервис WIDS. Значение по умолчанию: off |
| Общий сетевой ключ | ASCII строка от 10 до 32 символов | Общий ключ, используемый для отслеживание доверенных точек доступа в радиоэфире. по умолчанию значение не выставлено и активировать сервис нельзя, пока оно не будет установлено. |
| Режим сканирования WIDS | none/passive/sentry | None - режим выключен. Значение по умолчанию. Passive - в этом режиме точка доступа через заданные промежутки времени (Период пассивного сканирования) будет кратковременно (Продолжительность пассивного сканирования) менять свой текущий канал (на котором идет работа с клиентами) на очередной канал из общего списка, для обнаружения других ТД в эфире. Качество услуги, предоставляемой клиенту, в момент сканирования, практически не деградирует. Sentry - режим сканера - в данном режиме не предусмотрена работа точки доступа с клиентами. Точка доступа всё время сканирует весь список каналов и максимально быстро обнаруживает угрозы. |
| Интерфейс сканирования WIDS | all/wlan0/wlan1 | all - оба интерфейса в диапазоне 2,4 ГГц и 5 ГГц. Значение по умолчанию. wlan0 - интерфейс в диапазоне 2,4 ГГц. wlan1 - интерфейс в диапазоне 5 ГГц. |
| Период пассивного сканирования, сек | 1..3600 | Период пассивного сканирования. Значение по умолчанию: 20. |
| Продолжительность сканирования канала для пассивного режима, мс | 10..2000 | Длительность пассивного сканировании. Значение по умолчанию: 110. |
| Продолжительность сканирования канала для активного режима, мс | 100..2000 | Длительность нахождения ТД на одном канале, для активного сканирования. Значение по умолчанию: 200. |
| Режим подавления (WIPS) | none/rogue/all | None - режим выключен. Значение по умолчанию. Rogue - сканирующая ТД детектирует MAC-адреса клиентов, которые подключены к "вражеским" ТД, и отравляет DeAuth пакеты от имени "вражеской" ТД клиенту и от имени клиента "вражеской" ТД. All - в данном режиме форсированный DeAuth пакет отправляется не только клиентам, подключенным к "вражеским" ТД, а вообще всем, кто подключен к "не доверенной" ТД. |
| Bruteforce-detection | ||
| Включить обнаружение атак "перебор пароля" | Вкл/Выкл | Включить/отключить функцию детектирования атаки перебора паролей. Значение по умолчанию: off |
| Порог количества неудачных попыток авторизаций | 1..10000 | Пороговый лимит количества неуспешных авторизаций. Значение по умолчанию: 25. |
| Интервал подсчёта неудачных попыток авторизаций, сек | 0..86400 | В течение указанного интервала считается количество неуспешных авторизаций пользователей на SSID с шифрованием (Personal и Enterprise) активных на сканирующей ТД. Если порог был превышен, в СУ отправляется трап об обнаружении атаки "перебор паролей". Значение по умолчанию: 5 сек. При значении параметра равного 0, детектирование атаки "перебор паролей" будет отключено. |
| Включить блокировку клиентов, уличенных в атаке | Вкл/Выкл | При включении данной функции MAC-адреса клиентских устройств, замеченных за атакой "перебор паролей", будут добавлены в черный список на период времени Timeout. При попадании в "MAC Blacklist" устройство будет игнорироваться точкой доступа на период времени Timeout, в результате чего, клиент не сможет подключиться к сети. Значение по умолчанию: off |
| Продолжительность блокировки клиентов, сек | 1..86400 | Время хранения MAC-адреса клиентского устройства в черном списке. Значение по умолчанию: 1800 сек |
| DoS-Detection | ||
| Включить обнаружение атак "отказ в обслуживании" | Вкл/Выкл | Активирование функции детектирования DoS-атак. Значение по умолчанию: off DoS атака определяется превышением лимита управляющих фреймов разных типов в радиоэфире. Анализируются только фреймы, в которых destination mac совпадает с mac-адресом сканирующей ТД. (исключение Beacon) |
| Интервал подсчёта пакетов в радиоэфире, сек | 0..86400 | Интервал, в течение которого идет подсчет фреймов. Если за это время заданный лимит превышен, то будет сгенерирован SNMP-трап об обнаружении атаки. Значение по умолчанию: 1 сек. |
| Порог резкого изменения количества пакетов относительно предыдущего периода времени | 0..86400 | Параметр показывает, насколько должно измениться количество пакетов по сравнению с предыдущим периодом, чтобы был отправлен трап о DoS-атаке. Значение по умолчанию: 250. |
| Период отправки сообщения о детектировании атаки в секундах | 0..604800 | Значение по умолчанию: 20 |
| Пороговое значение пакетов типа "Association request" | 0..86400 | Значение по умолчанию: 500 |
| Пороговое значение пакетов типа "Reassociation request" | 0..86400 | Значение по умолчанию: 500 |
| Пороговое значение пакетов типа "Diassociation request" | 0..86400 | Значение по умолчанию: 500 |
| Пороговое значение пакетов типа "Probe request" | 0..86400 | Значение по умолчанию: 500 |
| Пороговое значение пакетов типа "Beacon" | 0..86400 | Значение по умолчанию: 500 |
| Пороговое значение пакетов типа "Block Ack request" | 0..86400 | Значение по умолчанию: 500 |
| Пороговое значение пакетов типа "Block Ack" | 0..86400 | Значение по умолчанию: 500 |
| Пороговое значение пакетов типа "PS poll" | 0..86400 | Значение по умолчанию: 500 |
| Пороговое значение пакетов типа "Authentication" | 0..86400 | Значение по умолчанию: 500 |
| Пороговое значение пакетов типа "Deauthentification" | 0..86400 | Значение по умолчанию: 500 |
| Пороговое значение пакетов типа "RTS" | 0..86400 | Значение по умолчанию: 500 |
| Пороговое значение пакетов типа "CTS" | 0..86400 | Значение по умолчанию: 500 |

