Изображение


📋 Оглавление


1. Введение: почему MikroTik — популярная цель и как оценить своё положение

2. Актуальные уязвимости 2023–2026: CVE-каталог и риски

3. Шаг 1 — Обновление RouterOS: главное действие защиты

4. Шаг 2 — Пароли и учётные записи: избавиться от дефолтов

5. Шаг 3 — Отключение ненужных сервисов: сократить поверхность атаки

6. Шаг 4 — Настройка Firewall: защита от внешних сканирований

7. Шаг 5 — SSH с ключами: отказаться от парольной аутентификации

8. Шаг 6 — Winbox: ограничить или заменить

9. Шаг 7 — IPv6 и router advertisements: закрыть вектор RCE

10. Шаг 8 — WebFig и HTTP: принудительный HTTPS и ограничение доступа

11. Шаг 9 — Логирование и мониторинг: знать что происходит

12. Как проверить, не взломан ли ваш MikroTik: признаки и диагностика

13. Что делать если MikroTik уже взломан: пошаговое восстановление

14. FAQ: 12 горячих вопросов о безопасности MikroTik

15. Чек-лист: харденинг MikroTik за один сеанс

16. Заключение и теги

1. Введение: почему MikroTik — популярная цель и как оценить своё положение


MikroTik — латвийский производитель, чьи устройства под управлением RouterOS работают от домашних роутеров до ISP-уровня. Это именно то, что делает их привлекательной целью: одна известная уязвимость открывает доступ к сотням тысяч устройств по всему миру.

Масштаб проблемы реален. Поиск на Shodan показал, что по состоянию на июль 2023 года в интернете было зарегистрировано от 500 тысяч до 900 тысяч роутеров MikroTik, всё ещё уязвимых к CVE-2023-30799 через интерфейсы Web или Winbox. Почти 60% роутеров MikroTik до сих пор используют пустой пароль администратора по умолчанию — такой он в сборках ниже RouterOS 6.49.

Три причины, по которым MikroTik взламывают чаще других:

Дефолтные настройки. В заводской конфигурации открыто несколько портов управления и нет принудительного пароля. Достаточно купить устройство, подключить к интернету — и оно уже сканируется ботнетами.

Медленное обновление пользователями. RouterOS обновляется регулярно, но пользователи часто не следят за выходом патчей и годами работают на уязвимых версиях.

Широкий функционал = большая поверхность атаки. Winbox, WebFig, SSH, Telnet, API, FTP — каждый открытый сервис это потенциальный вектор.

Что проверить прямо сейчасГде смотреть
Текущая версия RouterOSSystem → Packages
Открытые порты наружуIP → Services
Пустой пароль adminSystem → Users
Признаки взлома в имениSystem → Identity (не должно быть «Hacked»)

> *💡 Статья написана для владельцев и администраторов MikroTik-устройств. Все команды применяются к собственному оборудованию.*


2. Актуальные уязвимости 2023–2026: CVE-каталог и риски


Понимание актуальных уязвимостей помогает расставить приоритеты при харденинге.

CVE-2023-30799 — повышение привилегий до root (CVSS 9.1)


Уязвимость CVE-2023-30799 с оценкой 9.1 балла по CVSS вызвана возможностью повышения привилегий с уровня простого администратора до root-шелла через Winbox или веб-интерфейс.

text
Затронутые версии:
Stable: до 6.49.8
Long-Term: до 6.48.6

Исправлено:
Stable: 6.49.8+
Long-Term: 6.48.7+
RouterOS 7.x: любая актуальная

Вектор: Winbox (порт 8291) или Web (порт 80/443)
Требование: наличие учётных данных пользователя
(но получить их — относительно просто)


CVE-2023-32154 — RCE без аутентификации через IPv6 RA


Уязвимость CVE-2023-32154 позволяет злоумышленникам в соседней сети выполнять произвольный код. Аутентификация не требуется. Затрагивает RouterOS v6.xx и v7.xx с включённой функцией приёмника IPv6-объявлений.

text
Исправлено: RouterOS 7.9.1, 6.49.8, 6.48.7
Митигация: отключить accept-router-advertisements
/ipv6/settings/set accept-router-advertisements=no


CVE-2025-61481 — HTTP по умолчанию в WebFig


MikroTik RouterOS через версию 7.14.2 и SwOS через версию 2.18 инициализируют интерфейс управления WebFig с HTTP по умолчанию и без автоматического перенаправления на HTTPS. После сброса настроек страница входа и JavaScript загружаются полностью по HTTP, учётные данные передаются открытым текстом через порт 80.

text
Затронутые: RouterOS ≤ 7.14.2, SwOS ≤ 2.18
Вектор: MITM на локальной сети
Митигация: отключить HTTP, использовать только HTTPS,
ограничить доступ к WebFig по IP


Признаки взлома и атаки ботнетов


Обычно после взлома роутер продолжает работать как раньше, но вы не можете войти в настройки со своим логином и паролем. В Winbox в поле Identity у устройства появляется надпись «Hacked» или «Test». Некоторые ботнеты не изменяют логин и пароль, а только добавляют дополнительные настройки или скрипты.




3. Шаг 1 — Обновление RouterOS: главное действие защиты


Большинство известных уязвимостей закрыто в актуальных версиях RouterOS. Обновление — самый важный и быстрый шаг.

Проверить текущую версию


text
<h2 id="winbox-system-packages">Winbox: System → Packages</h2>
<h2 id="konsol">Консоль:</h2>
/system package print
/system routerboard print

<h2 id="vyvod-pokazhet">Вывод покажет:</h2>
<h2 id="installed-version-7-13-5">installed-version: 7.13.5</h2>
<h2 id="upgrade-firmware-7-14-2">upgrade-firmware: 7.14.2</h2>


Обновить RouterOS через Winbox


system
→ Packages → Check for Updates
→ Channel: stable (рекомендуется) или long-term
→ Download & Install
→ Устройство перезагрузится


Обновить через консоль


bash
<h2 id="proverit-dostupnye-obnovleniya">Проверить доступные обновления:</h2>
/system package update check-for-updates

<h2 id="skachat-i-ustanovit">Скачать и установить:</h2>
/system package update download
/system package update install
<h2 id="ustroystvo-perezagruzitsya-avtomaticheski">Устройство перезагрузится автоматически</h2>

<h2 id="obnovit-proshivku-routerboard-otdelnyy-shag">Обновить прошивку RouterBOARD (отдельный шаг):</h2>
/system routerboard upgrade
/system reboot


Настроить автоматическую проверку обновлений


bash
<h2 id="avtomaticheskaya-proverka-no-ne-ustanovka-ostavit-na-usmotrenie-administratora">Автоматическая проверка (но не установка — оставить на усмотрение администратора):</h2>
/system package update set channel=stable


Какой канал выбрать


stable
— рекомендуется для продакшна: проверенные релизы
long-term — для консервативных сред: реже обновляется,
дольше поддерживается
testing — бета-версии, не для продакшна


> ⚠️ Перед обновлением обязательно сделать резервную копию конфигурации: `Files → Backup` или `/system backup save name=before-update`.




4. Шаг 2 — Пароли и учётные записи: избавиться от дефолтов


Сменить пароль пользователя admin


bash
<h2 id="konsol-smenit-parol-tekuschego-polzovatelya">Консоль — сменить пароль текущего пользователя:</h2>
/user set [find name=admin] password="StrongPassword123!"

<h2 id="ili-interaktivno">Или интерактивно:</h2>
/password
<h2 id="vvedyot-zapros-old-password-i-new-password">Введёт запрос old-password и new-password</h2>


Переименовать пользователя admin


Именно `admin` — первое, что проверяют сканеры и ботнеты. Переименование снижает риск брутфорса.

bash
<h2 id="sozdat-novogo-polzovatelya-s-drugim-imenem">Создать нового пользователя с другим именем:</h2>
/user add name=netadmin group=full password="VeryStrongPassword!"

<h2 id="voyti-pod-novym-polzovatelem-i-udalit-admin">Войти под новым пользователем и удалить admin:</h2>
/user remove [find name=admin]


Удалить или заблокировать лишних пользователей


bash
<h2 id="prosmotr-vseh-polzovateley">Просмотр всех пользователей:</h2>
/user print

<h2 id="otklyuchit-polzovatelya-ne-udalyat-esli-nuzhen-dlya-vosstanovleniya">Отключить пользователя (не удалять, если нужен для восстановления):</h2>
/user set [find name=<username>] disabled=yes

<h2 id="udalit">Удалить:</h2>
/user remove [find name=<username>]


Ограничить пользователей по IP


bash
<h2 id="razreshit-vhod-tolko-s-konkretnogo-ip">Разрешить вход только с конкретного IP:</h2>
/user set [find name=netadmin] allowed-address=192.168.1.10/32
<h2 id="teper-etot-polzovatel-mozhet-voyti-tolko-s-192-168-1-10">Теперь этот пользователь может войти только с 192.168.1.10</h2>


Настроить безопасный профиль пароля


bash
<h2 id="sozdat-politiku-paroley">Создать политику паролей:</h2>
/user settings set minimum-password-length=12





5. Шаг 3 — Отключение ненужных сервисов: сократить поверхность атаки


Каждый открытый сервис — потенциальный вектор атаки. Рекомендации VulnCheck: отключить интерфейсы Winbox и Web, ограничить IP-адреса, с которых могут входить администраторы, отключить парольный доступ и настроить SSH для использования публичных/приватных ключей.

Просмотр и настройка сервисов


bash
<h2 id="posmotret-vse-aktivnye-servisy">Посмотреть все активные сервисы:</h2>
/ip service print

<h2 id="tipichnyy-vyvod">Типичный вывод:</h2>
<h2 id="name-port-available-from-certificate">NAME PORT AVAILABLE-FROM CERTIFICATE</h2>
<h2 id="telnet-23">telnet 23 ...</h2>
<h2 id="ftp-21">ftp 21 ...</h2>
<h2 id="www-80">www 80 ...</h2>
<h2 id="ssh-22">ssh 22 ...</h2>
<h2 id="www-ssl-443">www-ssl 443 ...</h2>
<h2 id="api-8728">api 8728 ...</h2>
<h2 id="winbox-8291">winbox 8291 ...</h2>
<h2 id="api-ssl-8729">api-ssl 8729 ...</h2>


Отключить небезопасные и ненужные сервисы


bash
<h2 id="otklyuchit-telnet-polnostyu-nebezopasen-peredayot-vsyo-otkrytym-tekstom">Отключить Telnet (полностью небезопасен, передаёт всё открытым текстом):</h2>
/ip service set telnet disabled=yes

<h2 id="otklyuchit-ftp-esli-ne-ispolzuetsya">Отключить FTP (если не используется):</h2>
/ip service set ftp disabled=yes

<h2 id="otklyuchit-http-webfig-ostavit-tolko-https">Отключить HTTP WebFig (оставить только HTTPS):</h2>
/ip service set www disabled=yes

<h2 id="otklyuchit-api-esli-ne-ispolzuetsya-vneshnimi-sistemami-monitoringa">Отключить API (если не используется внешними системами мониторинга):</h2>
/ip service set api disabled=yes

<h2 id="otklyuchit-api-ssl-esli-ne-ispolzuetsya">Отключить API-SSL (если не используется):</h2>
/ip service set api-ssl disabled=yes

<h2 id="ostavit-tolko-nuzhnye-kak-pravilo">Оставить только нужные — как правило:</h2>
<h2 id="ssh-22-www-ssl-443-winbox-8291-i-ih-ogranichit-po-ip">SSH (22), www-ssl (443), winbox (8291) — и их ограничить по IP</h2>


Ограничить сервисы по IP-адресу


bash
<h2 id="razreshit-ssh-tolko-s-doverennoy-podseti">Разрешить SSH только с доверенной подсети:</h2>
/ip service set ssh address=192.168.1.0/24

<h2 id="razreshit-winbox-tolko-s-konkretnogo-ip">Разрешить Winbox только с конкретного IP:</h2>
/ip service set winbox address=192.168.1.10/32

<h2 id="razreshit-webfig-tolko-iz-lokalnoy-seti">Разрешить WebFig только из локальной сети:</h2>
/ip service set www-ssl address=192.168.1.0/24


Изменить стандартные порты


Смена портов снижает попадание в автоматические сканирования ботнетов:

bash
<h2 id="izmenit-ssh-na-nestandartnyy-port">Изменить SSH на нестандартный порт:</h2>
/ip service set ssh port=2222

<h2 id="izmenit-winbox">Изменить Winbox:</h2>
/ip service set winbox port=49152

<h2 id="vazhno-obnovit-pravila-firewall-pod-novye-porty">Важно: обновить правила firewall под новые порты</h2>


Отключить Discovery и Bandwidth Test сервер


bash
<h2 id="otklyuchit-mikrotik-neighbor-discovery-ne-nuzhen-vne-doverennoy-seti">Отключить MikroTik Neighbor Discovery (не нужен вне доверенной сети):</h2>
/ip neighbor discovery-settings set discover-interface-list=LAN

<h2 id="otklyuchit-bandwidth-test-server">Отключить Bandwidth Test сервер:</h2>
/tool bandwidth-server set enabled=no





6. Шаг 4 — Настройка Firewall: защита от внешних сканирований


Базовый входящий firewall для роутера (input chain)


bash
<h2 id="tsepochka-input-trafik-adresovannyy-samomu-routeru">Цепочка input — трафик, адресованный самому роутеру</h2>
<h2 id="primenyat-posledovatelno-poryadok-pravil-vazhen">Применять ПОСЛЕДОВАТЕЛЬНО: порядок правил важен</h2>

<h2 id="1-razreshit-established-related-soedineniya">1. Разрешить established/related соединения:</h2>
/ip firewall filter add chain=input \
connection-state=established,related action=accept \
comment="Accept established, related"

<h2 id="2-razreshit-icmp-ping-optsionalno-ogranichit-rate">2. Разрешить ICMP (ping) — опционально, ограничить rate:</h2>
/ip firewall filter add chain=input \
protocol=icmp action=accept \
comment="Accept ICMP"

<h2 id="3-razreshit-upravlenie-iz-doverennoy-podseti-lan">3. Разрешить управление из доверенной подсети (LAN):</h2>
/ip firewall filter add chain=input \
in-interface=bridge src-address=192.168.1.0/24 \
action=accept \
comment="Allow management from LAN"

<h2 id="4-razreshit-ssh-tolko-s-konkretnogo-ip-esli-nuzhen-udalyonnyy-dostup">4. Разрешить SSH только с конкретного IP (если нужен удалённый доступ):</h2>
/ip firewall filter add chain=input \
protocol=tcp dst-port=22 \
src-address=203.0.113.10/32 \
action=accept \
comment="Allow SSH from trusted IP"

<h2 id="5-zablokirovat-vsyo-ostalnoe-vo-vhodyaschem">5. Заблокировать всё остальное во входящем:</h2>
/ip firewall filter add chain=input \
action=drop \
comment="Drop everything else - INPUT"


Защита от брутфорса SSH


bash
<h2 id="dobavit-v-chyornyy-spisok-ip-posle-neskolkih-neudachnyh-popytok">Добавить в чёрный список IP после нескольких неудачных попыток:</h2>

<h2 id="shag-1-sozdat-spisok-dlya-vremennoy-blokirovki">Шаг 1: Создать список для временной блокировки:</h2>
/ip firewall address-list add list=ssh-blacklist address=0.0.0.0/32

<h2 id="shag-2-pravila-obnaruzheniya-brutforsa">Шаг 2: Правила обнаружения брутфорса:</h2>
/ip firewall filter add chain=input protocol=tcp dst-port=22 \
src-address-list=ssh-blacklist action=drop \
comment="Drop SSH brute force"

/ip firewall filter add chain=input protocol=tcp dst-port=22 \
connection-state=new src-address-list=ssh-stage3 \
action=add-src-to-address-list address-list=ssh-blacklist \
address-list-timeout=1d \
comment="SSH stage 3 → blacklist"

/ip firewall filter add chain=input protocol=tcp dst-port=22 \
connection-state=new src-address-list=ssh-stage2 \
action=add-src-to-address-list address-list=ssh-stage3 \
address-list-timeout=1m \
comment="SSH stage 2"

/ip firewall filter add chain=input protocol=tcp dst-port=22 \
connection-state=new src-address-list=ssh-stage1 \
action=add-src-to-address-list address-list=ssh-stage2 \
address-list-timeout=1m \
comment="SSH stage 1"

/ip firewall filter add chain=input protocol=tcp dst-port=22 \
connection-state=new \
action=add-src-to-address-list address-list=ssh-stage1 \
address-list-timeout=1m \
comment="SSH initial detection"


Защита от port-scan


bash
<h2 id="blokirovat-popytki-skanirovaniya-portov">Блокировать попытки сканирования портов:</h2>
/ip firewall filter add chain=input \
protocol=tcp psd=21,3s,3,1 \
action=add-src-to-address-list \
address-list=port-scanners \
address-list-timeout=2w \
comment="Detect port scan"

/ip firewall filter add chain=input \
src-address-list=port-scanners \
action=drop \
comment="Drop port scanners"





7. Шаг 5 — SSH с ключами: отказаться от парольной аутентификации


Парольная аутентификация по SSH уязвима к брутфорсу. SSH-ключи — надёжная альтернатива.

Генерация ключей на клиентской машине


bash
<h2 id="na-linux-macos">На Linux/macOS:</h2>
ssh-keygen -t ed25519 -C "mikrotik-admin@company.local"
<h2 id="sohranit-ssh-id-ed25519-privatnyy-i-ssh-id-ed25519-pub-publichnyy">Сохранит ~/.ssh/id_ed25519 (приватный) и ~/.ssh/id_ed25519.pub (публичный)</h2>

<h2 id="na-windows-powershell">На Windows (PowerShell):</h2>
ssh-keygen -t ed25519


Добавление публичного ключа в MikroTik


bash
<h2 id="sposob-1-cherez-konsol-routeros">Способ 1: через консоль RouterOS</h2>
<h2 id="skopirovat-soderzhimoe-id-ed25519-pub-v-bufer">Скопировать содержимое id_ed25519.pub в буфер</h2>

/user ssh-keys import public-key-file=id_ed25519.pub user=netadmin

<h2 id="sposob-2-cherez-winbox">Способ 2: через Winbox</h2>
<h2 id="system-users-vybrat-polzovatelya-ssh-keys-import">System → Users → выбрать пользователя → SSH Keys → Import</h2>


Отключить парольную аутентификацию по SSH


bash
<h2 id="posle-togo-kak-ubedilis-chto-vhod-po-klyuchu-rabotaet">После того как убедились, что вход по ключу работает:</h2>
/ip service set ssh disabled=no
<h2 id="routeros-avtomaticheski-predpochitaet-klyuchi-parolyam">RouterOS автоматически предпочитает ключи паролям</h2>
<h2 id="dopolnitelno-ogranichit-servis-po-ip-sm-razdel-5">Дополнительно ограничить сервис по IP (см. раздел 5)</h2>


Подключение по ключу


bash
<h2 id="linux-macos">Linux/macOS:</h2>
ssh -i ~/.ssh/id_ed25519 -p 2222 netadmin@192.168.1.1

<h2 id="dobavit-v-ssh-config-dlya-udobstva">Добавить в ~/.ssh/config для удобства:</h2>
Host mikrotik-office
HostName 192.168.1.1
User netadmin
Port 2222
IdentityFile ~/.ssh/id_ed25519





8. Шаг 6 — Winbox: ограничить или заменить


Winbox — фирменный GUI-клиент MikroTik, использующий протокол на порту 8291. Исторически в нём было найдено несколько серьёзных уязвимостей.

Варианты по убыванию риска


text
Вариант 1 (наиболее безопасный):
Отключить Winbox полностью, использовать SSH + CLI

Вариант 2 (компромисс):
Оставить Winbox, ограничить по IP строго

Вариант 3 (минимально допустимый):
Ограничить по IP + сменить порт


Отключить или ограничить Winbox


bash
<h2 id="otklyuchit-winbox-polnostyu">Отключить Winbox полностью:</h2>
/ip service set winbox disabled=yes

<h2 id="ili-ogranichit-po-ip">ИЛИ ограничить по IP:</h2>
/ip service set winbox address=192.168.1.0/24 port=49152

<h2 id="proverit">Проверить:</h2>
/ip service print where name=winbox


Winbox через VPN


Наиболее безопасный подход для удалённого управления: Winbox слушает только на loopback или LAN, а удалённый доступ — через VPN-туннель (IPsec, OpenVPN, WireGuard) к роутеру.




9. Шаг 7 — IPv6 и router advertisements: закрыть вектор RCE


CVE-2023-32154 затрагивает устройства с включённой функцией приёмника IPv6-объявлений. Уязвимость позволяет злоумышленникам в соседней сети выполнять произвольный код без аутентификации.

Отключить приём IPv6 Router Advertisements


bash
<h2 id="esli-ipv6-ne-ispolzuetsya-otklyuchit-polnostyu">Если IPv6 не используется — отключить полностью:</h2>
/ipv6/settings/set accept-router-advertisements=no

<h2 id="esli-ipv6-nuzhen-no-ustroystvo-marshrutizator-forward-yes">Если IPv6 нужен, но устройство — маршрутизатор (forward=yes):</h2>
<h2 id="v-etom-sluchae-accept-router-advertisements-po-umolchaniyu-no">В этом случае accept-router-advertisements по умолчанию no</h2>
<h2 id="yavno-proverit">Явно проверить:</h2>
/ipv6/settings/print

<h2 id="otklyuchit-ipv6-servisy-esli-ne-nuzhny">Отключить IPv6-сервисы если не нужны:</h2>
/ipv6/settings/set disable-ipv6=yes


Проверить текущее состояние IPv6


bash
/ipv6/settings/print
<h2 id="ubeditsya-chto">Убедиться что:</h2>
<h2 id="accept-router-advertisements-no">accept-router-advertisements: no</h2>
<h2 id="disable-ipv6-yes-esli-ipv6-ne-ispolzuetsya">disable-ipv6: yes (если IPv6 не используется)</h2>





10. Шаг 8 — WebFig и HTTP: принудительный HTTPS и ограничение доступа


После сброса настроек интерфейс WebFig загружается полностью по HTTP, учётные данные передаются по порту 80 в открытом виде, что позволяет перехватить их любому MITM-атакующему на локальной сети.

Настроить сертификат и HTTPS


bash
<h2 id="sozdat-samopodpisannyy-sertifikat">Создать самоподписанный сертификат:</h2>
/certificate add name=webfig-cert common-name=192.168.1.1 \
key-size=2048 days-valid=3650
/certificate sign webfig-cert

<h2 id="privyazat-sertifikat-k-https-servisu">Привязать сертификат к HTTPS-сервису:</h2>
/ip service set www-ssl certificate=webfig-cert disabled=no

<h2 id="otklyuchit-http-ostavit-tolko-https">Отключить HTTP (оставить только HTTPS):</h2>
/ip service set www disabled=yes


Ограничить WebFig по IP


bash
/ip service set www-ssl address=192.168.1.0/24 port=443


Отключить WebFig полностью


Если управление только через Winbox или SSH — отключить обе веб-службы:

bash
/ip service set www disabled=yes
/ip service set www-ssl disabled=yes





11. Шаг 9 — Логирование и мониторинг: знать что происходит


Настройка системного лога


bash
<h2 id="prosmotr-tekuschih-pravil-logirovaniya">Просмотр текущих правил логирования:</h2>
/system logging print

<h2 id="dobavit-logirovanie-kriticheskih-sobytiy">Добавить логирование критических событий:</h2>
/system logging add topics=critical action=memory
/system logging add topics=warning action=memory
/system logging add topics=firewall action=memory

<h2 id="nastroit-otpravku-logov-na-syslog-server">Настроить отправку логов на syslog-сервер:</h2>
/system logging action add name=syslog-server \
target=remote remote=192.168.1.200 remote-port=514 \
bsd-syslog=yes syslog-facility=daemon

/system logging add topics=critical,warning,firewall \
action=syslog-server


Просмотр логов и выявление аномалий


bash
<h2 id="prosmotr-poslednih-zapisey-loga">Просмотр последних записей лога:</h2>
/log print

<h2 id="filtratsiya-po-teme">Фильтрация по теме:</h2>
/log print where topics~"firewall"
/log print where topics~"system"

<h2 id="poisk-neudachnyh-popytok-vhoda">Поиск неудачных попыток входа:</h2>
/log print where message~"login failure"

<h2 id="poisk-izmeneniy-konfiguratsii">Поиск изменений конфигурации:</h2>
/log print where topics~"info" where message~"changed by"


Настроить e-mail-уведомления о критических событиях


bash
<h2 id="nastroit-smtp">Настроить SMTP:</h2>
/tool e-mail set server=smtp.company.local port=25 \
from=mikrotik@company.local

<h2 id="otpravit-testovoe-pismo">Отправить тестовое письмо:</h2>
/tool e-mail send to=admin@company.local \
subject="MikroTik Test" body="Test message"

<h2 id="dobavit-logging-action-s-otpravkoy-na-email">Добавить logging action с отправкой на email:</h2>
/system logging action add name=email-alerts \
target=email email=admin@company.local

/system logging add topics=critical action=email-alerts


Включить аудит изменений конфигурации


bash
<h2 id="ubeditsya-chto-logiruyutsya-izmeneniya">Убедиться что логируются изменения:</h2>
/system logging add topics=info,account action=memory comment="Config audit"

<h2 id="poleznye-sobytiya">Полезные события:</h2>
<h2 id="logged-in-vhod-polzovatelya">&quot;logged in&quot; — вход пользователя</h2>
<h2 id="logged-out-vyhod">&quot;logged out&quot; — выход</h2>
<h2 id="changed-by-izmenenie-konfiguratsii">&quot;changed by&quot; — изменение конфигурации</h2>





12. Как проверить, не взломан ли ваш MikroTik: признаки и диагностика


Признаки взлома — первичная проверка


bash
<h2 id="1-proverit-imya-ustroystva-vzlomannye-chasto-pereimenovyvayut">1. Проверить имя устройства — взломанные часто переименовывают:</h2>
/system identity print
<h2 id="esli-vidite-hacked-test-pwned-ili-neznakomoe-imya-plohoy-znak">Если видите &quot;Hacked&quot;, &quot;Test&quot;, &quot;pwned&quot; или незнакомое имя — плохой знак</h2>

<h2 id="2-proverit-spisok-polzovateley-net-li-neznakomyh">2. Проверить список пользователей — нет ли незнакомых:</h2>
/user print
<h2 id="dolzhny-byt-tolko-te-kogo-vy-sozdavali">Должны быть только те, кого вы создавали</h2>

<h2 id="3-proverit-aktivnye-sessii-kto-seychas-podklyuchyon">3. Проверить активные сессии — кто сейчас подключён:</h2>
/user active print
<h2 id="neznakomye-ip-v-sessiyah-trebuet-rassledovaniya">Незнакомые IP в сессиях — требует расследования</h2>

<h2 id="4-proverit-scheduler-net-li-postoronnih-zadach">4. Проверить scheduler — нет ли посторонних задач:</h2>
/system scheduler print
<h2 id="vredonosnye-skripty-chasto-dobavlyayut-zadachi-v-scheduler">Вредоносные скрипты часто добавляют задачи в scheduler</h2>

<h2 id="5-proverit-skripty">5. Проверить скрипты:</h2>
/system script print
<h2 id="neznakomye-skripty-podozritelno">Незнакомые скрипты — подозрительно</h2>

<h2 id="6-proverit-socks-proksi-chasto-vklyuchayut-botnety">6. Проверить SOCKS-прокси (часто включают ботнеты):</h2>
/ip socks print
<h2 id="dolzhno-byt-enabled-no-esli-vy-ne-vklyuchali-yavno">Должно быть: enabled=no (если вы не включали явно)</h2>


Проверить сетевые соединения


bash
<h2 id="aktivnye-soedineniya">Активные соединения:</h2>
/ip firewall connection print
<h2 id="ischite-ishodyaschie-soedineniya-na-neznakomye-vneshnie-ip">Ищите исходящие соединения на незнакомые внешние IP</h2>

<h2 id="tekuschie-soedineniya-po-protokolam">Текущие соединения по протоколам:</h2>
/ip firewall connection print where protocol=tcp

<h2 id="neozhidannye-dns-zaprosy-esli-ispolzuetsya-dns-server-routera">Неожиданные DNS-запросы (если используется DNS-сервер роутера):</h2>
/ip dns cache print


Проверить firewall и NAT-правила


bash
<h2 id="vse-firewall-pravila-iskat-neznakomye">Все firewall-правила — искать незнакомые:</h2>
/ip firewall filter print
/ip firewall nat print
/ip firewall mangle print

<h2 id="proksi-pravila">Прокси-правила:</h2>
/ip proxy print

<h2 id="tunneli">Туннели:</h2>
/interface print
<h2 id="neznakomye-tonneli-eoip-gre-ipip-openvpn-wireguard-podozritelno">Незнакомые тоннели (EoIP, GRE, IPIP, OpenVPN, WireGuard) — подозрительно</h2>


Проверить файлы


bash
<h2 id="spisok-faylov-v-korne">Список файлов в корне:</h2>
/file print
<h2 id="podozritelnye-fayly-php-exe-neznakomye-rsc-trebuyut-analiza">Подозрительные файлы (.php, .exe, незнакомые .rsc) — требуют анализа</h2>


Проверить версию RouterOS и возможные следы эксплуатации


bash
<h2 id="versiya-i-data-kompilyatsii">Версия и дата компиляции:</h2>
/system routerboard print
/system package print

<h2 id="esli-versiya-staraya-do-6-49-8-i-byl-dostup-iz-wan">Если версия старая (до 6.49.8) и был доступ из WAN —</h2>
<h2 id="vysokaya-veroyatnost-komprometatsii">высокая вероятность компрометации</h2>


Самодиагностика через MikroTik Dude или внешние инструменты


bash
<h2 id="vneshnyaya-proverka-otkrytyh-portov-so-storony-interneta">Внешняя проверка открытых портов (со стороны интернета):</h2>
<h2 id="ispolzuyte-shodan-ili-nmap-s-drugogo-hosta-dlya-proverki">Используйте Shodan или nmap с другого хоста для проверки</h2>
<h2 id="togo-chto-imenno-vidno-snaruzhi">того, что именно видно снаружи:</h2>
<h2 id="na-testovom-okruzhenii-ili-s-razresheniya-vladeltsa-infrastruktury">(на тестовом окружении или с разрешения владельца инфраструктуры)</h2>

<h2 id="nmap-skanirovanie-svoego-ip-dlya-proverki-chto-zakryto">nmap-сканирование своего IP для проверки что закрыто:</h2>
<h2 id="nmap-sv-p-21-22-23-80-443-8291-8728-8729-your-external-ip">nmap -sV -p 21,22,23,80,443,8291,8728,8729 YOUR_EXTERNAL_IP</h2>





13. Что делать если MikroTik уже взломан: пошаговое восстановление


Алгоритм немедленного реагирования


text
Шаг 1: Изолировать устройство
Если возможно — отключить WAN-интерфейс или поставить
upstream-блокировку, пока проводится расследование

Шаг 2: Не выключать сразу
Сначала собрать данные для расследования:
/log print → скопировать / экспортировать
/ip firewall connection print → активные соединения
/user active print → активные сессии

Шаг 3: Сменить пароли (если ещё есть доступ)
/user set [find name=admin] password="NewStrongPassword!"
/ip service set winbox,www,www-ssl disabled=yes

Шаг 4: Экспортировать конфигурацию для анализа
/export file=before-restore
Скачать файл и изучить на наличие вредоносных правил


Полное восстановление через Netinstall


Если MikroTik уже взломали, нужно воспользоваться Netinstall для восстановления прошивки. Netinstall — официальный инструмент переустановки RouterOS с нуля.

1
. Скачать Netinstall с mikrotik.com
2. Скачать актуальный RouterOS для своей модели
3. Подключить MikroTik кабелем к ПК
4. Зажать кнопку Reset при подаче питания (держать 5–10 сек)
5. Устройство перейдёт в режим Netinstall
6. В Netinstall выбрать устройство → Install
7. Дождаться завершения установки

После Netinstall — чистая RouterOS без каких-либо
следов взлома и с дефолтными настройками.


После восстановления — применить весь чеклист харденинга


Чистая установка даст дефолтную конфигурацию. Сразу же применить все шаги из этой статьи (разделы 3–11) прежде чем снова подключать WAN.




14. FAQ: 12 горячих вопросов о безопасности MikroTik


Q 01 Нужно ли отключать Winbox совсем или достаточно ограничить по IP?
A Ограничение по IP — достаточный минимум для большинства сред. Если управление происходит только из LAN — ограничьте Winbox адресом 192.168.x.0/24 и смените порт. Если нужен удалённый доступ — реализуйте его только через VPN, а Winbox слушает только на LAN.

Q 02 RouterOS 6 или 7 — что выбрать с точки зрения безопасности?
A RouterOS 7.x активно развивается, получает более частые обновления безопасности и новую функциональность. В RouterOS 6 реализована устаревшая версия ядра, которую невозможно изменить — что осложняет закрытие уязвимостей на уровне ядра. Для новых установок — RouterOS 7. Для существующих — мигрировать при возможности.

Q 03 Как часто нужно проверять наличие обновлений?
A Минимум раз в месяц. При выходе критических патчей (CVSS 8+) — немедленно. Подпишитесь на MikroTik Forum announcements или RSS-ленту релизов на mikrotik.com/download.

Q 04 Что делать с устройствами, которые нельзя обновить (нет интернет-доступа из LAN)?
A Скачать пакет обновления вручную с mikrotik.com (выбрать модель и версию), загрузить через Winbox в Files → Upload, затем System → Packages → Check for Updates покажет локальный пакет.

Q 05 Нужен ли antivirus на MikroTik?
A RouterOS — специализированная RTOS, не Windows. Антивирус для неё не существует и не нужен. Безопасность обеспечивается актуальной версией RouterOS, правильным firewall и минимизацией открытых сервисов.

Q 06 Обнаружил SOCKS-прокси включённым — роутер взломан?
A Высокая вероятность. Некоторые ботнеты не изменяют пароль, а только добавляют дополнительные настройки или скрипты — включая SOCKS-прокси для использования роутера как промежуточного узла. Если вы не включали прокси — это явный индикатор компрометации. Немедленно начать процедуру восстановления.

Q 07 Как защитить MikroTik, если он должен быть доступен из интернета для управления?
A Только через VPN: поднять IPsec, WireGuard или OpenVPN-туннель, управление — исключительно из VPN-адресного пространства. Прямой доступ к Winbox, WebFig или SSH из интернета без VPN — неприемлем для продакшн-устройств.

Q 08 Насколько безопасен WireGuard на RouterOS?
A WireGuard появился в RouterOS 7.1 и является более современной и криптографически надёжной альтернативой IPsec при меньшей сложности конфигурации. Для VPN-туннелей управления — хороший выбор.

Q 09 Как проверить, не используется ли мой MikroTik как C2-сервер ботнета?
A Признаки: необычный исходящий трафик к посторонним IP, SOCKS-прокси включён, странные scheduler-задачи, неизвестные скрипты, изменение DNS-серверов. Проверить исходящие соединения: `/ip firewall connection print` и `/ip dns set servers` — не должно быть посторонних DNS.

Q 10 Нужно ли отключать UPnP?
A Да. UPnP позволяет устройствам в сети самостоятельно открывать порты на роутере. Это удобно для игр и P2P, но создаёт дыры в безопасности. `/ip upnp print` — проверить статус; `/ip upnp set enabled=no` — отключить.

Q 11 Что такое Secure Boot на MikroTik и нужен ли он?
A RouterOS поддерживает верификацию целостности прошивки на новых RouterBOARD. При настройке Netinstall с правильными ключами это защищает от подмены прошивки при физическом доступе к устройству. Актуально для критичных объектов.

Q 12 Как правильно сделать резервную копию конфигурации?
A Два формата: `/system backup save name=backup` — бинарный, содержит пароли, восстанавливается только на той же модели. `/export file=config` — текстовый .rsc, читаем, без паролей, переносим между устройствами. Хранить оба — в безопасном месте вне устройства.




15. Чек-лист: харденинг MikroTik за один сеанс


Перед началом: резервная копия
- ☐ `/system backup save name=pre-hardening` — бинарный бэкап
- ☐ `/export file=pre-hardening-config` — текстовый экспорт
- ☐ Скачать оба файла с роутера на локальный ПК

Обновление
- ☐ `/system package update check-for-updates` → обновить до актуальной версии
- ☐ `/system routerboard upgrade` → обновить прошивку платы
- ☐ Перезагрузить: `/system reboot`

Аутентификация
- ☐ Сменить пароль admin на надёжный (12+ символов)
- ☐ Создать нового пользователя с нестандартным именем, удалить admin
- ☐ Ограничить пользователей по IP: `allowed-address=`
- ☐ Добавить SSH-ключ, отключить парольную аутентификацию SSH

Сервисы
- ☐ `/ip service print` → отключить Telnet, FTP, API (если не нужны)
- ☐ Отключить HTTP (`www`), оставить только `www-ssl`
- ☐ Ограничить Winbox и SSH по IP или отключить
- ☐ Сменить порты SSH и Winbox на нестандартные
- ☐ `/ip upnp set enabled=no`
- ☐ `/ip proxy set enabled=no`
- ☐ `/ip socks set enabled=no`
- ☐ `/tool bandwidth-server set enabled=no`

IPv6
- ☐ `/ipv6/settings/set accept-router-advertisements=no`
- ☐ Отключить IPv6 если не используется

Firewall
- ☐ Правило drop для всего входящего трафика в chain=input (последнее)
- ☐ Разрешить управление только из доверенных подсетей
- ☐ Добавить правила защиты от брутфорса SSH

Диагностика компрометации
- ☐ `/system identity print` — нет "Hacked"?
- ☐ `/user print` — только свои пользователи?
- ☐ `/system scheduler print` — нет посторонних задач?
- ☐ `/system script print` — нет незнакомых скриптов?
- ☐ `/ip socks print` — disabled=yes?
- ☐ `/log print where message~"login failure"` — нет взлома?

Логирование
- ☐ Включить логирование firewall и critical
- ☐ Настроить syslog-сервер (опционально)
- ☐ Email-уведомления о критических событиях (опционально)




16. Заключение и теги


MikroTik — мощный и гибкий инструмент, который при правильной настройке обеспечивает надёжную безопасность. При дефолтной конфигурации — одна из наиболее легко скомпрометируемых точек в корпоративной инфраструктуре.

Роутеры MikroTik весьма популярны, но в них отсутствует целый ряд механизмов безопасности. При этом администраторы продолжают управлять ими через дефолтную учётную запись, открывая интерфейсы управления для удалённого доступа.

Три приоритетных действия для тех, у кого нет времени прочитать всё: обновить RouterOS до последней стабильной версии, сменить пароль admin и ограничить доступ к сервисам управления по IP. Эти три шага закрывают большинство реальных векторов атаки.

Для тех, кто готов пройти полный путь — чек-лист из раздела 15 покрывает все аспекты от обновления до диагностики компрометации. Харденинг занимает 1–2 часа и даёт устройство, которое принципиально сложнее атаковать, чем типичный MikroTik в интернете.

> 🔒 Безопасность MikroTik — это не разовая настройка. Это процесс: следить за CVE, регулярно обновлять, проверять логи.