Alle Lektionen anzeigen
Teil 1
Grundlagen
Teil 2
Modbus RTU
- Lektion 5RS485 erklärt: A, B, Common und Terminierung20 Min.
- Lektion 6Baudrate und Parität: warum 8E1 Standard ist16 Min.
- Lektion 7Das Modbus RTU Frame Byte für Byte, plus CRC18 Min.
- Lektion 8Mehrere Modbus Geräte an einem RS485-Bus16 Min.
- Lektion 9Ihr erstes Modbus Gerät mit mbpoll auslesen22 Min.
- Lektion 10Modbus RTU Fehlersuche: vom Symptom zur Ursache20 Min.
Teil 3
Modbus TCP
Teil 4
Fortgeschritten
- Lektion 16Sicher auf ein Modbus Gerät schreiben18 Min.
- Lektion 17Word Order und Float: gleiche Bytes, anderer Wert22 Min.
- Lektion 18Poll-Intervall und Buslast selbst berechnen18 Min.
- Lektion 19Modbus Sicherheit: das Protokoll hilft nicht16 Min.
- Lektion 20Modbus integrieren: SPS, Home Assistant, Cloud20 Min.
- Lektion 21Modbus Inbetriebnahme: Checkliste und Spickzettel18 Min.
Modbus Sicherheit: das Protokoll hilft nicht
Modbus Sicherheit steckt nicht im Protokoll: kein Passwort, keine Verschlüsselung, kein Log. Lernen Sie, welche Maßnahmen im Netzwerk das übernehmen müssen.
Was diese Lektion behandelt
- Was blankes Modbus nicht schützt: kein Passwort, keine Verschlüsselung, kein Log
- Drei Netzwerkmaßnahmen, und welche davon zuerst kommt
- Port 802, und warum ausgehend sicherer ist als ein eingehender Pfad
Vorher lesen: Port 502, der MBAP-Header und die Unit-ID, Modbus TCP im Netzwerk: IP, VLAN und Firewall
Modbus Sicherheit ist kein Feld im Protokoll, sondern eine Eigenschaft Ihres Netzwerks. In der gesamten ADU steht kein Byte für Identität, Passwort oder Signatur, also darf jeder lesen und schreiben, der eine Verbindung zu Port 502 aufbauen kann. Nach dieser Lektion wissen Sie, welche Netzwerkmaßnahmen diesen fehlenden Schutz übernehmen, in welcher Reihenfolge Sie sie umsetzen und wo Modbus/TCP Security wirklich hilft.
Was passiert, wenn jemand mitliest
Wer im selben Netz sitzt, liest nicht nur mit, er kann auch schreiben. Ein Fall aus der Gebäudeautomation: Ein Wärmemengenzähler hängt auf 192.168.30.50, und im selben VLAN steht ein Bürolaptop. Dieser schickt zwölf Bytes an Port 502:
00 01 00 00 00 06 FF 03 00 6B 00 03
Das Gerät antwortet mit fünfzehn Bytes, ohne Rückfrage:
00 01 00 00 00 09 FF 03 06 02 2B 00 00 00 64
Hinter dem Byte-Count 06 stehen drei Registerwerte: 0x022B, 0x0000 und 0x0064, also 555, 0 und 100. Nun dasselbe als Schreibbefehl. FC06 schreibt ein einzelnes Holding-Register, und die Anfrage ist exakt genauso lang:
| Bytes | Leseanfrage FC03 | Schreibanfrage FC06 | Feld |
|---|---|---|---|
| 1 bis 6 | 00 01 00 00 00 06 | 00 02 00 00 00 06 | MBAP ohne Unit-ID |
| 7 | FF | FF | Unit-ID |
| 8 | 03 | 06 | Funktionscode |
| 9 bis 12 | 00 6B 00 03 | 00 01 00 03 | Daten |
Daraus folgt die Regel: Weder Firewall noch Gerät erkennt an Paketlänge oder Port, ob jemand liest oder schreibt. Der Unterschied steckt in einem einzigen Byte. Ein Feld für Identität gibt es nicht, eine Signatur auch nicht, und nichts schreibt mit, wer welchen Wert geändert hat. Auf RS485 ist es dasselbe in einer anderen Hülle: Die Serveradresse ist eine Adresse und keine Identität, und die CRC-16 prüft auf Übertragungsfehler, nicht auf den Absender.
Warum das Protokoll so entworfen wurde
Modicon brachte Modbus 1979 auf den Markt, für ein geschlossenes Fabriknetz ohne Verbindung nach außen. Wer physisch an den Draht kam, war damit schon autorisiert; das Schloss an der Hallentür war die Zugangskontrolle. Modbus/TCP kam 1996 dazu, wurde bei der IANA registriert und übernahm die PDU unverändert, samt der Annahme, dass das Netz drumherum vertrauenswürdig ist. Das Protokoll wurde also nicht unsicher gemacht, es wurde in eine Umgebung getragen, für die es nie gedacht war.
Was Sie im Netzwerk regeln
Drei Maßnahmen, in dieser Reihenfolge: ein eigenes VLAN, eine Firewall-Regel, die nur Ihren Client zu Port 502 durchlässt, und keine Portweiterleitung nach außen.
Das VLAN kommt zuerst, weil es als einziger Schritt jedes Gerät in der Zone abdeckt, auch das vergessene. Die Firewall-Regel danach ist eng: eine Quelladresse, ein Ziel, ein Port. Die Spezifikation kennt selbst nur ein Schutzmittel, ein optionales Access Control Module, das eingehende Verbindungen gegen eine Liste erlaubter IP-Adressen prüft. Das ist eine Allowlist, keine Authentifizierung: IP-Adressen lassen sich fälschen.
Einige Hersteller ziehen die Grenze inzwischen selbst. Die NIBE S-Serie nimmt ausschließlich Verbindungen aus privaten Adressbereichen an und bietet zusätzlich einen reinen Lesemodus. Fronius kennt eine Option, mit der nur bestimmte IP-Adressen schreiben dürfen, und genau da lohnt der Blick ins Datenblatt: Diese Option beschränkt das Schreiben, nicht das Lesen. Welcher Port offen sein muss und wie Sie das prüfen, steht in der Lektion Modbus TCP im Netzwerk.
Warum ausgehend sicherer ist als eingehend
Eine ausgehende Verbindung braucht keine offene Tür. Das Gateway baut die Sitzung selbst auf, und die zustandsbehaftete Firewall lässt die Antworten durch, weil sie zu einer bereits bestehenden Sitzung gehören. Von außen ist die Anlage dabei weiterhin unerreichbar.
Ein VPN ist damit nicht schlecht, es ist nur eine andere Abwägung: Sie tauschen einen offenen Modbus-Port gegen einen offenen VPN-Port und verlagern die Sicherheit auf dessen Zugangsdaten. Welche Bauform welchen Weg unterstützt, vergleicht der Überblick industrielle IoT-Gateways; wie eine rein ausgehende Anbindung aufgebaut ist, beschreibt Modbus Monitoring über die Cloud.
Was Modbus/TCP Security hinzufügt
Modbus/TCP Security, kurz mbaps, verpackt die unveränderte Modbus-ADU in TLS, und die Spezifikation vergleicht das selbst mit http und https. Der Server hört auf Port 802 statt 502, verlangt mindestens TLS 1.2 und darf nicht auf ältere Versionen zurückfallen. Beide Seiten weisen sich mit einem x.509v3-Zertifikat aus, nicht nur der Server wie bei https üblich. Zusätzlich kann in einer Zertifikatserweiterung mit der OID 1.3.6.1.4.1.50316.802.1 eine Rolle stehen, und der Server entscheidet anhand dieser Rolle, ob er die Anfrage ausführt. Lehnt er sie ab, antwortet er mit Exception 01.
Das ist dieselbe Nummer wie "Funktionscode nicht unterstützt", deshalb entscheidet der Kontext über die Bedeutung. An der Antwort allein sehen Sie nicht, ob das Gerät die Funktion nicht kennt oder Ihr Zertifikat die falsche Rolle trägt. Die TLS-Sitzung bleibt dabei bestehen, abgelehnt wird nur diese eine Anfrage.
Am Protokoll selbst ändert sich dabei nichts: MBAP-Header, Funktionscodes, Exception-Codes und Registersemantik bleiben identisch, nur die Hülle wechselt. Die Details dazu stehen in Modbus TCP erklärt und in der Lektion MBAP-Header und Unit-ID.
Warum man es kaum antrifft
Die Hürde ist nicht das TLS, sondern die Zertifikatsverwaltung dahinter. Die Spezifikation setzt eine vollständige PKI voraus und verlangt, dass jedes Client-Gerät mit einem eigenen ausgestellten Zertifikat versehen wird. Ein Verfahren, wie diese Zertifikate auf Feldgeräte gelangen und dort erneuert werden, beschreibt sie nicht. Auf einer Anlage mit Dutzenden Zählern ist das ein manueller, herstellerspezifischer Prozess. Neu ist das Protokoll dabei nicht: Der Port ist seit 2014-06-10 bei der IANA eingetragen, die verwendete Spezifikationsfassung stammt vom 30. Juli 2021. In den Anlagen, die Sie 2026 antreffen, ist blankes Modbus TCP auf Port 502 trotzdem der Normalfall.
Wie viel Technik steht wirklich offen?
Genug, um die Frage ernst zu nehmen, und weniger, als Schlagzeilen vermuten lassen. Bitsight beobachtete über das Kalenderjahr 2025 rund 170.000 bis 180.000 monatlich eindeutige IP-Adressen, die über 15 überwachte ICS- und OT-Protokolle aus dem Internet erreichbar waren, mit einer Spitze von etwa 170.000 im Januar 2025, danach blieb der Wert stabil und die erwartete Zunahme auf 200.000 trat nicht ein. Modbus und Niagara FOX stellen davon zusammen etwa die Hälfte. Censys zählte in einer Veröffentlichung vom 21. November 2024 weltweit mehr als 145.000 exponierte ICS-Dienste, verteilt auf 38 Prozent Nordamerika, 35 Prozent Europa und 22 Prozent Asien. Für den deutschsprachigen Raum zählt dabei der Nebensatz: Modbus wird laut Censys in Europa häufiger beobachtet als in Nordamerika.
Häufige Fehler
Port 502 nach außen weiterleiten, um von zu Hause aus zu schauen. Damit kann jeder, der die Adresse findet, nicht nur lesen, sondern auch schreiben. Wer den Zugriff von außen braucht, wählt ein Modell, bei dem die Anlage die Verbindung selbst aufbaut.
Ein VPN für dasselbe halten wie eine ausgehende Verbindung. Ein VPN öffnet einen Pfad nach innen. Das kann die richtige Wahl sein, aber es ist eine andere Abwägung, und sie sollte bewusst getroffen und dokumentiert sein.
Feldgeräte ins Büronetz hängen. Ein Gerät mit kleinem Netzwerkstack hat neben Laptops, Druckern und Gäste-WLAN nichts verloren. Ein eigenes VLAN kostet einen Nachmittag und erspart Ihnen jahrelanges Nachbessern.
Lesen für harmlos halten. Wer lesen kann, kann in aller Regel auch schreiben, denn das Protokoll unterscheidet nicht zwischen Rechten. Ein versehentlich geschriebener Sollwert fällt oft erst auf, wenn die Anlage falsch läuft.
Selbst ausprobieren
Ziel: Sie erfassen Ihre eigene Angriffsfläche und schließen die erste Lücke.
- 1
Geräte auflisten
Notieren Sie jedes Gerät, das Modbus TCP spricht, mit IP-Adresse und Port. Ein abweichender Port wie 1502 zählt genauso mit.
- 2
Erreichbarkeit prüfen
Klären Sie pro Gerät, wer es erreichen kann. Liegt es im selben Netz wie Bürolaptops, Gäste-WLAN oder Kameras?
- 3
Nach Weiterleitungen suchen
Prüfen Sie im Router, ob eine Portweiterleitung oder eine NAT-Regel auf Port 502 existiert. Falls ja, notieren Sie den Grund und ob es auch ausgehend ginge.
- 4
Regel eng ziehen
Erlauben Sie, wo möglich, nur die IP-Adresse Ihres Clients zu Port 502 und blocken Sie den Rest.
- 5
Funktion nachweisen
Prüfen Sie danach, ob Ihr Monitoring noch Werte bekommt. Eine Regel, die die Anlage lahmlegt, ist keine Verbesserung.
- 6
Änderung festhalten
Schreiben Sie auf, was Sie geändert haben, damit der nächste Monteur nicht im Dunkeln sucht.
Ohne Anlage. Machen Sie dieselbe Übung mit dem Simulator von pymodbus, kostenfrei nutzbar, auch gewerblich. Starten Sie ihn auf 0.0.0.0:5020, lesen Sie ihn von einem zweiten Rechner im selben Netz aus, und starten Sie ihn danach auf 127.0.0.1 neu. Derselbe Lesebefehl läuft jetzt ins Leere. Das ist genau die Bewegung einer Firewall-Regel, nur im Kleinen.
Erwartetes Ergebnis: eine Liste aus Geräten und ihrer Erreichbarkeit, dazu mindestens ein geschlossener Pfad.
Wo diese Maßnahmen greifen, hängt vom gewählten Weg ab, denn SPS, Home Assistant und Cloud-Plattform öffnen jeweils einen anderen Teil Ihres Netzwerks. Dieser Vergleich steht in der Lektion über Modbus in der Praxis integrieren.
Zusammenfassung
- Modbus kennt weder Authentifizierung noch Verschlüsselung noch Protokollierung, weil in der ADU schlicht kein Feld dafür existiert.
- Eine Leseanfrage und eine Schreibanfrage sind über TCP beide 12 Bytes lang und unterscheiden sich nur im Funktionscode-Byte.
- Der Schutz kommt aus dem Netzwerk: erst ein eigenes VLAN, dann eine enge Firewall-Regel, und keine Portweiterleitung nach außen.
- Eine ausgehende Verbindung braucht keinen offenen Port, ein VPN und eine Portweiterleitung dagegen schon.
- Modbus/TCP Security auf Port 802 ergänzt TLS 1.2, beidseitige Zertifikate und Rollen, setzt aber eine PKI voraus und begegnet Ihnen im Feld selten.
Überprüfen Sie sich selbst
Vier Fragen zu dieser Lektion. Zu jeder Antwort gibt es eine Erläuterung.
Frage 1 von 4
Selbst sehen, wie es funktioniert?
Das ModbusCloud Gateway liest die Geräte aus diesem Kurs aus, ohne dass Sie ein einziges Register programmieren.