
Industrial Network Scanner: как мы написали на Go инструмент аудита безопасности ICS/SCADA-сетей
ura-ch 28 минут назад Industrial Network Scanner: как мы написали на Go инструмент аудита безопасности ICS/SCADA-сетей Средний 5 мин 983 Go * Промышленное программирование * Кейс Из песочницы Привет, Хабр! Хочу...
GPT-5.6 31 Temmuz 2026'da yayınlanacak mı?
Вот важная новость с фронта ИИ: ura-ch 28 минут назад Industrial Network Scanner: как мы написали на Go инструмент аудита безопасности ICS/SCADA-сетей Средний 5 мин 983 Go * Промышленное программирование * Кейс Из песочницы Привет, Хабр! Хочу рассказать об инструменте, который мы делали для реальных задач — аудита безопасности промышленных сетей. Называется Industrial Scanner Pro, написан на Go, имеет веб-интерфейс и умеет работать с тремя ключевыми промышленными протоколами.
Репозиторий лежит на GitVerse. Статья будет полезна тем, кто занимается ОТ-безопасностью, пишет инструменты для пентеста промышленных систем или просто интересуется, как устроены ICS-сети изнутри. Зачем ещё один сканер?
Технические детали
Когда берёшься за аудит промышленной сети, инструментарий оказывается неожиданно скудным. Nmap умеет многое, но не понимает Modbus или S7. Специализированные коммерческие решения стоят десятки тысяч долларов и заточены под конкретных вендоров.
Открытые альтернативы — PLCscan, modscan, s7scan — узкоспециализированы: каждый работает с одним протоколом, у большинства нет нормального UI, а агрегировать результаты приходится руками. Нам нужно было:Один инструмент для трёх основных промышленных протоколовОценка рисков по каждому обнаруженному устройству, а не просто список открытых портовВеб-интерфейс — чтобы можно было показать заказчику прямо в браузере, без установки клиентаКросс-платформенность — собирается под Linux, Windows и macOS из одного codebaseТак появился Industrial Scanner Pro. Поддерживаемые протоколыModbus TCP (порт 502)Самый распространённый промышленный протокол.
Появился в 1979 году и до сих пор живёт в большинстве ПЛК, частотных преобразователях и промышленных контроллерах. Главная его проблема с точки зрения безопасности — полное отсутствие аутентификации. Любой, кто добрался до сети, может читать и писать регистры.
Отраслевые последствия
Сканер подключается к устройству, читает Holding Registers и Input Registers, опрашивает несколько Unit ID и строит карту доступных данных. 10:502 Unit ID: 1 — доступен Holding Registers : Coils : Риск: ВЫСОКИЙ — открытая запись регистров без аутентификации Siemens S7 (порт 102)Протокол семейства SIMATIC S7 — де-факто стандарт для европейской промышленности. Работает поверх ISO-on-TCP (RFC 1006).
Содержит богатую диагностическую информацию: имя устройства, версию прошивки, серийный номер, тип CPU. Именно эти данные особенно ценны при разведке: зная точную версию прошивки Siemens S7-300, можно проверить известные CVE. 20:102 Имя: S7-300 CPU 315-2 DP Версия: V3.
12 Серийный номер: S C-X4U487474 Тип модуля: CPU Риск: СРЕДНИЙ — доступна диагностическая информация DNP3 (порт 20000)Протокол, широко используемый в электроэнергетике, водоснабжении и нефтегазовой отрасли. Поддерживает метки времени, CRC-проверку и адресацию удалённых терминальных устройств (RTU).
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.




