OT-Netzwerksegmentierung mit ISA-99-Zonen und -Leitungen: Praktischer Leitfaden für Schneider M580 und Bachmann M1

Das eigentliche Problem mit flachen OT-Netzwerken
Die meisten Industrieanlagen, die vor 2015 gebaut wurden, betreiben ein flaches Ethernet-Netzwerk, in dem die Schneider Electric Modicon M580 SPS, der Bachmann M1 Automatisierungscontroller, der SCADA-Historian und das unternehmensweite ERP dieselbe Layer-2-Broadcast-Domäne teilen. Erstens bedeutet dies, dass ein Ransomware-Angriff, der über das Unternehmensnetzwerk eindringt, die M580-CPU erreicht, ohne einen Zugriffskontrollpunkt zu passieren. Zweitens kann eine falsch konfigurierte Workstation, die ARP-Stürme aussendet, den Ethernet-Port der M580 BM•P 58•2020 CPU sättigen – der Ethernet-Port der M580-CPU verarbeitet ARP auf Softwareebene mit einer Obergrenze von 500 Paketen pro Sekunde. Drittens können Protokollexploits, die auf den Modbus TCP-Port 502 oder EtherNet/IP-Port 44818 abzielen, frei über das flache Netzwerk reisen. Daher ist die ISA-99 / IEC 62443 Zonen- und Leitungsarchitektur nicht optional – sie ist der einzige bewährte Rahmen, der Netzwerkschutz auf Ebene des Netzwerks bietet, ohne die Steuerungsstrategie zu stören.
ISA-99 Zonen- und Leitungsarchitektur: Definition der Struktur
ISA-99 (IEC 62443-3-3) unterteilt das industrielle Netzwerk in Sicherheitsstufen (SL) und ordnet Vermögenswerte Zonen zu, basierend auf den Folgen eines Kompromisses. Definieren Sie zuerst Ihre Zonen, bevor Sie eine Switch-Konfiguration vornehmen. Identifizieren Sie dann jedes Gerät im Anlagenetzwerk und ordnen Sie es einer von vier Zonen zu:
- Zone 1 — Sicherheit (SIL): Nur Sicherheits-SPS. Für die meisten Anlagen umfasst dies ICS Triplex- oder Triconex TMR-Systeme. Kein allgemeiner Datenverkehr gelangt in diese Zone. Die Leitung zu Zone 2 erlaubt nur schreibgeschütztes Modbus TCP für SCADA-Anzeigen.
- Zone 2 — Steuerung (SL-2): Schneider M580 CPUs, Bachmann M1 Controller, I/O-Netzwerke, Feldgeräteverwaltung. EtherNet/IP- und Modbus TCP-Verkehr bleibt innerhalb dieser Zone. Externer Zugriff nur über die IDMZ-Leitung.
- Zone 3 — Überwachung (SL-1): SCADA-Server, DCS-Historian, Bedienerarbeitsplätze. Diese Zone greift über eine definierte Leitung durch eine zustandsbehaftete Firewall auf Zone 2 zu – keine flache Verbindung.
- Zone 4 — Unternehmensnetz (SL-0): Unternehmens-ERP, Active Directory, E-Mail-Server. Kein direkter Zugriff auf Zone 2 oder Zone 1. Der gesamte Datenaustausch erfolgt ausschließlich über die IDMZ.
Außerdem befindet sich die Industrial DMZ (IDMZ) zwischen Zone 3 und Zone 4. Die IDMZ enthält die Datenreplikationsserver – OSIsoft PI, Wonderware Historian oder OPC DA/UA-Gateway. Kein Datenverkehr durchquert die IDMZ vollständig – sowohl Zone 3 als auch Zone 4 verbinden sich mit IDMZ-Servern, aber niemals direkt miteinander. Dies ist das Kernprinzip der ISA-99 Grenzkontrolle.
VLAN- und Firewall-Konfiguration für Schneider M580 Netzwerke
Der Schneider Modicon M580 verwendet EtherNet/IP am CPU-Backplane-Ethernet-Port (BMEP58•020-Serie) und einen dedizierten I/O-Netzwerk-Ethernet-Port für Ethernet RIO-Drops. Weisen Sie zuerst den CPU-Management-Port dem VLAN 20 (Steuerungszone) auf Ihrem verwalteten Switch zu. Weisen Sie dann alle Remote I/O (BMECRA31210 RIO-Drops) dem VLAN 21 (I/O-Unterzone) zu. Erstellen Sie anschließend eine ACL (Access Control List) auf dem Switch, um jeglichen Verkehr zwischen VLAN 21 und einer Zone über Level 2 zu blockieren.
Konfigurieren Sie auf einem Cisco IE4000 oder Cisco IE3400 verwalteten Switch das Inter-VLAN-Routing mit diesen Firewall-Regeln:
- Schritt 1: Erstellen Sie VLAN 20 (Steuerung) und VLAN 21 (RIO). Weisen Sie den M580 CPU-Port dem VLAN 20 im Access-Modus zu. Weisen Sie alle BMECRA31210 RIO-Drop-Ports dem VLAN 21 im Access-Modus zu.
- Schritt 2: Wenden Sie eine ACL auf VLAN 20 SVI an: Erlauben Sie TCP von beliebiger Quelle zu 192.168.20.0/24 Port 44818 (EtherNet/IP CIP). Erlauben Sie TCP von beliebiger Quelle zu 192.168.20.0/24 Port 502 (Modbus TCP). Verweigern Sie IP von beliebiger Quelle zu beliebigem Ziel und protokollieren Sie. Dies erlaubt nur die erforderlichen Protokolle zum M580.
- Schritt 3: Blockieren Sie jeglichen externen Zugriff auf VLAN 21 am Layer-3-Switch – verweigern Sie IP von beliebiger Quelle zu 192.168.21.0/24. RIO-Verkehr darf niemals von Zone 3 oder Zone 4 zugänglich sein.
- Schritt 4: Konfigurieren Sie die zustandsbehaftete Firewall zwischen Zone 2 und Zone 3 so, dass nur OPC UA Port 4840 vom SCADA-Server zum OPC UA-Gateway in Zone 3 erlaubt ist. Blockieren Sie Modbus TCP Port 502 zwischen Zone 3 und Zone 2 – SCADA liest das OPC UA-Gateway, nicht direkt die M580.
- Schritt 5: Aktivieren Sie Port-Sicherheit auf allen M580- und BMECRA-Switch-Ports – sperren Sie auf die MAC-Adresse des Senders. Setzen Sie den Port-Sicherheits-Verstoßmodus auf „restrict“ (nicht „shutdown“), um eine Warnung zu erzeugen, ohne das I/O-Netzwerk zu unterbrechen.
Der M580 CPU Ethernet-Port unterstützt jedoch kein 802.1Q VLAN-Tagging nativ – er arbeitet nur als VLAN-Access-Port. Daher muss der Switch das gesamte VLAN-Tagging übernehmen. Dies ist eine häufig übersehene Designbeschränkung bei M580-Netzwerken, die Ingenieure bei der Segmentierung oft nicht berücksichtigen.
Bachmann M1 Controller-Segmentierung und OPC UA Grenzkontrolle
Bachmann M1 Controller verwenden ihr eigenes MIO (Modular I/O) Ethernet-Netzwerk auf einer dedizierten Schnittstelle, getrennt vom Programmierport. Weisen Sie zuerst das Bachmann M1 MIO-Netzwerk dem VLAN 22 zu – getrennt vom Schneider M580 Steuerungs-VLAN 20. Dies verhindert Protokoll-übergreifende Broadcast-Stürme. Zweitens unterstützt Bachmann M1 nativ OPC UA Server-Funktionalität in seiner SolutionCenter-Programmierumgebung. Konfigurieren Sie den OPC UA Server so, dass nur die erforderlichen Tags für Zone 3 freigegeben werden – geben Sie nicht den gesamten M1 Variablen-Namespace frei.
Stellen Sie in Bachmann SolutionCenter den OPC UA Sicherheitsmodus auf „SignAndEncrypt“ und die Sicherheitspolitik auf „Basic256Sha256“. Lehnen Sie alle anonymen Verbindungen ab – fordern Sie eine zertifikatbasierte Authentifizierung. Dies entspricht den Anforderungen der IEC 62443-3-3 Sicherheitsstufe 2 für die Steuerungszone. Legen Sie außerdem den Adressraum des M1 OPC UA Servers so fest, dass nur Tags aus der genehmigten SCADA-Tag-Liste veröffentlicht werden – verwenden Sie die Bachmann OPC UA NodeManager-Konfiguration, um spezifische Variablenknoten auf die Whitelist zu setzen. Blockieren Sie alle anderen Knoten auf Serverebene, nicht nur an der Firewall.
- Schritt 1: Navigieren Sie in Bachmann SolutionCenter zur OPC UA Server-Konfiguration im Modul „Kommunikation“.
- Schritt 2: Setzen Sie den Sicherheitsmodus auf „SignAndEncrypt“. Setzen Sie die Sicherheitspolitik auf „Basic256Sha256“. Deaktivieren Sie die „None“ und „Sign“ Richtlinien.
- Schritt 3: Importieren Sie das SCADA-Server-Zertifikat in den vertrauenswürdigen Zertifikatsspeicher des Bachmann M1. Nur SCADA-Clients mit Zertifikat dürfen sich verbinden.
- Schritt 4: Aktivieren Sie die Firewall-Funktion des Bachmann M1 – erlauben Sie TCP 4840 (OPC UA) nur von der SCADA-Server-IP-Adresse 192.168.30.10. Blockieren Sie alle anderen eingehenden Verbindungen auf dem OPC UA-Port.
- Schritt 5: Stellen Sie die Sitzungstimeout auf 30 Sekunden ein. Jede SCADA-Sitzung, die 30 Sekunden inaktiv ist, wird automatisch geschlossen – verhindert veraltete Sitzungen in der M1-Sitzungstabelle.
- Schritt 6: Protokollieren Sie alle OPC UA-Verbindungsereignisse im Bachmann M1 Syslog – konfigurieren Sie die Weiterleitung des Syslogs an den SIEM-Server in der IDMZ zur Sicherheitsüberwachung.
IDMZ-Design: Datenreplikation ohne direkte Zonendurchquerung
Die IDMZ enthält genau zwei Servertypen: den Datenhistorian-Replikationsserver und den Remote-Access-Jump-Server. Erstens läuft der OSIsoft PI Relay oder Honeywell Uniformance PHD in der IDMZ. Der Historian in Zone 3 schiebt Daten über TCP-Port 5450 (PI-zu-PI-Schnittstelle) an den IDMZ-Relay. Der Unternehmenshistorian in Zone 4 zieht Daten vom IDMZ-Relay über denselben Port. Prozessdaten reisen niemals direkt zwischen Zone 3 und Zone 4. Zweitens bietet der Remote-Access-Jump-Server in der IDMZ RDP-Zugriff für Wartungsingenieure. Konfigurieren Sie den Jump-Server so, dass RDP-Verbindungen nur von einem genehmigten, MFA-geschützten VPN-Endpunkt erlaubt sind – niemals direkter RDP-Zugriff von Zone 4 zu Zone 2 oder Zone 1.
Wenden Sie außerdem diese Firewall-Regeln zwischen Zone 4 und IDMZ an: Erlauben Sie TCP 5450 (PI) nur vom Historian in Zone 4 zum IDMZ-Relay. Verweigern Sie allen anderen Verkehr von Zone 4 zur IDMZ. Zwischen IDMZ und Zone 3: Erlauben Sie TCP 5450 vom IDMZ-Relay zum Historian in Zone 3. Erlauben Sie RDP (TCP 3389) nur vom IDMZ-Jump-Server zu SCADA-Arbeitsplätzen in Zone 3 – mit MFA am Jump-Server-Gateway durchgesetzt.
Fazit und Handlungsempfehlung
Die ISA-99 Zonen- und Leitungssegmentierung für Schneider M580 und Bachmann M1 Netzwerke ist eine ingenieurtechnische Aufgabe, kein IT-Sicherheitsprojekt. Definieren Sie zuerst Ihre vier Zonen und erstellen Sie das Leitungsdiagramm, bevor Sie einen Switch berühren. Weisen Sie dann M580 CPU- und M1 MIO-Netzwerke dedizierten VLANs mit ACLs zu, die alle nicht erforderlichen Protokolle blockieren. Erzwingen Sie OPC UA SignAndEncrypt auf dem Bachmann M1 und verwenden Sie von Anfang an zertifikatbasierte Authentifizierung. Bauen Sie die IDMZ als echten Daten-Relay auf – keine direkten Pfade von Zone 3 zu Zone 4. Aktivieren Sie Port-Sicherheit auf allen Steuerungs-VLAN-Switch-Ports, um unerwünschte Geräteverbindungen zu verhindern. Testen Sie schließlich Ihre Segmentierung, indem Sie von einem Zone-4-Arbeitsplatz aus einen Portscan auf Zone-2-Adressen durchführen – wenn Sie offene Ports auf M580 oder M1 von Zone 4 aus sehen, sind Ihre Leitungsregeln unvollständig. Schließen Sie jeden offenen Port, bevor Sie die Segmentierung als abgeschlossen erklären.
