Segmentazione della rete OT utilizzando zone e condotti ISA-99: guida pratica a Schneider M580 e Bachmann M1

OT Network Segmentation Using ISA-99 Zones and Conduits: Schneider M580 and Bachmann M1 Practical Guide

Il vero problema delle reti OT piatte

La maggior parte degli impianti industriali costruiti prima del 2015 utilizza una rete Ethernet piatta in cui il PLC Schneider Electric Modicon M580, il controllore di automazione Bachmann M1, lo storico SCADA e l’ERP aziendale condividono lo stesso dominio di broadcast Layer 2. In primo luogo, ciò significa che un attacco ransomware che entra attraverso la rete aziendale raggiunge la CPU M580 senza passare da alcun punto di controllo accessi. In secondo luogo, una workstation mal configurata che genera tempeste ARP può saturare la porta Ethernet della CPU M580 BM•P 58•2020 — la porta Ethernet della CPU M580 elabora ARP a livello software con un limite di 500 pacchetti al secondo. In terzo luogo, gli exploit di protocollo che prendono di mira la porta Modbus TCP 502 o EtherNet/IP porta 44818 viaggiano liberamente attraverso la rete piatta. Pertanto, l’architettura a zone e condotti ISA-99 / IEC 62443 non è opzionale — è l’unico framework comprovato che aggiunge protezione a livello di rete senza interrompere la strategia di controllo.

Architettura a zone e condotti ISA-99: definire la struttura

ISA-99 (IEC 62443-3-3) divide la rete industriale in Livelli di Sicurezza (SL) e assegna gli asset alle zone in base alla conseguenza di un compromesso. Prima di tutto, definisci le tue zone prima di modificare qualsiasi configurazione dello switch. In secondo luogo, identifica ogni dispositivo nella rete dell’impianto e assegnalo a una delle quattro zone:

  • Zona 1 — Sicurezza (SIL): Solo PLC di sicurezza. Per la maggior parte degli impianti questo include sistemi ICS Triplex o Triconex TMR. Nessun traffico generico entra in questa zona. Il condotto verso la Zona 2 consente solo Modbus TCP in sola lettura per scopi di visualizzazione SCADA.
  • Zona 2 — Controllo (SL-2): CPU Schneider M580, controllori Bachmann M1, reti I/O, gestione dispositivi di campo. Il traffico EtherNet/IP e Modbus TCP rimane all’interno di questa zona. L’accesso esterno è consentito solo tramite il condotto IDMZ.
  • Zona 3 — Supervisione (SL-1): Server SCADA, storico DCS, postazioni operatore. Questa zona accede alla Zona 2 tramite un condotto definito attraverso un firewall stateful — non una connessione piatta.
  • Zona 4 — Aziendale (SL-0): ERP aziendale, Active Directory, server email. Nessun accesso diretto a Zona 2 o Zona 1. Tutto lo scambio dati avviene solo tramite IDMZ.

Inoltre, la DMZ Industriale (IDMZ) si trova tra la Zona 3 e la Zona 4. L’IDMZ contiene i server di replica dati — OSIsoft PI, Wonderware Historian o gateway OPC DA/UA. Nessun traffico attraversa l’IDMZ da un capo all’altro — sia la Zona 3 che la Zona 4 si connettono ai server IDMZ ma mai direttamente tra loro. Questo è il principio fondamentale di controllo dei confini ISA-99.

Configurazione VLAN e firewall per reti Schneider M580

Il Schneider Modicon M580 utilizza EtherNet/IP sulla porta Ethernet backplane della CPU (serie BMEP58•020) e una porta Ethernet dedicata alla rete I/O per i drop Ethernet RIO. Prima, assegna la porta di gestione CPU alla VLAN 20 (Zona di Controllo) sullo switch gestito. Secondo, assegna tutti i remote I/O (drop RIO BMECRA31210) alla VLAN 21 (sottozona I/O). Terzo, crea una ACL (Access Control List) sullo switch per bloccare tutto il traffico tra VLAN 21 e qualsiasi zona sopra il Livello 2.

Su uno switch gestito Cisco IE4000 o Cisco IE3400, configura il routing inter-VLAN con queste regole firewall:

  • Passo 1: Crea VLAN 20 (Controllo) e VLAN 21 (RIO). Assegna la porta CPU M580 alla modalità accesso VLAN 20. Assegna tutte le porte drop BMECRA31210 alla modalità accesso VLAN 21.
  • Passo 2: Applica ACL sull’SVI VLAN 20: consenti TCP da qualsiasi a 192.168.20.0/24 eq 44818 (EtherNet/IP CIP). Consenti TCP da qualsiasi a 192.168.20.0/24 eq 502 (Modbus TCP). Nega ip da qualsiasi a qualsiasi con log. Questo permette solo i protocolli necessari a raggiungere M580.
  • Passo 3: Blocca tutto l’accesso esterno a VLAN 21 sullo switch Layer 3 — nega ip da qualsiasi a 192.168.21.0/24. Il traffico RIO non deve mai essere accessibile da Zona 3 o Zona 4.
  • Passo 4: Configura il firewall stateful tra Zona 2 e Zona 3 per consentire solo la porta OPC UA 4840 dal server SCADA al gateway OPC UA della Zona 3. Blocca la porta Modbus TCP 502 tra Zona 3 e Zona 2 — SCADA legge il gateway OPC UA, non direttamente M580.
  • Passo 5: Abilita la sicurezza porta su tutte le porte switch M580 e BMECRA — blocca all’indirizzo MAC del trasmettitore. Imposta la modalità violazione sicurezza porta su "restrict" (non "shutdown") per generare un allarme senza interrompere la rete I/O.

Tuttavia, la porta Ethernet CPU M580 non supporta nativamente il tagging VLAN 802.1Q — funziona solo come porta di accesso VLAN. Pertanto, lo switch deve gestire tutto il tagging VLAN. Questo è un vincolo comune nel design di rete M580 che gli ingegneri spesso trascurano quando progettano la segmentazione.

Segmentazione del controllore Bachmann M1 e controllo dei confini OPC UA

I controllori Bachmann M1 utilizzano la propria rete Ethernet MIO (Modular I/O) su un’interfaccia dedicata separata dalla porta di programmazione. Prima, assegna la rete MIO Bachmann M1 alla VLAN 22 — separata dalla VLAN 20 di controllo Schneider M580. Questo previene tempeste di broadcast cross-protocollo. Secondo, Bachmann M1 supporta nativamente la funzionalità server OPC UA nel suo ambiente di programmazione SolutionCenter. Configura il server OPC UA per esporre solo i tag necessari alla Zona 3 — non esporre l’intero namespace variabili M1.

In Bachmann SolutionCenter, imposta la Modalità di Sicurezza OPC UA su "SignAndEncrypt" e la Politica di Sicurezza su "Basic256Sha256." Rifiuta tutte le connessioni anonime — richiedi autenticazione basata su certificato. Questo è conforme ai requisiti IEC 62443-3-3 Livello di Sicurezza 2 per la Zona di Controllo. Inoltre, imposta lo spazio degli indirizzi del server OPC UA M1 per pubblicare solo i tag elencati nella lista tag SCADA approvata — usa la configurazione Bachmann OPC UA NodeManager per inserire nella whitelist specifici nodi variabili. Blocca tutti gli altri nodi a livello server OPC UA, non solo a livello firewall.

  • Passo 1: In Bachmann SolutionCenter, vai alla configurazione del server OPC UA nel modulo "Comunicazione".
  • Passo 2: Imposta Modalità di Sicurezza su "SignAndEncrypt." Imposta Politica di Sicurezza su "Basic256Sha256." Disabilita le politiche "None" e "Sign".
  • Passo 3: Importa il certificato del server SCADA nel deposito certificati attendibili Bachmann M1. Solo i client SCADA con certificato possono connettersi.
  • Passo 4: Abilita la funzione firewall Bachmann M1 — consenti TCP 4840 (OPC UA) solo dall’indirizzo IP del server SCADA 192.168.30.10. Blocca tutte le altre connessioni in ingresso sulla porta OPC UA.
  • Passo 5: Configura il timeout sessione a 30 secondi. Qualsiasi sessione SCADA inattiva per 30 secondi si chiude automaticamente — previene l’accumulo di sessioni inattive nella tabella sessioni M1.
  • Passo 6: Registra tutti gli eventi di connessione OPC UA nel syslog Bachmann M1 — configura l’inoltro syslog al server SIEM nell’IDMZ per il monitoraggio della sicurezza.

Progettazione IDMZ: replica dati senza attraversamento diretto delle zone

L’IDMZ contiene esattamente due tipi di server: il server di replica storico dati e il jump server per accesso remoto. Primo, OSIsoft PI Relay o Honeywell Uniformance PHD operano nell’IDMZ. Lo storico in Zona 3 spinge i dati al relay IDMZ usando la porta TCP 5450 (interfaccia PI-to-PI). Lo storico aziendale in Zona 4 estrae i dati dal relay IDMZ usando la stessa porta. Nessun dato di processo viaggia mai direttamente tra Zona 3 e Zona 4. Secondo, il jump server per accesso remoto nell’IDMZ fornisce accesso RDP per gli ingegneri di manutenzione. Configura il jump server per consentire connessioni RDP solo da endpoint VPN approvati con MFA — mai consentire RDP diretto da Zona 4 a Zona 2 o Zona 1.

Inoltre, applica queste regole firewall tra Zona 4 e IDMZ: consenti TCP 5450 (PI) solo dallo storico Zona 4 al relay IDMZ. Nega tutto il resto del traffico da Zona 4 a IDMZ. Tra IDMZ e Zona 3: consenti TCP 5450 dal relay IDMZ allo storico Zona 3. Consenti RDP (TCP 3389) solo dal jump server IDMZ alle postazioni SCADA Zona 3 — con MFA applicato al gateway jump server.

Conclusione e consigli operativi

La segmentazione a zone e condotti ISA-99 per le reti Schneider M580 e Bachmann M1 è un compito di ingegneria, non un progetto di sicurezza IT. Prima, definisci le tue quattro zone e disegna il diagramma dei condotti prima di toccare qualsiasi switch. Secondo, assegna le reti CPU M580 e MIO M1 a VLAN dedicate con ACL che bloccano tutti i protocolli non necessari. Terzo, applica OPC UA SignAndEncrypt su Bachmann M1 e usa l’autenticazione basata su certificato fin dal primo giorno. Quarto, costruisci l’IDMZ come un vero relay dati — senza percorsi diretti da Zona 3 a Zona 4. Quinto, abilita la sicurezza porta su tutte le porte switch VLAN di controllo per prevenire connessioni di dispositivi non autorizzati. Infine, testa la tua segmentazione tentando una scansione porte da una postazione Zona 4 verso indirizzi Zona 2 — se vedi porte aperte su M580 o M1 da Zona 4, le regole del condotto sono incomplete. Correggi ogni porta aperta prima di dichiarare la segmentazione completa.

Mostra tutto
I post del blog
Mostra tutto
Batch Sequence Control Using DCS Sequential Function Charts: Emerson DeltaV SFC Configuration and Woodward EasyGen 3200 Synchronization Interlock

Controllo Sequenziale di Batch Utilizzando Diagrammi di Funzione Sequenziale DCS: Configurazione Emerson DeltaV SFC e Interblocco di Sincronizzazione Woodward EasyGen 3200

Il controllo batch tramite strutture formali Sequential Function Chart secondo IEC 61131-3 in Emerson DeltaV previene i blocchi delle macchine a stati e semplifica la conformità all’audit ISA-88. Questa guida tratta i principi di progettazione della logica di fase DeltaV SFC, la mappatura dei registri Modbus TCP Woodward EasyGen 3200 per l’interblocco di sincronizzazione del generatore, la progettazione dei percorsi Hold e Abort, e la diagnosi dei quattro schemi di guasto batch SFC più comuni.
Foundation Fieldbus H1: Segment Design and Commissioning

Foundation Fieldbus H1: Progettazione e messa in servizio del segmento

Foundation Fieldbus H1 esegue i blocchi funzionali di controllo all'interno dei dispositivi di campo, mantenendo il controllo anche in caso di interruzione della comunicazione con l’host — un vantaggio fondamentale per i loop SIL-2 e SIL-3. Questa guida copre il calcolo del budget di potenza FF H1, l’analisi della caduta di tensione, la protezione contro la corrente di spunto con soft-start, la procedura di messa in servizio in 5 fasi, la programmazione dei blocchi funzionali e la diagnosi sistematica dei guasti per il malfunzionamento del segmento, le cadute intermittenti dei dispositivi e gli errori di resistenza di terminazione.
PROFINET IO Communication Fault Diagnosis: ABB AC500 CM575-PNIO and Phoenix Contact AXL F DI16 Field Troubleshooting

Diagnosi dei guasti di comunicazione PROFINET IO: risoluzione dei problemi sul campo con ABB AC500 CM575-PNIO e Phoenix Contact AXL F DI16

I guasti di comunicazione PROFINET IO tra ABB AC500 CM575-PNIO e I/O distribuiti Phoenix Contact Axioline F sono una causa comune di fermi macchina non programmati. Questa guida copre i controlli del cavo a livello fisico, la verifica della versione GSDML, la risoluzione dei conflitti di nome dispositivo, la regolazione del watchdog AR e una procedura di isolamento guasti in sei passaggi utilizzando la mappatura dei bit del registro DIAG_STATUS e gli allarmi di diagnosi del canale.