Sacs mikrotik что это
Mikrotik — защита от брутфорса и сканирования
В этой заметке я опишу основные шаги по защите от нетаргетированного ботнета (который сканирует и брутфорсит все ip, которые найдет в сети). Как только вы выставляете любую железку с белым ip в мир — не пройдет и 5-10 минут, как его начнут сканировать, поэтому мы создадим несколько простых правил, которые будут банить ip ботнета и drop`ать их пакеты.
Основными целями всегда являются дефолтные порты и сервисы с наиболее уязвимыми приложениями за ними, например:
На основе обращений к указанным портам мы и создадим правила, по которым все ip, которые обращаются к ним, будут считаться брутфорсерами и, соответственно, будут добавлены в черный список.
Для начала отключим лишние сервисы на самом Mikrotik (или сменим их порт на нестандартный). Делается это в IP — Services
Теперь создадим белый список ip, на которые не будут действовать наши правила-ловушки. На всякий случай сюда можно добавить и ip шлюза провайдера (маловероятно что он будет стучаться к нам с наружи, но может случиться, что он является nat`ом для сотрудников Вашего провайдера и если они по какой-то причине начнут сканировать Ваш ip, то ip шлюза окажется в черном списке, что повлечёт за собой если не отсутствие интернета, то ряд мелких ошибок — наверняка).
Свой белый список для удобства я обозвал WhiteList. Создается он в IP — Firewall — Address List
Если нужно добавить много IP — проще сделать это через консоль:
Дальше создадим правила — если какой-то ip обратился на дефолтный порт (22й в этом примере) — он попадает в черный список (BlackList) при условии, что он не из WhiteList (обратите внимание на восклицательный знак рядом с Src.Address List). IP — Firewall — Filter Rules — Add
На скриншоте я указал In.Interface, в который включен кабель провайдера. Вместо этого можно указать In.Interface List — WAN. Помимо этого — если не хотите банить ip навечно — в поле Timeout вкладки Action можно выставить время, спустя которое ip удалится из списка. Пример (бан на 12 часов и 3 дня):
Добавляем правила через консоль:
Все созданные правила должны быть выше разрешающих в списке IP — Firewall. Если все сделано правильно — спустя несколько минут в адресном листе BlackList появятся первые ip. У меня правила работают давно, поэтому и их количество уже внушительно:
Теперь осталось только заблокировать все обращения с IP из черного списка. Как видно на этой Traffic Flow диаграмме, ближе всего ко «входу» находится Raw Prerouting.
В нём мы и создадим правило — будем drop`ать все пакеты, поступившие с IP из черного списка на внешний интерфейс Микротика. IP — Firewall — Raw — Add.
Созданное правило должно стоять первым в списке.
3 комментария
Очень инетересная статья.
Но хотелось бы немного побольше информации по поводу:
Что-бы IP попадал не сразу в черный список, а к примеру через 3 неудачные попытки. На работе так сделано: если 3 раза неудачно попытался зайти на RDP, то попадаешь в блеклист. Можно такое организовать?
Можно.
/ip firewall filter
add chain=input protocol=tcp dst-port=21,22,23,123,3389,5060,8291 connection-state=new src-address-list=PortBrute3 action=add-src-to-address-list address-list=Incoming address-list-timeout=1m disabled=no
/ip firewall filter
add chain=input protocol=tcp dst-port=21,22,23,123,3389,5060,8291 connection-state=new src-address-list=PortBrute2 action=add-src-to-address-list address-list=PortBrute3 address-list-timeout=1m disabled=no
/ip firewall filter
add chain=input protocol=tcp dst-port=21,22,23,123,3389,5060,8291 connection-state=new src-address-list=PortBrute1 action=add-src-to-address-list address-list=PortBrute2 address-list-timeout=2m disabled=no
/ip firewall filter
add chain=input protocol=tcp dst-port=21,22,23,123,3389,5060,8291 connection-state=new action=add-src-to-address-list address-list=PortBrute1 address-list-timeout=2m disabled=no
Добавляй через терминал. Правила должны идти именно в таком порядке. в самом первом правиле address-list=Incoming address-list-timeout=1m указано забанить на 1 минуту. Тут выстави сколько тебе нужно. Ну и обязательно правило в фаерволе Лист Incoming — блокировать.
/ip firewall filter
add action=drop chain=input in-interface=ether1 src-address-list=Incoming
ether1 — указывается имя интерфейса в который воткнут кабель провайдера (у всех он разный).
Легкий способ защитить свой Mikrotik от атак
Хочу поделиться с сообществом простым и рабочим способом, как при помощи Mikrotik защитить свою сеть и «выглядывающие» из-за него сервисы от внешних атак. А именно всего тремя правилами организовать на Микротике honeypot.
Итак, представим, что у нас небольшой офис, внешний IP за которым стоит RDP сервер, для работы сотрудников по удаленке. Первое правило это конечно сменить порт 3389 на внешнем интерфейсе на другой. Но это ненадолго, спустя пару дней журнал аудита терминального сервера начнет показывать по несколько неудачных авторизаций в секунду от неизвестных клиентов.
Другая ситуация, у Вас за Mikrotik спрятан asterisk, естественно не на 5060 udp порту, и через пару дней также начинается перебор паролей… да да, знаю, fail2ban наше вcё, но над ним еще попыхтеть придется… вот я например недавно поднял его на ubuntu 18.04 и с удивлением обнаружил, что из коробки fail2ban не содержит актуальных настроек для asterisk из той же коробки того же ubuntu дистрибутива… а гуглить быстрые настройки готовых «рецептов» уже не получается, цифры у релизов с годами растут, а статьи с «рецептами» для старых версий уже не работают, а новых почти не появляется… Но что-то я отвлекся…
Итак, что такое honeypot в двух словах — это приманка, в нашем случае какой-либо популярный порт на внешнем IP, любой запрос на этот порт от внешнего клиента отправляет src адрес в черный список. Все.
Первое правило на популярных TCP портах 22, 3389, 8291 внешнего интерфейса ether4-wan отправляет IP «гостя» в список «Honeypot Hacker» (порты для ssh, rdp и winbox заблаговременно отключены или изменены на другие). Второе делает то же самое на популярном UDP 5060.
Третье правило на стадии прероутинга дропает пакеты «гостей» чей srs-address попал в «Honeypot Hacker».
Спустя две недели работы моего домашнего Mikrotik список «Honeypot Hacker» включил в себя около полутора тысяч IP адресов любителей «подержать за вымя» мои сетевые ресурсы (дома своя телефония, почта, nextcloud, rdp) Brute-force атаки прекратились, наступило блаженство.
На работе не все так просто оказалось, там rdp сервер продолжают ломать перебором паролей.
Судя по всему номер порта определили сканером за долго до включения honeypot, а во время карантина не так-то легко перенастроить более 100 пользователей, из которых 20% старше 65 лет. В случае когда порт менять нельзя, есть небольшой рабочий рецепт. Подобное в интернете встречал, но тут присутствует допил и тонкая настройка:
За 4 минуты удаленному клиенту разрешается сделать только 12 новых «запросов» к RDP серверу. Одна попытка входа — это от 1 до 4 «запросов». При 12-ом «запросе» — блокировка на 15 минут. В моем случае злоумышленники сервер взламывать не перестали, подстроились под таймеры и теперь делают это очень медленно, такая скорость подбора сводит эффективность атаки к нулю. Сотрудники предприятия от принятых мер никаких неудобств в работе практически не испытывают.
Это правило включается по расписанию в час ночи и выключается в 5, когда живые люди точно спят, а автоматизированные подборщики продолжают бодрствовать.
Уже на 8ом по счету соединении IP злоумышленника отправляется в черный список на неделю. Красота!
Ну и в довесок к вышесказанному добавлю ссылку на Wiki статью, с рабочей настройкой защиты Микротика от сетевых сканеров. wiki.mikrotik.com/wiki/Drop_port_scanners
На моих устройствах эта настройка работает вместе с вышеописанными honeypot правилами, неплохо их дополняя.
UPD: Как подсказали в комментариях, правило дропа пакетов перемещено в RAW, для снижения нагрузки на роутер.
ИТ База знаний
Полезно
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Умная защита от атак MikroTik
С элементами автоматизации
В последние несколько лет всё чаще появляется информация об очередных хакерских атаках, направленных на сетевое оборудование различных производителей. И если оборудование класса Enterprise, такое как Cisco, Juniper, Extreme, HP и так далее, обычно обслуживается армией высококвалифицированных специалистов, которые постоянно проводят обновления и закрывают “дыры”, то с оборудованием класса SOHO (MikroTik, Netgear, TP-Link, Lynksys) дела, зачастую, обстоят совсем иначе. А ведь недостаточное внимание, уделяемое сетевому оборудованию, может нанести вред любому бизнесу.
Полный курс по Сетевым Технологиям
В курсе тебя ждет концентрат ТОП 15 навыков, которые обязан знать ведущий инженер или senior Network Operation Engineer
В данной статье мы хотим рассказать о ещё одном крайне действенном способе защиты оборудования MikroTik, которое не потребует о вас больших усилий в настройке и будет само автоматически обновлять свою конфигурацию без вашего вмешательства.
Предыстория
В конце марта 2018 года появилась информация о хакерской активности, которая как раз направлена на SOHO сегмент. В частности – на роутеры MikroTik под управлением RouterOS ниже версии v6.38.5. Суть заключалась в том, что некий хакерский ботнет сканировал множество публичных IP-адресов на предмет открытых портов 80 (www) и 8291 (WinBox), чтобы по ответам оборудования определить, что это RouterOS, а также выяснить его версию. Тогда производитель заявил, что уязвимость реализации протокола www (80), которую можно было бы использовать, была закрыта ещё в марте 2017 версией v6.38.5 и рекомендовал всем обновиться, а также отключить небезопасный сервис www. Нужно отметить, что ботнет только собирал информацию, никаких атак не предпринималось.
Внимание! Если на вашем роутере MikroTik установлена версия прошивки ниже v6.38.5, мы рекомендуем незамедлительно произвести обновление до последней актуальной версии. Как это сделать, вы можете почитать в нашей статье. Также, рекомендуем закрыть сервис www и настроить доступ к WinBox только с доверенных IP-адресов более подробно о том как это сделать читайте здесь.
Настройка
Итак, перейдём собственно к тому самому универсальному методу защиты, о котором мы упомянули вначале. Данный метод основан на простом блокировании заведомо вредоносных IP-адресов, которые были замечены в подозрительной активности (сканнирование, брутфорс, неудачные попытки доступа к различным сервисам) но только не вручную, а в автоматическом режиме. Существует много открытых ресурсов, которые собирают информацию о таких “чёрных” IP-адресах и генерируют актуальные списки, которые мы можем просто загружать на наш роутер с помощью нехитрого скрипта.
К таким ресурсам относятся:
Итак, чтобы нам заблокировать адреса из этих списков, нужно сначала создать блокирующее правило на нашем роутере. Для этого подключаемся к нашему MikroTik и даём в консоль следующие команды:
Тем самым, мы создали 3 правила, которые будут блокировать подключения к нашему роутеру из списков каждого ресурса соответственно – dshield, spamhaus и blocklist.de.
Теперь нужно настроить автоматический загрузчик, который будет обращаться на данные ресурсы за актуальными списками и загружать их в конфигурацию роутера. Для этого через WinBox откроем вкладку System → Sheduler → +
И создадим задачу на проверку обновления списков вредоносных ресурсов начиная с полуночи следующего числа каждые 12 часов. Обращение будет происходить посредством простого http запроса к ресурсу www.squidblacklist.org/downloads/drop.malicious.rsc. Для этого в поле On Event напишем простой скрипт:
Мы будем обращаться к ресурсу www.squidblacklist.org, потому что его специалисты любезно скомпоновали списки с dshield, spamhaus и blocklist.de в одном месте и нам не придётся писать скрипт обращения для каждого ресурса.
Должно получиться как то так:
Теперь создадим ещё одну задачу на импорт списка в конфигурацию роутера, спустя минуту после того, как отработает проверка актуальности списков из первой задачи. На этот раз в поле On Event напишем:
Теперь наш роутер будет автоматически запрашивать актуальные списки вредоносных IP-адресов и добавлять их в блок. Вы так же можете использовать другие открытые ресурсы, на которых публикуются списки опасных IP-адресов.
Полный курс по Сетевым Технологиям
В курсе тебя ждет концентрат ТОП 15 навыков, которые обязан знать ведущий инженер или senior Network Operation Engineer
Sacs mikrotik что это
После первоначальной настройки роутера Mikrotik его нужно защитить от сканирования и атак из WAN-интерфейса. Это нужно делать обязательно, во избежания неприятностей. Защиту внутри локальной сети тоже нужно производить, но она не так критична, хотя и важна. Сами методы разделю по пунктам.
1. Отключаем учетную запись admin. Создаем новую учетную запись, Имя должно быть не общепринятое, что-бы комбинация логин-пароль служила доп. защитой. Не используйте имена user, guest, admin и другие стандартные. Не используйте пароли 12345, qwerty и тому подобные, а также совпадающие с логином. Пароль должен быть не меньше 8 символов, содержать буквы верхнего и нижнего регистров, цифры и, в идеале, символы.
2. Отключаем ненужные сервисы, все нужные переводим на не стандартные порты! Список не зарезервированных портов можно найти в Википедии: Список портов TCP и UDP. Доступ из-вне отставляем только реально нужным сервисам. Если есть возможность, сервисы ограничиваем по подсетям.
4. Отключаем подключение к роутеру по MAC-адресу из-вне в Tools/MAC Server. На вкладках Telnet Interfaces и WinBox Interfaces добавляем интерфейс LAN, удаляем если есть любые другие интерфейсы и отключаем интерфейс «*all».
5. Организовываем ловушку от перебора портов. Грубый метод. В пункте 8 будет представлено более утонченное решение. Но в нашем деле все методы хороши. Теория такова, если злоумышленник будет перебирать открытые порты вашего маршрутизатора, при попадании на определенный порт, этот IP попадет в блек-лист. Порт нужно выбирать осторожно, что бы он нигде в вашей конфигурации не использовался, и был свободен. После того как определились с портом, добавим 2 правила.
/ip firewall filter
add action=add-src-to-address-list address-list=perebor_portov_drop address-list-timeout=30m chain=input comment=Perebor_portov_add_list dst-port=98 in-interface=ether1-velton log=yes log-prefix=Attack protocol=tcp
add action=drop chain=input comment=Perebor_portov_list_drop dst-port=80 in-interface=ether1-velton protocol=tcp src-address-list=perebor_portov_drop
/ip firewall filter
add chain=input comment=Allow_limited_pings in-interface=ether1-velton limit=\
50/5s,2:packet protocol=icmp
add action=drop chain=input comment=Pings_Drop in-interface=ether1-velton \
protocol=icmp
7. Ставим лимит входящих соединений. Если с одного IP адреса подключений больше лимита, то этот IP попадает в «черный список» и в дальнейшем блокируется. Например
/ip firewall filter add chain=input protocol=tcp connection-limit=LIMIT,32 \
action=add-src-to-address-list address-list=blocked-addr address-list-timeout=1d
/ip firewall filter add chain=input protocol=tcp src-address-list=blocked-addr \
connection-limit=3,32 action=tarpit
Но нам такие сложности не к чему, просто добавим правило с лимитом 200 соединений с одного IP и блоком на сутки:
/ip firewall filter
add action=add-dst-to-address-list address-list=connection-limit \
address-list-timeout=1d chain=input comment=Connection_limit \
connection-limit=200,32 in-interface=ether1-velton protocol=tcp
add action=drop chain=input comment=Adr_list_connection-limit_drop \
in-interface=ether1-velton src-address-list=connection-limit
8. Включаем защиту от сканеров портов на WAN-интерфейсе:
/ip firewall filter
add action=drop chain=input comment=Port_scanner_drop src-address-list=\
«port scanners»
add action=add-src-to-address-list address-list=»port scanners» \
address-list-timeout=2w chain=input in-interface=ether1-velton protocol=\
tcp psd=21,3s,3,1
add action=add-src-to-address-list address-list=»port scanners» \
address-list-timeout=2w chain=input in-interface=ether1-velton protocol=\
tcp tcp-flags=fin,!syn,!rst,!psh,!ack,!urg
add action=add-src-to-address-list address-list=»port scanners» \
address-list-timeout=2w chain=input in-interface=ether1-velton protocol=\
tcp tcp-flags=fin,syn
add action=add-src-to-address-list address-list=»port scanners» \
address-list-timeout=2w chain=input in-interface=ether1-velton protocol=\
tcp tcp-flags=syn,rst
add action=add-src-to-address-list address-list=»port scanners» \
address-list-timeout=2w chain=input in-interface=ether1-velton protocol=\
tcp tcp-flags=fin,psh,urg,!syn,!rst,!ack
add action=add-src-to-address-list address-list=»port scanners» \
address-list-timeout=2w chain=input in-interface=ether1-velton protocol=\
tcp tcp-flags=fin,syn,rst,psh,ack,urg
add action=add-src-to-address-list address-list=»port scanners» \
address-list-timeout=2w chain=input in-interface=ether1-velton protocol=\
tcp tcp-flags=!fin,!syn,!rst,!psh,!ack,!urg
9. Защищаем от перебора паролей подключения по нестандартному порту к WinBox и SSH из вне. Комментарии читать снизу-вверх.
10. Блокируем bogon-сети. Это зарезервированные диапазоны IP адресов которые еще не были закреплены ни за одним провайдером в мире. Это свободные/пустые диапазоны. Частные сети прячутся от интернета средствами компании или провайдером. Поэтому если к вам вдруг прилетает пакет с сорсом из этих списков, ничего хорошего он принести не может. Bogon IP часто используют злые хакеры для своих вредоносных атак. Актуальный список сетей можно посмотреть тут.
/ip firewall address-list
add address=0.0.0.0/8 disabled=no list=BOGON
add address=10.0.0.0/8 disabled=no list=BOGON
add address=100.64.0.0/10 disabled=no list=BOGON
add address=127.0.0.0/8 disabled=no list=BOGON
add address=169.254.0.0/16 disabled=no list=BOGON
add address=172.16.0.0/12 disabled=no list=BOGON
add address=192.0.0.0/24 disabled=no list=BOGON
add address=192.0.2.0/24 disabled=no list=BOGON
add address=192.168.0.0/16 disabled=no list=BOGON
add address=198.18.0.0/15 disabled=no list=BOGON
add address=198.51.100.0/24 disabled=no list=BOGON
add address=203.0.113.0/24 disabled=no list=BOGON
add address=224.0.0.0/4 disabled=no list=BOGON
add address=240.0.0.0/4 disabled=no list=BOGON
Само запрещающее правило:
/ip firewall filter
add action=drop chain=input comment=Bogon_Wan_Drop in-interface=ether1-velton \
src-address-list=BOGON
add chain=input comment=Established_Wan_Accept connection-state=established
12. Разрешаем все зависимые подключения (connection state=related). Related – Связанное соединение. Пакет, который связан с существующим соединением, но не является его частью. Например, пакет, который начинает соединение передачи данных в FTP-сессии (он будет связан с управляющим соединением FTP), или пакет ICMP, содержащий ошибку, отправляемый в ответ на другое соединение.
add chain=input comment=Related_Wan_Accept connection-state=related
13. Блокируем все входящие соединения с WAN.
add action=drop chain=input comment=Drop_all_WAN in-interface=ether1-velton
Визуально последовательность правил выглядит так:
Это минимальная настройка безопасности. Если вы хотите разрешить подключение VPN к роутеру, то как минимум нужно открыть порт. Например, для соединений по порту 1723 (PPTP):
/ip firewall filter
add chain=input dst-port=1723 protocol=tcp
Мой MikroTik – моя цифровая крепость (часть 1)
1. Введение
В комментариях опубликованной ранее статьи один из пользователей спросил: «А можно добавить раздел про то, как нужно защитить свой, микротик чтобы управление им не ушло на сторону?». Один из пользователей написал на это следующее: «Универсальных принципов для любого сетевого устройства два – администрирование только с внутреннего интерфейса (снаружи закрыто все) и регулярно обновлять прошивку» (сохранена авторская орфография). А мы сразу поняли, что одним коротким ответом здесь не обойтись, и этот вопрос заслуживает полноценного отдельного рассмотрения с учётом широких возможностей операционной системы RouterOS, а также сопрягаемых с ней opensource решений, комплексно завершающих проблемный вопрос информационной безопасности. Кроме непосредственно настройки безопасности доступа до маршрутизатора, необходимо использовать его как полноценный барьер для разноуровневых атак, которые могут быть нацелены на защищаемую сеть. Технологий реализации этого достаточно много, поэтому разделим применяемые возможности на логические уровни и представим предметные рекомендации по администрированию сетей на базе оборудования MikroTik.
2. Общие рекомендации
Первое, что мы всегда делаем с железкой — это обновляем прошивку:
Далее смотрим, сколько создано пользователей, лишних удаляем. Ставим пароли, соответствующие политике информационной безопасности компании, если такая есть, если нет, тогда просто посильнее:
Если паранойя зашкаливает, тогда используем SSH вход без ввода пароля (и пользователя admin можно заменить на другого). Сгенерим пару RSA ключей, размер укажем 4096 бит, что уж мелочиться:
На выходе будет закрытый ключ test_user:
И открытый ключ test_user.pub:
Привяжем открытый ключ к пользователю RouterOS:
Добавляем хардкор, запретив логиниться по паролю:
Важно отметить, что если есть пользователь, для которого не импортирован публичный ключ, то, несмотря на вышепоказанную настройку, RouterOS сохраняет возможность логиниться под ним с помощью пароля. С учётными записями разобрались, далее выключаем серверы различных протоколов управления, в том числе небезопасные, разумеется, есть ли они вам не нужны:
Можно поменять прослушиваемый порт для SSH сервера. Особенно на значение, не входящее в сканируемые по умолчанию nmap-ом, но мы в этом защиты не видим, скорее маскировка:
Сканируем роутер и видим, что всё работает корректно. Сервер SSH будет недоступен, пока на роутер не пройдут попытки установления соединения на 28 порт, затем в течение 30 секунд на 29 порт, затем в течение 30 секунд на 30 порт. Если последовательность обращений верна и временные лимиты соблюдены, то IP адрес источника сможет в течение 30 секунд установить SSH сессию, а иначе drop:
Необходимо отметить, что если вы укажете порты стука примерно в таком порядке: 21, 80, 443, а прослушиваемый SSH порт перенесете на значение 8080 (все четыре входят в список по умолчанию для сканирования nmap), то ваш секретный порт 8080 определится при первом же сканировании. Если вы действительно хотите использовать технологию port knocking, то выбирайте порты в порядке уменьшения, а сами значения портов на «не сканируемые» nmap-ом: ни в режиме top 100, ни в режиме top 1000. Кроме этого, можно ограничить IP адреса, с которых доступны протоколы управления, на диапазон доверенных:
Таким образом, несмотря на то, что 22 порт готов принимать TCP соединение, однако с не доверенных IP адресов оно будет сброшено SSH сервером:
Как общие рекомендации, лучше не использовать протоколы, не имеющие шифрования для передачи защищаемой информации. Если такой возможности нет, тогда старайтесь пускать трафик по шифрованным VPN туннелям. Но лучше даже внутри таких соединений использовать безопасные протоколы, ведь VPN сеть может уходить далеко за пределы периметра, контролируемого вами. Если есть возможность, не используйте протоколы pap, http (в том числе при реализации API), ftp, smtp и т.д. Всегда используйте их безопасные аналоги: chap, mschap2, https, smtps.
Делайте регулярные резервные копии конфигураций ваших устройств. В RouterOS есть два типа backup: бинарный *.backup
и текстовый конфигурационный файл *.rsc
Первый рекомендуется откатывать только на полностью идентичных устройствах, и не подлежит редактированию (при откате восстанавливается точный образ операционной системы). Второй же, наоборот, можно вручную контролируемо построчно обрабатывать (до получения необходимо результата), однако он может содержать чувствительную информацию (если не делать /export hide-sensitive), поэтому рекомендуем обезопасить хранение такого рода backup файлов. Ставить ли регулярный backup в планировщик заданий, или нет, тут уже каждый решает сам. Главное — не запутаться во всех резервных копиях и не передавать их на удалённый сервер по открытому интернет каналу посредством ftp.
3. Защита L1
Писать правила про установку сетевого оборудования в серверных помещениях, в защищённых телекоммуникационных ящиках, сейфах и т.д. мы не будем, это не тема статьи. Для защиты L1 на оборудовании MikroTik будет достаточно программно отключить не используемые сетевые интерфейсы:
Сюда же пойдёт организация безопасности беспроводных соединений. В идеале, конечно, следует настроить WPA2-Enterprise (подробно о настройке RADIUS сервера мы напишем во второй части статьи), так как реальных угроз безопасности таких сетей пока не известно:
Если такой вариант вам не подходит, тогда используйте WPA2-PSK со словарно неподбираемым паролем, который держите в тайне от третьих лиц, и отключённый PMKID:
Ещё можно запретить подключаться к точке доступа с низким уровнем сигнала, т.е. физически удалённым пользователям, которые, можно предположить, находятся за контролируемым периметром и не легитимны:
На этом свои рекомендации по поводу L1 безопасности остановим и перейдём к более интересным вещам.
4. Защита L2
Для начала ограничим работающие сервисы уровня L2:
Первый скрипт позволяет осуществлять mac-ping только для внутренней сети. Второй ограничивает L2 подключение посредством службы Winbox:
RouterOS поддерживает работу таких протоколов, как CDP, LLDP и MNDP. Чтобы не осуществлять широковещательную рассылку пакетов указанных протоколов во все стороны, ограничиваем их работу:
Чтобы со стороны провайдера не догадывались, что у вас стоит роутер MikroTik, можно сменить MAC адрес WAN интерфейса, но это скорее баловство:
Если в вашем L2 сегменте появится второй или более незаконный DHCP сервер, то это может здорово навредить работе всей сети. Так в примере видно, что работают две указанные службы (192.168.1.1 и 192.168.3.1), раздавая по факту разные сетевые настройки:
Для защиты от такого рода атак (ведь хакер может назначить и своё устройство в качестве шлюза) существует технология «DHCP snooping». После её активации бридж пропускает DHCP пакеты только в доверенную сторону:
Защита оконечных устройств выходит за рамки данной статьи, но декларируем, что многие антивирусы справляются с этой задачей, детектируя манипуляции с ARP пакетами. На скрине видно, что действиями выше мы организовали MITM для хоста 192.168.1.3 и перехватили его HTTP запросы:
В следующем примере показаны ложные записи ARP таблицы маршрутизатора, а ведь так намеренно можно заполнить весь имеющейся пул и втупить работу легитимного DHCP сервера:
Для защиты от таких действий в RouterOS необходимо, первым делом, настроить DHCP сервер, что позволит активировать функцию заполнения ARP таблицы, либо в результате его работы, либо в ручном режиме:
После этого настраиваем бридж, переводя маршрутизатор в режим только ответа на ARP запросы (если у вас работает hotspot, то от этой идеи придётся отказаться, так как он перестанет нормально функционировать), таким образом, сторонние манипуляции будут бессильны:
Дополнительно следует выключить режим обучения портов MAC адресам:
Если ваш маршрутизатор гоняет пакеты для логически разделённых сетей, в том числе с точки зрения безопасности, то их следует разнести по различным VLAN. Важно понимать, что если через ваше устройство проходят несколько VLAN, то в случае несанкционированного доступа к роутеру или коммутатору, могут быть скомпрометированы устройства во всех этих подсетях. Здесь всё понятно. Дополнительно можно указать устройству проверять tag трафика и дропать пакеты, у которых VLAN ID не найден в его таблице VLAN:
5. Заключение
На этой админской ноте прервём наши рассуждения, которые отображают подходы, применяемые нами в построении реальных сетей и обеспечении их информационной безопасности. Никакие ноухау статья не раскрывает, но в определённой мере систематизирует имеющиеся возможности и показывает их практическое применение. Дальше будет интереснее…