hacktricks/network-services-pentesting/47808-udp-bacnet.md

4.8 KiB
Raw Blame History

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

Πληροφορίες Πρωτοκόλλου

BACnet είναι ένα πρωτόκολλο επικοινωνίας για δίκτυα Αυτοματοποίησης και Ελέγχου Κτιρίων (BAC) που αξιοποιεί το ASHRAE, ANSI και το ISO 16484-5 standard πρωτόκολλο. Διευκολύνει την επικοινωνία μεταξύ συστημάτων αυτοματοποίησης και ελέγχου κτιρίων, επιτρέποντας εφαρμογές όπως ο έλεγχος HVAC, ο έλεγχος φωτισμού, ο έλεγχος πρόσβασης και τα συστήματα ανίχνευσης πυρκαγιάς να ανταλλάσσουν πληροφορίες. Το BACnet εξασφαλίζει τη διαλειτουργικότητα και επιτρέπει στις υπολογιστικές συσκευές αυτοματοποίησης κτιρίων να επικοινωνούν, ανεξαρτήτως των συγκεκριμένων υπηρεσιών που παρέχουν.

Προεπιλεγμένη θύρα: 47808

PORT      STATE SERVICE
47808/udp open  BACNet -- Building Automation and Control NetworksEnumerate

Enumeration

Χειροκίνητα

pip3 install BAC0
pip3 install netifaces

import BAC0
import time

myIP = '<Your IP>/<MASK>' #You need to be on the same subnet as the bacnet device. Example: '192.168.1.4/24'
bacnet = BAC0.connect(ip=myIP)
bacnet.whois() #Broadcast request of bacnet devices
time.sleep(5)  #Wait for devices to respond
for i, (deviceId, companyId, devIp, numDeviceId) in enumerate(bacnet.devices):
print(f"-------- Device #{numDeviceId} --------")
print(f"Device:     {deviceId}")
print(f"IP:         {devIp}")
print(f"Company:    {companyId}")
readDevice = bacnet.readMultiple(f"{devIp} device {numDeviceId} all")
print(f"Model Name: {readDevice[11]}")
print(f"Version:    {readDevice[2]}")
# print(readDevice) #List all available info about the device

Αυτόματη

nmap --script bacnet-info --script-args full=yes -sU -n -sV -p 47808 <IP>

Αυτό το σενάριο δεν προσπαθεί να συνδεθεί σε ένα δίκτυο BACnet ως ξένη συσκευή, απλά στέλνει αιτήματα BACnet απευθείας σε μια συσκευή με διεύθυνση IP.

Shodan

  • port:47808 instance
  • "Instance ID" "Vendor Name"

{% hint style="success" %} Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Υποστήριξη HackTricks
{% endhint %}