performing-scada-hmi-security-assessment
Ensina seu agente de IA a proteger aplicações contra ataques e desenhar interfaces bonitas e fáceis de usar.
O que ela faz
Esta ferramenta verifica a segurança de sistemas de interface homem-máquina (HMI) usados em controle industrial (SCADA/DCS). Ela procura por fraquezas em como os usuários se autenticam, como os sistemas se comunicam e em interfaces web.
Quando usar
- ✓Ao verificar a segurança de interfaces HMI em sistemas de controle industrial.
- ✓Ao testar interfaces web de HMI para vulnerabilidades comuns.
- ✓Ao auditar como os usuários fazem login e acessam o sistema HMI.
Exemplo do que pedir para a IA
“Verifique a segurança da HMI do nosso sistema SCADA, focando na autenticação e comunicação com os PLCs.”
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
A ferramenta simula testes de segurança, verificando senhas, permissões de acesso e a segurança das conexões entre a HMI e os controladores (PLCs). Ela compara os resultados com padrões de segurança como IEC 62443.
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 performing-scada-hmi-security-assessmentOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/performing-scada-hmi-security-assessment/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.
Realizando Avaliação de Segurança de HMI SCADA
Quando Usar
- Ao avaliar a postura de segurança de sistemas HMI em ambientes SCADA/DCS
- Ao avaliar interfaces HMI baseadas na web quanto a vulnerabilidades web comuns
- Ao auditar autenticação, autorização e gerenciamento de sessão de HMI
- Ao testar a segurança da comunicação entre HMIs e PLCs/RTUs
- Ao se preparar para avaliações de conformidade IEC 62443 ou NERC CIP
Não use para testar HMIs em produção ativa sem uma janela de manutenção e plano de reversão, para análise de protocolo em nível de PLC (veja performing-s7comm-protocol-security-analysis) ou para testes gerais de aplicações web em sistemas não-OT.
Pré-requisitos
- Inventário do sistema HMI com detalhes de fornecedor, versão e configuração de rede
- Ambiente de laboratório ou de teste espelhando a configuração de HMI de produção (preferencial para testes ativos)
- Autorização das operações da planta para testes durante janelas de manutenção
- Documentação dos requisitos de segurança NIST SP 800-82 e IEC 62443
- Capacidade de captura de rede no segmento de comunicação HMI-para-PLC
Fluxo de Trabalho
Passo 1: Avaliar a Superfície de Ataque do HMI
#!/usr/bin/env python3
"""Ferramenta de Avaliação de Segurança de HMI SCADA.
Avalia a segurança de HMI nas categorias de autenticação, comunicação,
configuração e interface web, alinhada com os requisitos
IEC 62443 e NIST SP 800-82.
"""
import json
import sys
from datetime import datetime
from typing import Dict, List
try:
import requests
except ImportError:
print("Instale requests: pip install requests")
sys.exit(1)
class HMISecurityAssessment:
"""Realiza avaliação de segurança de sistemas HMI SCADA."""
def __init__(self, hmi_info: dict):
self.hmi_info = hmi_info
self.findings = []
self.checks_run = 0
self.checks_passed = 0
def check_authentication(self):
"""Avalia mecanismos de autenticação de HMI."""
checks = [
{
"id": "AUTH-01",
"name": "Aplicação de complexidade de senha",
"iec62443_ref": "ISA-62443-3-3 SR 1.7",
"description": "HMI deve aplicar requisitos mínimos de complexidade de senha",
"test": "Verificar comprimento mínimo >= 8, regras de complexidade, histórico >= 5",
},
{
"id": "AUTH-02",
"name": "Política de bloqueio de conta",
"iec62443_ref": "ISA-62443-3-3 SR 1.11",
"description": "HMI deve bloquear contas após tentativas de login falhas",
"test": "Verificar bloqueio após 5 tentativas falhas, duração do bloqueio >= 15 min",
},
{
"id": "AUTH-03",
"name": "Credenciais padrão alteradas",
"iec62443_ref": "ISA-62443-3-3 SR 1.5",
"description": "Todas as credenciais padrão do fornecedor devem ser alteradas",
"test": "Tentar login com padrões conhecidos do fornecedor (admin/admin, operator/operator)",
},
{
"id": "AUTH-04",
"name": "Controle de acesso baseado em função",
"iec62443_ref": "ISA-62443-3-3 SR 2.1",
"description": "HMI deve separar funções de operador, engenheiro e administrador",
"test": "Verificar se a função de operador não pode acessar funções de engenharia",
},
{
"id": "AUTH-05",
"name": "Aplicação de timeout de sessão",
"iec62443_ref": "ISA-62443-3-3 SR 1.12",
"description": "Sessões HMI devem expirar após inatividade",
"test": "Verificar timeout de sessão <= 15 minutos para operador, <= 5 para administrador",
},
{
"id": "AUTH-06",
"name": "Autenticação multifator para acesso remoto",
"iec62443_ref": "ISA-62443-3-3 SR 1.13",
"description": "Acesso remoto HMI requer MFA",
"test": "Verificar se MFA é aplicado para todas as conexões HMI não locais",
},
]
print(f"\n--- AVALIAÇÃO DE AUTENTICAÇÃO ---")
for check in checks:
self.checks_run += 1
print(f" [{check['id']}] {check['name']}")
print(f" Ref: {check['iec62443_ref']}")
print(f" Test: {check['test']}")
def check_communication_security(self):
"""Avalia a segurança da comunicação HMI-para-PLC."""
checks = [
{
"id": "COMM-01",
…
Perguntas frequentes
O que é SCADA/HMI?
SCADA é um sistema de controle industrial que monitora e gerencia processos. HMI é a interface gráfica que os operadores usam para interagir com o sistema SCADA.
O que são PLCs?
PLCs (Controladores Lógicos Programáveis) são computadores industriais que controlam máquinas e processos.
Por que a segurança é importante para HMIs?
HMIs controlam processos críticos. Se forem comprometidas, podem causar interrupções na produção, danos a equipamentos ou riscos à segurança.
Detalhes
Descrição original do autor
Perform security assessments of SCADA Human-Machine Interface (HMI) systems to identify vulnerabilities in web-based HMIs, thin-client configurations, authentication mechanisms, and communication channels between HMI and PLCs, aligned with IEC 62443 and NIST SP 800-82 guidelines. '
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #6137
- 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
django-security
Ajuda seu agente a implementar práticas de segurança em aplicações Django. Ele foca em autenticação, autorização e prevenção contra ataques comuns, garantindo um código mais seguro.
affaan-m/ECC
laravel-security
Ajuda seu agente a proteger aplicações Laravel contra ameaças. Implementa práticas de segurança para autenticação, autorização e prevenção de ataques comuns.
affaan-m/ECC
module-regression
Ajuda seu agente a gerenciar mudanças em projetos grandes. Garante que alterações em uma parte do código não quebrem outras partes.
affaan-m/ECC