mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-28 23:51:29 +00:00
3 KiB
3 KiB
Sıfırdan kahraman olmaya kadar AWS hackleme öğrenin htARTE (HackTricks AWS Red Team Expert)!
HackTricks'ı desteklemenin diğer yolları:
- Şirketinizi HackTricks'te reklamını görmek istiyorsanız veya HackTricks'i PDF olarak indirmek istiyorsanız [ABONELİK PLANLARI]'na (https://github.com/sponsors/carlospolop) göz atın!
- Resmi PEASS & HackTricks ürünlerini edinin
- [The PEASS Family]'yi (https://opensea.io/collection/the-peass-family) keşfedin, özel [NFT'lerimiz]'i (https://opensea.io/collection/the-peass-family) içeren koleksiyonumuzu
- 💬 Discord grubuna veya telegram grubuna katılın veya bizi Twitter 🐦 @carlospolopm'da takip edin.
- Hacking püf noktalarınızı paylaşarak PR'lar göndererek HackTricks ve HackTricks Cloud github depolarına katkıda bulunun.
Protokol Bilgisi
BACnet, ASHRAE, ANSI ve ISO 16484-5 standardı protokolünü kullanan Bina Otomasyonu ve Kontrol (BAC) ağları için bir iletişim protokolüdür. BACnet, bina otomasyonu ve kontrol sistemleri arasında iletişimi kolaylaştırır ve HVAC kontrolü, aydınlatma kontrolü, erişim kontrolü ve yangın tespit sistemleri gibi uygulamaların bilgi alışverişini sağlar. BACnet, etkileşim sağlar ve bilgisayarlaştırılmış bina otomasyon cihazlarının, sağladıkları belirli hizmetlerden bağımsız olarak iletişim kurmalarına olanak tanır.
Varsayılan port: 47808
PORT STATE SERVICE
47808/udp open BACNet -- Building Automation and Control NetworksEnumerate
Sıralama
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
Otomatik
nmap --script bacnet-info --script-args full=yes -sU -n -sV -p 47808 <IP>
Bu betik, yalnızca bir IP adreslenebilir cihaza doğrudan BACnet istekleri gönderir, BACnet ağına yabancı bir cihaz olarak katılmaya çalışmaz.
Shodan
port:47808 instance
"Instance ID" "Vendor Name"