implementing-ics-firewall-with-tofino
Implementa firewalls industriais Tofino para proteger sistemas SCADA. Usa inspeção profunda de pacotes de protocolos OT para controlar o acesso entre zonas ICS.
O que ela faz
Este recurso configura um firewall industrial chamado Tofino para proteger sistemas de controle (como os usados em fábricas) e equipamentos como PLCs. Ele inspeciona o tráfego de rede para garantir que apenas comunicações autorizadas aconteçam, especialmente para protocolos industriais.
Quando usar
- ✓Ao instalar proteção de firewall perto de PLCs ou RTUs.
- ✓Ao precisar verificar o conteúdo de pacotes de protocolos industriais.
- ✓Ao criar limites de segurança entre diferentes partes de uma rede industrial.
Exemplo do que pedir para a IA
“Configure o firewall Tofino para proteger os PLCs na área de controle do reator, permitindo apenas comunicação de engenharia e operacional a partir da estação de trabalho de engenharia e do servidor HMI.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
O firewall Tofino é configurado com regras específicas que entendem os protocolos industriais. Ele analisa os dados que passam e bloqueia qualquer coisa que não esteja de acordo com as regras definidas, garantindo a segurança.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill implementing-ics-firewall-with-tofinoOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/implementing-ics-firewall-with-tofino/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Implementando Firewall ICS com Tofino
Quando Usar
- Ao implantar proteção de firewall em nível de zona diretamente na frente de PLCs ou RTUs críticos
- Ao exigir inspeção profunda de pacotes de protocolos industriais (Modbus, EtherNet/IP, OPC, S7comm)
- Ao implementar limites de zona e conduit da IEC 62443 com aplicação ciente de protocolo
- Ao proteger PLCs legados que não podem ser corrigidos e precisam de controles compensatórios
- Ao segmentar zonas de rede de controle sem interromper as comunicações industriais existentes
Não use para implantação de firewall de TI corporativo, para firewall de perímetro entre TI e OT (use Palo Alto/Fortinet na DMZ), ou para ambientes que usam apenas protocolos baseados em IP sem necessidades de DPI específicas de OT.
Pré-requisitos
- Appliance Tofino Xenon ou appliance virtual Tofino com licença apropriada
- Plataforma de Gerenciamento Central Tofino (CMP) para gerenciamento centralizado de políticas
- Mapa de topologia de rede mostrando a localização dos PLCs/RTUs e os requisitos de comunicação
- Linha de base das comunicações de protocolo OT (códigos de função Modbus, serviços CIP EtherNet/IP)
- Aprovação de gerenciamento de mudanças para implantação em linha entre zonas de rede
Fluxo de Trabalho
Etapa 1: Projetar a Arquitetura de Implantação do Tofino
# Tofino ICS Firewall Deployment Architecture
# Zone-level protection using deep packet inspection
deployment_zones:
zone_1_reactor_control:
tofino_appliance: "TOFINO-XN-001"
deployment_mode: "inline_bridge"
protected_assets:
- name: "PLC-REACTOR-01"
ip: "10.10.1.10"
vendor: "Siemens S7-1500"
protocols: ["S7comm/102", "Profinet"]
- name: "PLC-REACTOR-02"
ip: "10.10.1.11"
vendor: "Siemens S7-1500"
protocols: ["S7comm/102", "Profinet"]
authorized_communications:
- source: "10.10.2.50" # Engineering workstation
dest: "10.10.1.0/24"
protocols: ["S7comm"]
access_type: "engineering"
- source: "10.10.2.10" # HMI server
dest: "10.10.1.0/24"
protocols: ["S7comm"]
access_type: "operational"
zone_2_packaging:
tofino_appliance: "TOFINO-XN-002"
deployment_mode: "inline_bridge"
protected_assets:
- name: "PLC-PACK-01"
ip: "10.10.3.10"
vendor: "Rockwell ControlLogix"
protocols: ["EtherNet-IP/44818", "CIP"]
authorized_communications:
- source: "10.10.2.20" # HMI
dest: "10.10.3.0/24"
protocols: ["EtherNet-IP"]
access_type: "operational"
zone_3_utilities:
tofino_appliance: "TOFINO-XN-003"
deployment_mode: "inline_bridge"
protected_assets:
- name: "RTU-BOILER-01"
ip: "10.10.4.10"
vendor: "Schneider M340"
protocols: ["Modbus-TCP/502"]
authorized_communications:
- source: "10.10.2.30" # SCADA server
dest: "10.10.4.0/24"
protocols: ["Modbus-TCP"]
allowed_function_codes: [1, 2, 3, 4] # Read only from SCADA
Etapa 2: Configurar Regras de Inspeção Profunda de Pacotes
#!/usr/bin/env python3
"""Gerador de Regras de Firewall ICS Tofino.
Gera regras de firewall Tofino com inspeção profunda de pacotes para
protocolos industriais com base na análise da linha de base de comunicação.
"""
import json
import sys
from datetime import datetime
from typing import Dict, List
class TofinoRuleGenerator:
"""Gera regras de DPI de Firewall ICS Tofino."""
def __init__(self):
self.rules = []
self.rule_id = 1000
def add_modbus_rule(self, src: str, dst: str, allowed_funcs: List[int],
allowed_registers: List[dict] = None, description: str = ""):
"""Gera regra de DPI Modbus."""
func_names = {
1: "read_coils", 2: "read_discrete_inputs",
3: "read_holding_registers", 4: "read_input_registers",
5: "write_single_coil", 6: "write_single_register",
15: "write_multiple_coils", 16: "write_multiple_registers",
}
rule = {
"rule_id": self.rule_id,
"protocol": "Modbus-TCP",
"action": "ALLOW",
"source": src,
"destination": dst,
"port": 502,
"dpi_policy": {
"allowed_function_codes": [
{"code": fc, "name": func_names.get(fc, f"FC{fc}")}
for fc in allowed_funcs
],
"blocked_function_codes": [
fc for fc in range(1, 128) if fc not in allowed_funcs
],
},
…
Perguntas frequentes
O que são PLCs e RTUs?
PLCs (Controladores Lógicos Programáveis) e RTUs (Unidades Terminais Remotas) são dispositivos usados para controlar e monitorar processos industriais.
O que é inspeção profunda de pacotes (DPI)?
É uma técnica que permite ao firewall examinar o conteúdo dos pacotes de dados, não apenas o endereço de origem e destino, para entender e controlar protocolos específicos.
Posso usar isso para proteger minha rede de escritório?
Não, este firewall é projetado especificamente para redes industriais e protocolos específicos. Para redes de escritório, outros tipos de firewalls são mais adequados.
Detalhes
Descrição original do autor
Deploys and configures Tofino industrial firewalls (Belden/Hirschmann) to protect SCADA systems and PLCs, using deep packet inspection of OT protocols (Modbus, EtherNet/IP, OPC, S7comm) to enforce access control between ICS zones. Use when deploying zone-level firewall protection in front of PLCs/RTUs, enforcing IEC 62443 zone/conduit boundaries, or adding compensating controls for unpatchable leg
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #5893
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
bun-runtime
Faz seu agente usar o Bun para rodar, organizar e testar código. Ajuda a escolher o Bun em vez de outras ferramentas e a migrar projetos existentes.
affaan-m/ECC
database-migrations
Ajuda seu agente a fazer mudanças seguras em bancos de dados. Ele garante que as alterações possam ser desfeitas e minimiza o tempo de inatividade.
affaan-m/ECC
deployment-patterns
Configura fluxos de implantação e CI/CD, containerização e estratégias de rollback para garantir lançamentos seguros.
affaan-m/ECC