Segmentação de Rede OT Usando Zonas e Condutos ISA-99: Guia Prático Schneider M580 e Bachmann M1

O Verdadeiro Problema das Redes OT Planas
A maioria das plantas industriais construídas antes de 2015 opera uma rede Ethernet plana onde o Controlador Lógico Programável (CLP) Schneider Electric Modicon M580, o controlador de automação Bachmann M1, o historiador SCADA e o ERP corporativo compartilham o mesmo domínio de broadcast da Camada 2. Primeiro, isso significa que um ataque de ransomware que entra pela rede corporativa alcança a CPU M580 sem passar por nenhum ponto de controle de acesso. Segundo, uma estação de trabalho mal configurada que transmite tempestades ARP pode saturar a porta Ethernet da CPU M580 BM•P 58•2020 — a porta Ethernet da CPU M580 processa ARP em nível de software com um limite de 500 pacotes por segundo. Terceiro, explorações de protocolo que visam a porta Modbus TCP 502 ou EtherNet/IP porta 44818 circulam livremente pela rede plana. Portanto, a arquitetura de zonas e condutos ISA-99 / IEC 62443 não é opcional — é a única estrutura comprovada que adiciona proteção em nível de rede sem interromper a estratégia de controle.
Arquitetura de Zona e Conduto ISA-99: Definindo a Estrutura
ISA-99 (IEC 62443-3-3) divide a rede industrial em Níveis de Segurança (SL) e atribui ativos a zonas com base na consequência de um comprometimento. Primeiro, defina suas zonas antes de mexer em qualquer configuração de switch. Segundo, identifique todos os dispositivos na rede da planta e atribua-os a uma das quatro zonas:
- Zona 1 — Segurança (SIL): Apenas CLPs de segurança. Para a maioria das plantas, isso inclui sistemas ICS Triplex ou Triconex TMR. Nenhum tráfego de uso geral entra nesta zona. O conduto para a Zona 2 permite apenas Modbus TCP em modo somente leitura para fins de exibição SCADA.
- Zona 2 — Controle (SL-2): CPUs Schneider M580, controladores Bachmann M1, redes de E/S, gerenciamento de dispositivos de campo. O tráfego EtherNet/IP e Modbus TCP permanece dentro desta zona. Acesso externo somente através do conduto IDMZ.
- Zona 3 — Supervisão (SL-1): Servidores SCADA, historiador DCS, estações de trabalho dos operadores. Esta zona acessa a Zona 2 via um conduto definido através de um firewall stateful — não uma conexão plana.
- Zona 4 — Empresa (SL-0): ERP corporativo, Active Directory, servidores de e-mail. Zero acesso direto às Zonas 2 ou 1. Toda troca de dados ocorre somente através do IDMZ.
Além disso, a DMZ Industrial (IDMZ) fica entre a Zona 3 e a Zona 4. A IDMZ contém os servidores de replicação de dados — OSIsoft PI, Wonderware Historian ou gateway OPC DA/UA. Nenhum tráfego atravessa a IDMZ de ponta a ponta — tanto a Zona 3 quanto a Zona 4 conectam-se aos servidores IDMZ, mas nunca diretamente entre si. Este é o princípio central de controle de fronteira ISA-99.
Configuração de VLAN e Firewall para Redes Schneider M580
O Schneider Modicon M580 usa EtherNet/IP na porta Ethernet do backplane da CPU (série BMEP58•020) e uma porta Ethernet dedicada para a rede de E/S para conexões Ethernet RIO. Primeiro, atribua a porta de gerenciamento da CPU à VLAN 20 (Zona de Controle) no seu switch gerenciado. Segundo, atribua todas as E/S remotas (conexões BMECRA31210 RIO) à VLAN 21 (subzona de E/S). Terceiro, crie uma ACL (Lista de Controle de Acesso) no switch para bloquear todo o tráfego entre a VLAN 21 e qualquer zona acima do Nível 2.
Em um switch gerenciado Cisco IE4000 ou Cisco IE3400, configure o roteamento inter-VLAN com estas regras de firewall:
- Passo 1: Crie VLAN 20 (Controle) e VLAN 21 (RIO). Atribua a porta da CPU M580 ao modo de acesso VLAN 20. Atribua todas as portas de conexão BMECRA31210 RIO ao modo de acesso VLAN 21.
- Passo 2: Aplique ACL na SVI da VLAN 20: permita TCP qualquer 192.168.20.0/24 eq 44818 (EtherNet/IP CIP). Permita TCP qualquer 192.168.20.0/24 eq 502 (Modbus TCP). Negue ip qualquer qualquer com log. Isso permite apenas os protocolos necessários para alcançar o M580.
- Passo 3: Bloqueie todo acesso externo à VLAN 21 no switch de Camada 3 — negue ip qualquer 192.168.21.0/24. O tráfego RIO nunca deve ser acessível a partir das Zonas 3 ou 4.
- Passo 4: Configure o firewall stateful entre a Zona 2 e a Zona 3 para permitir apenas a porta OPC UA 4840 do servidor SCADA para o gateway OPC UA da Zona 3. Bloqueie a porta Modbus TCP 502 entre a Zona 3 e a Zona 2 — o SCADA lê o gateway OPC UA, não o M580 diretamente.
- Passo 5: Ative a segurança de porta em todas as portas do switch M580 e BMECRA — bloqueie para o endereço MAC do transmissor. Defina o modo de violação da segurança de porta para "restrito" (não "desligar") para gerar um alerta sem derrubar a rede de E/S.
No entanto, a porta Ethernet da CPU M580 não suporta nativamente a marcação VLAN 802.1Q — ela opera apenas como porta de acesso VLAN. Portanto, o switch deve gerenciar toda a marcação VLAN. Esta é uma restrição comum no design de redes M580 que os engenheiros costumam ignorar ao projetar a segmentação.
Segmentação do Controlador Bachmann M1 e Controle de Fronteira OPC UA
Controladores Bachmann M1 usam sua própria rede Ethernet MIO (Modular I/O) em uma interface dedicada separada da porta de programação. Primeiro, atribua a rede MIO do Bachmann M1 à VLAN 22 — separada da VLAN 20 de controle Schneider M580. Isso previne tempestades de broadcast entre protocolos. Segundo, o Bachmann M1 suporta funcionalidade de servidor OPC UA nativamente em seu ambiente de programação SolutionCenter. Configure o servidor OPC UA para expor apenas as tags necessárias para a Zona 3 — não exponha o namespace completo de variáveis do M1.
No Bachmann SolutionCenter, defina o Modo de Segurança OPC UA para "SignAndEncrypt" e a Política de Segurança para "Basic256Sha256." Rejeite todas as conexões anônimas — exija autenticação baseada em certificado. Isso está alinhado com os requisitos do Nível de Segurança 2 da IEC 62443-3-3 para a Zona de Controle. Além disso, configure o espaço de endereçamento do servidor OPC UA do M1 para publicar apenas as tags listadas na lista aprovada de tags SCADA — use a configuração Bachmann OPC UA NodeManager para permitir apenas nós variáveis específicos. Bloqueie todos os outros nós no nível do servidor OPC UA, não apenas no firewall.
- Passo 1: No Bachmann SolutionCenter, navegue até a configuração do Servidor OPC UA no módulo "Comunicação".
- Passo 2: Defina o Modo de Segurança para "SignAndEncrypt." Defina a Política de Segurança para "Basic256Sha256." Desative as políticas "None" e "Sign".
- Passo 3: Importe o certificado do servidor SCADA para o armazenamento de certificados confiáveis do Bachmann M1. Apenas clientes SCADA com certificado podem conectar.
- Passo 4: Ative a função firewall do Bachmann M1 — permita TCP 4840 (OPC UA) somente do endereço IP do servidor SCADA 192.168.30.10. Bloqueie todas as outras conexões de entrada na porta OPC UA.
- Passo 5: Configure o tempo limite da sessão para 30 segundos. Qualquer sessão SCADA inativa por 30 segundos é encerrada automaticamente — evita acúmulo de sessões obsoletas na tabela de sessões do M1.
- Passo 6: Registre todos os eventos de conexão OPC UA no syslog do Bachmann M1 — configure o encaminhamento do syslog para o servidor SIEM na IDMZ para monitoramento de segurança.
Design da IDMZ: Replicação de Dados Sem Cruzamento Direto de Zonas
A IDMZ contém exatamente dois tipos de servidores: o servidor de replicação do historiador de dados e o servidor jump de acesso remoto. Primeiro, o OSIsoft PI Relay ou Honeywell Uniformance PHD opera na IDMZ. O historiador na Zona 3 envia dados para o relay IDMZ usando a porta TCP 5450 (interface PI-to-PI). O historiador corporativo na Zona 4 puxa dados do relay IDMZ usando a mesma porta. Nenhum dado de processo viaja diretamente entre a Zona 3 e a Zona 4. Segundo, o servidor jump de acesso remoto na IDMZ fornece acesso RDP para engenheiros de manutenção. Configure o servidor jump para permitir conexões RDP somente de um endpoint VPN aprovado com MFA — nunca permita RDP direto da Zona 4 para as Zonas 2 ou 1.
Além disso, aplique estas regras de firewall entre a Zona 4 e a IDMZ: permita TCP 5450 (PI) somente do historiador da Zona 4 para o relay IDMZ. Negue todo o outro tráfego da Zona 4 para a IDMZ. Entre a IDMZ e a Zona 3: permita TCP 5450 do relay IDMZ para o historiador da Zona 3. Permita RDP (TCP 3389) do servidor jump IDMZ para as estações SCADA da Zona 3 somente — com MFA aplicada no gateway do servidor jump.
Conclusão e Recomendações de Ação
A segmentação de zonas e condutos ISA-99 para redes Schneider M580 e Bachmann M1 é uma tarefa de engenharia, não um projeto de segurança de TI. Primeiro, defina suas quatro zonas e desenhe o diagrama de condutos antes de mexer em qualquer switch. Segundo, atribua as redes CPU M580 e MIO M1 a VLANs dedicadas com ACLs bloqueando todos os protocolos não necessários. Terceiro, aplique OPC UA SignAndEncrypt no Bachmann M1 e use autenticação baseada em certificado desde o primeiro dia. Quarto, construa a IDMZ como um verdadeiro relay de dados — sem caminhos diretos da Zona 3 para a Zona 4. Quinto, ative a segurança de porta em todas as portas do switch da VLAN de controle para evitar conexões de dispositivos não autorizados. Por fim, teste sua segmentação tentando um scan de portas a partir de uma estação da Zona 4 para endereços da Zona 2 — se você encontrar portas abertas no M580 ou M1 a partir da Zona 4, suas regras de conduto estão incompletas. Corrija todas as portas abertas antes de declarar a segmentação concluída.
