tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Soutenir HackTricks
- Vérifiez les plans d'abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PRs au HackTricks et HackTricks Cloud dépôts github.
Informations sur le protocole
BACnet est un protocole de communication pour les réseaux d'automatisation et de contrôle des bâtiments (BAC) qui s'appuie sur le protocole standard ASHRAE, ANSI et ISO 16484-5. Il facilite la communication entre les systèmes d'automatisation et de contrôle des bâtiments, permettant à des applications telles que le contrôle HVAC, le contrôle de l'éclairage, le contrôle d'accès et les systèmes de détection d'incendie d'échanger des informations. BACnet garantit l'interopérabilité et permet aux dispositifs d'automatisation des bâtiments informatisés de communiquer, quel que soit les services spécifiques qu'ils fournissent.
Port par défaut : 47808
PORT STATE SERVICE
47808/udp open BACNet -- Building Automation and Control NetworksEnumerate
Énumération
Manuel
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
Automatique
nmap --script bacnet-info --script-args full=yes -sU -n -sV -p 47808 <IP>
Ce script n'essaie pas de rejoindre un réseau BACnet en tant qu'appareil étranger, il envoie simplement des requêtes BACnet directement à un appareil accessible par IP.
Shodan
port:47808 instance
"Instance ID" "Vendor Name"
tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Soutenir HackTricks
- Vérifiez les plans d'abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PRs au HackTricks et HackTricks Cloud dépôts github.