Cactus провайдер
Файл
cactus_micro_scan · 4 КБ · нажмите — покажем
cactus_micro_scan · 4 КБ · нажмите — покажем
Фотография
нажмите — покажем
нажмите — покажем
Cвязистов сегодня собрали на совещание в связи с уязвимостями в оборудовании Микротик, в ходе возник вопрос о том, а как проверить на уязвимости тысячи устройств клиентов. Я предложил использовать LDP и CDP протоколы в которых микротики активно показывают свою версию ПО. Но у коллег была сеть VLAN на клиента и к каждому не заглянешь с таким протоколом. В итоге сейчас сел, подумал и родилось изящное решение в рамках закона.
🛠 Шаг 1. Быстрый тест в ручном режиме
Для начала подготовим окружение и проверим один тестовый роутер.
Ставим сканер Nmap:
apt install nmap
Скачиваем специализированный NSE-скрипт:
wget https://svn.nmap.org/nmap/scripts/mikrotik-routeros-version.nse
Запускаем точечную проверку тестового роутера:
nmap -p 8291 --script mikrotik-routeros-version 172.16.16.19
Что мы получаем в выводе?
PORT STATE SERVICE
8291/tcp open winbox
| mikrotik-routeros-version:
| list:
| wave2.jg 7.20.5
| secure.jg 7.20.5
|_roteros.jg 7.20.5
Service Info: OS: RouterOS 7.20.5; CPE: cpe:/o:mikrotik:routeros:7.20.5
Скрипт напрямую обращается к WinBox и вытаскивает точную версию OS (в данном примере 7.20.5) и список всех активных пакетов.
🚀 Шаг 2. Масштабируем на всю сеть (Автоматизация)
Чтобы не сканировать каждый IP руками, заворачиваем процесс в быстрый Bash-скрипт cactus_micro_scan. Он умеет работать на больших скоростях, не зависает на "мертвых" хостах благодаря таймаутам и показывает индикатор прогресса.
Создаем файл subnets.txt и закидываем туда списки нужных подсетей (каждая с новой строки):
172.16.16.0/24
192.168.1.0/24
Запускаем наш инструмент (предварительно дав ему права на запуск через chmod +x):
./cactus_micro_scan
Как это выглядит в консоли:
[DEBUG] Загружено целей для сканирования: 2
[+] Начинаем ускоренное сканирование...
[1/2] Проверяем: 172.16.16.0/24 ... [/] Готово
[2/2] Проверяем: 192.168.1.0/24 ... [-]
[!] Обнаружен уязвимый хост: 192.168.1.55 (7.20.5)
Готово
📋 Результат
На выходе скрипт генерирует чистый текстовый отчет в файле
21 · 936 ·