Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Redpoint — NSE-скрипты Nmap для обнаружения и перечисления ICS/SCADA — BACnet, EtherNet/IP, CoDeSys, Fox, Modicon, Omron, S7 — использующие запросы протоколов для оценки безопасности. | Kitploit
Инструменты/GitHubGitHub/digitalbond/redpoint
РазведкаБезопасность SCADA/ICSСбор информацииСетевая безопасностьТестирование на ПроникновениеТоп в Безопасность SCADA/ICS №5
GitHubdigitalbond/redpoint

Redpoint

NSE-скрипты Nmap для обнаружения и перечисления ICS/SCADA — BACnet, EtherNet/IP, CoDeSys, Fox, Modicon, Omron, S7 — использующие запросы протоколов для оценки безопасности.

Репозиторий
4721498010 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

#Redpoint

###Инструменты Digital Bond для перечисления ICS

Redpoint — это исследовательский проект Digital Bond, предназначенный для перечисления ICS-приложений и устройств.

Мы используем инструменты Redpoint в своих оценках для обнаружения ICS-устройств и получения информации, полезной для дальнейшего тестирования. Часть этих инструментов будет опубликована в этом репозитории в виде Nmap NSE-скриптов.

Инструменты Redpoint используют легитимные команды протоколов или приложений для обнаружения и перечисления устройств и приложений. Они не предназначены для эксплуатации уязвимостей или нарушения работы чего-либо. Однако многие ICS-устройства и приложения хрупки и могут выйти из строя или неожиданно отреагировать на любой неожиданный трафик, поэтому используйте их с осторожностью.

Каждый скрипт описан ниже и доступен в виде .nse-файла в этом репозитории.

  • BACnet-discover-enumerate.nse — обнаружение и перечисление устройств BACnet

  • codesys-v2-discover.nse — обнаружение и перечисление контроллеров CoDeSys V2

  • enip-enumerate.nse — обнаружение и перечисление устройств EtherNet/IP от Rockwell Automation и других производителей

  • fox-info.nse — обнаружение и перечисление устройств Niagara Fox

  • modicon-info.nse — обнаружение и перечисление ПЛК Schneider Electric Modicon

  • omron-info.nse — обнаружение и перечисление ПЛК Omron

  • pcworx-info.nse — обнаружение и перечисление ПЛК с поддержкой протокола PC Worx

  • proconos-info.nse — обнаружение и перечисление ПЛК с поддержкой ProConOS

  • s7-enumerate.nse — обнаружение и перечисление ПЛК Siemens SIMATIC S7

==

###BACnet-discover-enumerate.nse

![Пример вывода BACnet-discover-enumerate] (http://digibond.wpengine.netdna-cdn.com/wp-content/uploads/2014/03/BACnet-nse.png)

####Авторы

Stephen Hilt и Michael Toecker
Digital Bond, Inc

####Назначение и описание

Назначение BACnet-discover-enumerate.nse — сначала определить, работает ли на устройстве с IP-адресом протокол BACnet. Это делается путём отправки на устройство предварительно сгенерированного BACnet-сообщения. Новые версии протокола BACnet ответят подтверждением, более старые версии вернут сообщение об ошибке BACnet. Наличие либо подтверждения, либо ошибки достаточно, чтобы доказать, что на целевом IP-адресе находится устройство, поддерживающее BACnet.

Во-вторых, если получено подтверждение, этот скрипт также попытается перечислить несколько свойств BACnet на отвечающем устройстве BACnet. Устройство снова опрашивается предварительно сгенерированным BACnet-сообщением. Успешное перечисление использует специально созданные запросы и не будет успешным, если устройство BACnet не поддерживает данное свойство.

Свойства BACnet, запрашиваемые этим скриптом:

  1. Vendor ID — число, соответствующее зарегистрированному вендору BACnet. Скрипт также возвращает связанное с ним имя вендора.

  2. Vendor Number — строка, представляющая имя вендора, настроенное на устройстве. Она может отличаться от Vendor ID, поскольку Vendor ID — это номер, зарегистрированный в ASHRAE.

  3. Object Identifier — число, однозначно идентифицирующее устройство. Если Object-Identifier известен, можно отправлять команды с помощью клиентского ПО BACnet, в том числе изменяющие значения, программы, расписания и другие эксплуатационные данные на устройствах BACnet. Это обязательное свойство для всех устройств BACnet.

  4. Firmware Revision — номер ревизии прошивки на устройстве BACnet.

  5. Application Software Revision — номер ревизии программного обеспечения, используемого для связи BACnet.

  6. Object Name — определяемая пользователем строка, присваивающая имя устройству BACnet; обычно вводится техниками при пусконаладке. Это обязательное свойство для всех устройств BACnet.

  7. Model Name — модель устройства BACnet

  8. Description — определяемая пользователем строка для описания устройства; обычно вводится техниками при пусконаладке

  9. Location — определяемая пользователем строка для записи физического местоположения устройства; обычно вводится техниками при пусконаладке

  10. Broadcast Distribution Table (BDT) — список устройств управления широковещательной рассылкой BACnet (BBMD) в сети BACnet. Это позволяет определить все подсети, входящие в сеть BACnet.

  11. Foreign Device Table (FDT) — список внешних устройств, зарегистрированных на устройстве BACnet. Внешнее устройство — это любое устройство, которое не находится в подсети, входящей в сеть BACnet, и не указано в BDT. Внешние устройства часто расположены во внешних сетях и могут представлять собой IP-адрес злоумышленника.

BDT и FDT могут быть большими списками и могут быть нежелательны при большом сканировании Nmap. Базовый скрипт не загружает BDT и FDT. Запустите команду с параметром --script-args full=yes, чтобы получить BDT и FDT, см. раздел «Использование».

![Пример вывода BACnet-discover-enumerate с BDT и FDT] (http://digibond.wpengine.netdna-cdn.com/wp-content/uploads/2014/08/screenshot_bacnet-1.png)

Этот скрипт использует функцию, добавленную в спецификацию BACnet в 2004 году, для получения Object Identifier устройства одним запросом, без подключения к сети BACnet в качестве внешнего устройства. (Подробности см. в ANSI/ASHRAE Addendum a к ANSI/ASHRAE Standard 135-2001)

####История и предыстория

Из статьи в Википедии о BACnet http://en.wikipedia.org/wiki/BACnet:

BACnet — это коммуникационный протокол для сетей автоматизации зданий и управления. Это стандарт ASHRAE, ANSI и ISO[1]. Порт по умолчанию для трафика BACnet — UDP/47808.

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

####Установка

Для работы этого скрипта требуется nmap. Если у вас нет Nmap, загрузите и установите Nmap в соответствии с инструкциями Nmap. http://nmap.org/download.html

#####Windows

После загрузки bacnet-discover.nse необходимо переместить его в каталог NSE Scripts; это нужно сделать от имени администратора. Перейдите в Пуск -> Программы -> Стандартные и щёлкните правой кнопкой мыши по «Командная строка». Выберите «Запуск от имени администратора».

move BACnet-discover-enumerate.nse C:\Program Files (x86)\Nmap\scripts

#####Linux

После загрузки BACnet-discover-enumerate.nse необходимо переместить его в каталог NSE Scripts; это нужно сделать от имени sudo/root.

sudo mv BACnet-discover-enumerate.nse /usr/share/nmap/scripts
	

####Использование

В окне терминала / командной строки используйте одну из следующих команд, где host — цель, которую вы хотите просканировать на BACnet. Используйте --script-args full=yes, если хотите, чтобы вывод включал BDT и FDT.

Windows: nmap -sU -p 47808 --script BACnet-discover-enumerate <host>
Windows: nmap -sU -p 47808 --script BACnet-discover-enumerate --script-args full=yes <host>

Linux: sudo nmap -sU -p 47808 --script BACnet-discover-enumerate <host> 
Linux: sudo nmap -sU -p 47808 --script BACnet-discover-enumerate --script-args full=yes <host>
Скачать инструмент