Common attacks and weaknesses
- Unauthenticated control of building systems exposed on the Internet.
Building automation (HVAC, access control, lighting).
A controller sends commands to an industrial device on port 47808, which acts on the physical process. It travels in clear text: anyone on the path can read it.
| Service | Port | Transport | Description | Reference | Updated |
|---|---|---|---|---|---|
| bacnet | 47808 | TCP, UDP | Building Automation and Control Networks | - | 2011-02-10 |
// source: IANA service name and port number registry
Linux
sudo ss -ltnup 'sport = :47808' # process listening on 47808
sudo lsof -nP -i :47808macOS
sudo lsof -nP -i :47808
Windows (PowerShell)
Get-NetTCPConnection -LocalPort 47808 -State Listen | Select LocalAddress, OwningProcess Get-NetUDPEndpoint -LocalPort 47808 netstat -ano | findstr :47808
From another machine
nmap -p 47808 -sV <host> sudo nmap -sU -p 47808 <host> nc -zv <host> 47808
Block it in the firewall
sudo ufw deny 47808/tcp # Linux (ufw) New-NetFirewallRule -DisplayName "Block 47808" -Direction Inbound -LocalPort 47808 -Protocol TCP -Action Block # Windows
Building automation (HVAC, access control, lighting).
Port 47808 is registered for UDP and TCP. In practice the service mostly uses UDP.
It is rated 9/10 (critical) when exposed to the Internet. Unauthenticated control of building systems exposed on the Internet. Keep building automation off the Internet; use BACnet/SC where possible.
On Linux run "ss -ltnup 'sport = :47808'", on macOS "lsof -nP -i :47808", and on Windows "netstat -ano | findstr :47808" to see the local process. From another machine, "nmap -p 47808 <host>" shows whether it is reachable.