MikroTik Daymare. Защищаем оборудование MikroTik от хакерских атак
Устройства MikroTik можно часто встретить в корпоративных сетях, однако конфиги в большинстве случаев оставляют желать лучшего и открывают возможность для целого ряда атак. В этой статье я рассмотрю основные концепции сетевой безопасности RouterOS с уклоном в защиту от спуфинга, обработку трафика и атаки на панели управления.
Это ни в коем случае не полноценный мануал по безопасности сетей с MikroTik, и наоборот — не все из приведенных примеров применишь на другом оборудовании.
Надежно защитить сеть получится, только если понимать всю ее картину и уметь интегрировать функции безопасности так, чтобы они работали корректно и не нарушали нормальную работу. В этом и есть сложность сетевой безопасности. Сети — основа любых современных организаций, и к работе с ними нужно подходить осторожно.
НЕИСПОЛЬЗУЕМЫЕ ИНТЕРФЕЙСЫ
Одно из главных правил хорошего тона — выключать неиспользуемые интерфейсы. Это снижает вероятность несанкционированного подключения. Соблюсти это правило очень просто:
[caster@MikroTikDaymare] /interface/ethernet> set etherX disabled=yes
INFO
Все примеры я буду демонстрировать на RouterOS версии 7, последней на момент написания статьи.
DISCOVERY-ПРОТОКОЛЫ
Discovery-протоколы (DP) уязвимы к двум offensive-векторам:
- Information Gathering — атакующий может извлечь чувствительную информацию против оборудования, рассылающего DP в свои порты;
- Neighbor Table Overflow — атакующий может выполнить переполнение таблицы соседей в контексте протоколов CDP/LLDP, что перегружает процессор устройства, а это приводит к DoS. Атака основана на создании ложных DP-кадров и массовой рассылке с прицелом на порт RouterOS.
Лучшая практика — ограничить работу этих протоколов, то есть оставить их только на тех интерфейсах, где это необходимо. Тогда оборудование не будет лишний раз распространять информацию о себе там, где это не нужно.
[caster@MikroTikDaymare] > /ip/neighbor/discovery-settings/set discover-interface-list=<your interface list> protocol=cdp,lldp,mndp
БЕЗОПАСНОСТЬ WINBOX НА L2
Winbox может работать на уровне L2, то есть сетевой инженер может обратиться к RouterOS, минуя сетевой уровень. За это отвечает именно MAC Winbox Server, позволяющий подключиться к Winbox без IP-адресации.
По умолчанию MAC Winbox Server доступен на всех интерфейсах, и это нехорошо. Для повышения безопасности рекомендуется разрешить использовать его только на определенных интерфейсах.
Пример: я разрешаю MAC Winbox Server только на внутреннем LAN-листе, где находится LAN-мост для работы внутри сети.
[caster@MikroTikDaymare] /tool/mac-server> set allowed-interface-list=<interface_list>
Разрешай MAC Winbox Server там, где тебе нужно.
DHCP SNOOPING
DHCP Snooping — это функция безопасности, которая предотвращает атаку DHCP Spoofing. Атака работает следующим образом: злоумышленник внутри сети поднимает ложный DHCP-сервер для последующей MITM-атаки. По DHCP может передаваться адрес шлюза по умолчанию, и этим адресом может быть хост атакующего.
DHCP Snooping работает по принципу доверенных и недоверенных портов. На недоверенных портах будут отслеживаться все DHCP-сообщения. Цель в том, чтобы проверить, сгенерированы ли они DHCP-сервером. Ведь если в пользовательском сегменте мы будем видеть сообщения вроде DHCPLEASEQUERY, DHCPOFFER и DHCPACK, то это однозначно аномалия и в пользовательской сети находится DHCP-сервер. На доверенных же портах все DHCP-сообщения будут считаться легитимными. Обычно доверенные порты настраиваются на соединениях между коммутаторами и маршрутизаторами, а недоверенные конфигурируются на портах, куда подключаются конечные станции (например, компьютер, принтер, точки доступа, VoIP).
Подробнее о защите от спуфинга ты найдешь в моей статье «Save Me. Защищаем сети от спуфинг‑атак».
В RouterOS DHCP Snooping включается именно на bridge, где все порты устройства уже будут считаться недоверенными. Но чтобы переключить нужный порт, тебе понадобится переходить в настройки самого интерфейса. DHCP Snooping требует вдумчивой настройки, в ходе которой нужно будет отталкиваться от особенностей инфраструктуры.
INFO
В DHCP Snooping может использоваться Option 82. Это возможность протокола DHCP, которая применяется для оповещения сервера DHCP о том, с какого порта поступил DHCP-запрос. Также передается информация об использовании DHCP Relay. Некоторые специфические сценарии требуют Option 82, так что при необходимости включай ее. На сайте MikroTik есть страница о настройке Snooping, где учтен сценарий с использованием «Опции 82».
Включаем DHCP Snooping на bridge:
[caster@MikroTikDaymare] > /interface/bridge/set dhcp-snooping=yes <your bridge name>
Назначаем доверенный порт в контексте DHCP Snooping:
[caster@MikroTikDaymare] /interface/bridge/port> set trusted=yes interface=<interface> bridge=<your bridge name> numbers=<interface number on bridge>
На этом конфигурация DHCP Snooping завершена, на недоверенных портах будут отсекаться служебные DHCP-сообщения, которые обычно используются именно DHCP-сервером. Поскольку при атаке злоумышленник должен навязать свой адрес в качестве шлюза сообщением DHCPOFFER, эти настройки помогают полностью предотвратить ее. Однако будь осторожен с настройками, чтобы не вызвать непреднамеренный DoS.
НАСТРОЙКА ФАЙРВОЛА
Firewall в RouterOS — это подсистема, которая отвечает за обработку и фильтрацию всех пакетов. К настройке файрвола, на мой взгляд, должно быть особое отношение, потому что от нее зависит и производительность устройства, и уровень безопасности.
