mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
48 lines
1.9 KiB
Markdown
48 lines
1.9 KiB
Markdown
{{#include ../banners/hacktricks-training.md}}
|
|
|
|
# Taarifa za Protokali
|
|
|
|
**BACnet** ni **protokali ya mawasiliano** kwa mitandao ya Usimamizi na Udhibiti wa Majengo (BAC) inayotumia **ASHRAE**, **ANSI**, na **ISO 16484-5 standard** protokali. Inarahisisha mawasiliano kati ya mifumo ya usimamizi na udhibiti wa majengo, ikiruhusu programu kama vile udhibiti wa HVAC, udhibiti wa mwanga, udhibiti wa ufikiaji, na mifumo ya kugundua moto kubadilishana taarifa. BACnet inahakikisha ufanisi wa kazi pamoja na kuruhusu vifaa vya usimamizi wa majengo vilivyokamilishwa na kompyuta kuwasiliana, bila kujali huduma maalum wanazotoa.
|
|
|
|
**Bandari ya kawaida:** 47808
|
|
```text
|
|
PORT STATE SERVICE
|
|
47808/udp open BACNet -- Building Automation and Control NetworksEnumerate
|
|
```
|
|
# Uainishaji
|
|
|
|
## Mikono
|
|
```bash
|
|
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
|
|
```
|
|
## Kiotomatiki
|
|
```bash
|
|
nmap --script bacnet-info --script-args full=yes -sU -n -sV -p 47808 <IP>
|
|
```
|
|
Hii script haijaribu kujiunga na mtandao wa BACnet kama kifaa cha kigeni, inatuma tu maombi ya BACnet moja kwa moja kwa kifaa kinachoweza kupatikana kwa anwani ya IP.
|
|
|
|
## Shodan
|
|
|
|
- `port:47808 instance`
|
|
- `"Instance ID" "Vendor Name"`
|
|
|
|
{{#include ../banners/hacktricks-training.md}}
|