Common attacks and weaknesses
- PLC program upload and download, stop or start commands (Stuxnet era tooling).
Siemens S7 PLC communication and ISO transport.
A controller sends commands to an industrial device on port 102, which acts on the physical process. It travels in clear text: anyone on the path can read it.
| Service | Port | Transport | Description | Reference | Updated |
|---|---|---|---|---|---|
| iso-tsap | 102 | TCP, UDP | ISO-TSAP Class 0 | - | - |
// source: IANA service name and port number registry
Linux
sudo ss -ltnup 'sport = :102' # process listening on 102
sudo lsof -nP -i :102macOS
sudo lsof -nP -i :102
Windows (PowerShell)
Get-NetTCPConnection -LocalPort 102 -State Listen | Select LocalAddress, OwningProcess Get-NetUDPEndpoint -LocalPort 102 netstat -ano | findstr :102
From another machine
nmap -p 102 -sV <host> sudo nmap -sU -p 102 <host> nc -zv <host> 102
Block it in the firewall
sudo ufw deny 102/tcp # Linux (ufw) New-NetFirewallRule -DisplayName "Block 102" -Direction Inbound -LocalPort 102 -Protocol TCP -Action Block # Windows
Siemens S7 PLC communication and ISO transport.
Port 102 is registered for TCP and UDP. In practice the service mostly uses TCP.
It is rated 10/10 (critical) when exposed to the Internet. PLC program upload and download, stop or start commands (Stuxnet era tooling). Isolate OT networks and enable PLC access protection.
On Linux run "ss -ltnup 'sport = :102'", on macOS "lsof -nP -i :102", and on Windows "netstat -ano | findstr :102" to see the local process. From another machine, "nmap -p 102 <host>" shows whether it is reachable.