Aprendizado de máquinas aplicado à segurança cibernética de plantas industriais
[CLASS 2014] Palestra Técnica - Silvio Prestes e Daniel Guilize
1. #class2014
Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
Daniel Guillize - daniel@guillize.com
Silvio B. Prestes - silvio.b.prestes@gmail.com
2. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Daniel Guillize
– Mestrando em Engenharia de Computação (Área de Concentração: Eng. de
Software) pelo Instituto de Pesquisas Tecnológicas – IPT com formação em
Engenharia Eletrônica. Possui mais de 20 anos de experiência em automação
na área de Energia. Tem trabalhado no desenvolvimento de sistemas SCADA e
controladores para as maiores empresas do Brasil. Atualmente é consultor e
desenvolvedor de soluções para integração entre sistemas SCADA e
corporativos.
• Silvio Bonete Prestes
– Mestrando em Engenharia de Computação (Área de Concentração: Eng. de
Software) pelo Instituto de Pesquisas Tecnológicas – IPT. Formação em
Informática e com especialização em “Qualidade do Desenvolvimento de
Software” e “Gestão Empresarial” (MBA) pela FIA.
– Contando com mais de 20 anos de experiência no mercado de automação
bancária atuando em vários projetos nacionais e internacionais.
2
3. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Agenda
– Introdução
–Objetivo
– Conceitos
– Prática
– Conclusão
3
4. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Introdução
– Sistemas industriais, no passado, estavam em ambientes
isolados (HW e SW proprietários) que limitavam sua
exposição e possível vulnerabilidade, porém hoje em dia esses
sistemas estão interconectados e expostos a várias
possibilidades de ataques e os aspectos de segurança
começaram a ter uma importância crítica devido a essa
integração com os sistemas de TI.
– Devido ao isolamento a que foram submetidos durante anos,
os sistemas de automação industrial sempre priorizaram o
desempenho e disponibilidade em detrimento da segurança
que foi implementada, mas não com os mesmos níveis de
exigência atuais.
4
5. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Objetivos
– Apresentar e utilizar o método ATAM para a avaliação
dos sistemas SCADA, demonstrando que sua aplicação
isolada, ou seja, mesmo que sem se apoiar numa
norma de segurança como a ISA 99, pode também
identificar pontos falhos na implementação dos
requisitos de segurança do sistema.
– Sugerir melhorias arquiteturais que atendam os
requisitos de segurança, para aumentar a aderência às
normas ANSI/ISA-99/2007.
5
6. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Conceitos
– Importância da segurança nos Sistemas de
Automação Industrial
• as práticas de segurança nessa área são, geralmente,
deixadas em segundo plano, pois os sistemas
normalmente utilizam como única tática segura a
limitação de exposição física e digital.
– A necessidade de integração dos dados industriais
pelos processos de negócio exigem novas técnicas
e métodos que abordem a segurança devido a
criticidade desses sistemas e aos riscos
potencialmente devastadores.
6
7. • Conceitos: Diferenças entre sistemas de TI e
industriais (ICS- Industrial Control Systems)
Purdue Enterprise Reference Architecture
(PERA). Adotado pela ANSI/ISA 95. Prioridade do "CIA" segundo a ISA 99 .
7
8. Evolução de Incidentes. Fonte: ICSJWG 2010
Spring Conference.
Figura 08 – Alvo dos Ataques. Fonte:
ICSJWG 2010 Spring Conference
8
9. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• ATAM – Architecture Tradeoff Analysis Method
– Método de Análise de compensações arquiteturais
– Composto por 4 fases distintas
0. Preparação
1.Avaliação
2.Avaliação (Continuação)
3.Retorno da análise e resultados
9
10. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
Fase Descrição
Fase 0 Formação das equipes e preparação para aplicação do método
Fase 1 Avaliação
Passo 1 Apresentação do Método
Passo 2 Apresentação do Business Driver
Passo 3 Apresentação da Arquitetura
Passo 4 Identificação dos enfoques arquiteturais
Passo 5 Geração da árvore de atributos
Passo 6 Análise dos enfoques arquiteturais
Fase 2 Avaliação (Continuação).
Passo 7 Brainstorming e priorização de cenários
Passo 8 Análise dos enfoques arquiteturais
Fase 3 Retorno da análise
Passo 9 Apresentação dos resultados
10
11. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• ATAM – FASE 0
– Preparação da equipe
• Líder do time de avaliação
• Principais tomadores de decisões
– Levantamento dos principais direcionadores de
negócio
– Stakeholders
– Agenda e logística dos trabalhos
11
12. • ATAM – FASE 1
– Apresentação do Método ATAM
– Apresentação do Business Driver
– Apresentação da Arquitetura
– Identificação dos enfoques arquiteturais
– Geração da árvore de atributos
– Análise dos enfoques arquiteturais
12
13. • ATAM – FASE 1
– Apresentação do Método ATAM
– Apresentação do Business Driver
– Apresentação da Arquitetura
– Identificação dos enfoques arquiteturais
– Geração da árvore de atributos
– Análise dos enfoques arquiteturais
ATAM
Fase 1
13
14. • ATAM – FASE 2
– Brainstorming e priorização de cenários
– Análise dos enfoques arquiteturais
14
15. • ATAM – FASE 1
– Apresentação do Método ATAM
– Apresentação do Business Driver
– Apresentação da Arquitetura
– Identificação dos enfoques arquiteturais
– Geração da árvore de atributos
– Análise dos enfoques arquiteturais
15
16. • ATAM – FASE 3
– Brainstorming e priorização de cenários
– Análise das abordagens arquiteturais
16
17. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• PRÁTICA: Passo 2: apresentação dos business drivers
– Uma usina hidrelétrica deve sinalizar seu estado de
funcionamento ao órgão ONS durante 24 horas do
seu funcionamento (24x7)
• Todas as decisões sobre ativação ou desativação de
usinas e rotas alternativas de geração e distribuição são
tomadas pelos operadores em Brasília, sede da ONS
(Operador Nacional do Sistema).
– Atender requisitos da norma ISA 99, por exemplo:
• Controle de Acesso (AC - Access Control): controle de
acesso e informação aos dispositivos;
17
18. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• PASSO 2: Apresentação dos Business Drivers:
Requisitos norma ISA 99
– Atender requisitos da norma ISA 99, por exemplo:
• Controle de Acesso (AC - Access Control): controle de acesso e
informação aos dispositivos;
• Controle de Uso (UC - Use Control): controle do uso e informação dos
dispositivos;
• Integridade de Dados (DI - Data Integrity): garantir a integridade dos
dados referentes aos dispositivos e às comunicações entre eles;
• Confidencialidade de Dados (DC - Data Confidentiality): garantir a
confidencialidade dos dados referentes aos dispositivos e as
comunicações entre eles;
18
19. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• PASSO 2: Apresentação dos Business Drivers:
Requisitos norma ISA 99
– Atender requisitos da norma ISA 99, por exemplo:
• Restringir o Fluxo de Dados (RDF - Restrict Data Flow): restringir o
fluxo de dados nos canais de comunicação para protegê-los contra a
publicação de informação de fontes não autorizadas;
• Resposta ao Evento em tempo (TRE - Timely Response to Event):
responder às violações de segurança e automaticamente executar
ações para corrigir os problemas em tempo de acordo com as
necessidades dos sistemas críticos;
• Disponibildade de Recursos (RA - Resource Availability): garantir a
disponibilidade dos recursos de rede e computacionais em caso de
ataques de negação de serviço;
19
20. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Passo 3 – Apresentação da arquitetura do
sistema SCADA
20
21. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Passo 3 – Apresentação da arquitetura do
sistema SCADA
– Componentes do sistema SCADA
21
22. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Passo 4 – Identificação das abordagens
arquiteturais
– A importância da implementação de táticas
Ataque Sistema
Controlando
a Segurança
Detecta
Resiste
Reage ou se
Recupera de ataques
22
23. ATAM: Passo 4 – Identificação das abordagens
arquiteturais
SSeegguurraannççaa
Resistir ao
Ataque
Detectar
Ataque
Recuperar de
um Ataque
Detecção de
Intrusão Restauração
Autenticação de
Usuários
Autorização de
Usuários
Limitar acesso
Limitar exposição
Manter
confidencialidade
de dados
Separação de
Entidades
Trilha de
Auditoria
DDiissppoonniibbiilliiddaaddee
Detecção de
Negação de
Serviço
Verificação de
Integridade de
Mensagens
Detecção de
Atraso de
Mensagens
Identificação de
Usuários
Mudança de
Configurações
padrão
Reagir ao
Ataque
Revogação de
Acesso
Bloqueio do
Sistema
Informar Usuário
Ataque
Sistema:
Detecta,
Resiste,
Reage,
Recupera
23
24. R 1
R 2
ONS
SCADA 1
Ger.
Dados
BBDD
VViissuuaalliizzaaddoorr
GGeerr.. DDaaddooss BBDD
• R 1 - Mensagem chegar ao ONS em 4 seg
• R 2 - Usuário não autorizado
.
..
R n
SCADA 2
VViissuuaalliizzaaddoorr
24
25. • Passo 5 – Árvore de atributos
Atributo de
Qualidade
Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
Refinamento
Requisitos Significativos para a
Arquitetura
(ASR - Architecturally Significant Requirement)
Segurança
Detecção de
Ataques
Todas as mensagens terão o checksum verificado em
100% das ocorrências.
Garantir a Integridade dos Dados referentes aos
dispositivos e nas comunicações entre eles.
Resistência
aos Ataques
Garantia de acesso somente aos usuários autorizados
(prevenção contra invasão).
Identificação e verificação constante dos processos em
execução.
Restringir o Fluxo de Dados nos canais de comunicação
para proteger contra a publicação de informação a
fontes não autorizadas.
25
26. • Passo 5 – Árvore de atributos (Cont.)
Atributo de
Qualidade
Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
Refinamento
Requisitos Significativos para a
Arquitetura
(ASR - Architecturally Significant Requirement)
Desempenho
Controle de
Recursos
Gerenciar taxa de aquisição de dados.
Minimizar o tempo de resposta dos componentes.
Minimizar a latência do sistema operacional.
Gerenciamento
de Recursos
Aumentar da capacidade de memória.
Aumentar a taxa de transferência da rede.
Introdução de concorrência.
Disponibilidade
Detecção de
Falhas
Na falha do servidor principal de supervisão, o servidor
backup tem que assumir todo o tráfego de mensagens e
estações clientes em tempo menor que 5 segundos em 99%
das ocorrências (Heartbeat).
Somados erros de HW e SW, a disponibilidade do sistema
deve ser 99,95% a.a ou superior.
26
27. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Passo 6 – Descrição dos pontos sensíveis
#
Atributo de
Qualidade
Descrição
S1
Desempenho
Tempo de resposta dos módulos.
S2 Latência do sistema operacional.
S3 Capacidade de memória.
S4 Taxa de transferência da rede.
S5
Disponibilidade
Falha de hardware no supervisório
S6 Falha de conexão de rede no supervisório
S7 Falha de software no supervisório
S8
Segurança
Processos em execução
S9 Usuários autorizados
S10 Mensagens Verificadas
27
28. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
R 1
ONS
SCADA 1
R 2 GGeerr.. DDaaddooss BBDD
BBDD
VViissuuaalliizzaaddoorr
Ger.
Dados
• R 1 - Mensagem chegar ao ONS em 4 seg
• R 2 - Usuário não autorizado
.
..
R n
SCADA 2
VViissuuaalliizzaaddoorr
28
29. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Passo 6 – Descrição dos riscos arquiteturais
29
30. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Passo 6 – Descrição dos pontos de tradeoff
# Tradeoff Consequência
T1
Excesso de
monitoração
Sobrecarregar o
sistema (rede,
memória, CPU) com
mensagens de
monitoração.
T2
Vários níveis
de segurança
na rede
Performance afetada,
pois os sinais passariam
a ser verificados por
vários agentes.
30
31. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Passo 6 – Descrição dos pontos de tradeoff
# Tradeoff Consequência
T1 Excesso de monitoração
Sobrecarregar o sistema (rede, memória,
CPU) com mensagens de monitoração.
T2
Vários níveis de segurança
na rede
Performance afetada, pois os sinais
passariam a ser verificados por vários
agentes.
??
?
31
32. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Passo 7 e 8 – Descrição e explicação dos cenários prioritários
Cenário Descrição
C4 -
(Disponibilidade)
Retirada do Servidor Supervisório 1 e verificação se Servidor
Supervisório 2 assume o sistema em tempo menor que 5 segundos.
C6 -
(Disponibilidade)
Retirada da conexão de rede A do Controlador em tempo = 0
segundo (imediato)
C10 - (Desempenho)
Com Carga máxima (100% dos pontos variando), o sistema não pode
perder sinais durante 20 segundos.
C11 - (Desempenho)
Verificação de sinalização na tela do operador nacional (ONS) não
pode ser superior a 4 segundos.
C12 - (Segurança) Tentativa de execução de comando por usuário não autorizado.
C13 - (Segurança) Tentativa de Acesso Externo ao Sistema.
32
33. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• Passo 9 – Apresentação dos resultados
– Requisitos da norma ISA99 comparados com os
requisitos do sistema SCADA
Requisitos Sistema
a b c d e f g h i
Requisitos ISA
a) Autenticidade das entidades S - - - - - - - -
b) Autenticidade e integridade das mensagens - S - - - - - - -
c) Confidencialidade das mensagens / informações /
comunicação
- - S - - - - - -.-
d) Garantia da responsabilidade (não-repúdio) - - - S - - - - -
e) Política de controle de acesso - - - - N - - - -
f) Prevenção de ataques de negação de serviços - - - - - N - - -
g) Manutenção da confiabilidade da plataforma - - - - - - N - -
h) Detecção de adulteração - - - - - - - N -
i) Monitoramento do estado da segurança - - - - - - - - N
33
34. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• CONCLUSÃO: Passo 9 – Apresentação dos resultados
– Como sugestão de melhoria para aumentar a aderência aos
requisitos da norma ISA/99, poderiam ser implementados:
• “h) Detecção de adulteração” (detecting tampering)
• “i) monitoramento do estado de segurança” (monitoring security status)
Requisitos Sistema
a b c d e f g h i
Requisitos ISA
a) Autenticidade das entidades S - - - - - - - -
b) Autenticidade e integridade das mensagens - S - - - - - - -
c) Confidencialidade das mensagens / informações /
comunicação
- - S - - - - - -.-
d) Garantia da responsabilidade (não-repúdio) - - - S - - - - -
e) Política de controle de acesso - - - - N - - - -
f) Prevenção de ataques de negação de serviços - - - - - N - - -
g) Manutenção da confiabilidade da plataforma - - - - - - N - -
h) Detecção de adulteração - - - - - - - N -
i) Monitoramento do estado da segurança - - - - - - - - N
34
35. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• CONCLUSÃO: Passo 9 – Apresentação dos
resultados
– Sugestão de itens para adição a árvore de
atributos
Atributo de
Qualidade
Refinamento ASR
Segurança
Detecção de
Ataques
Detecção de adulteração: Todas as
mensagens terão o checksum verificado em
100% das ocorrências.
Disponibilidade
Condição de
monitoração
Monitorar o estado da segurança:
Verificar o estado da segurança e dos
programas e processos envolvidos
35
36. Segurança em Sistemas Críticos de
Automação aplicando o método ATAM
• CONCLUSÃO: Passo 9 – Apresentação dos
resultados
– Sugestão de itens para adição aos cenários
críticos
Cenário Descrição
C14
Exigir a verificação do operador a cada 30 minutos
dentro do sistema, mesmo que o usuário não faça log
off.
C15
Alteração de assinatura de um processo verdadeiro e
verificação do reconhecimento pelo sistema.
36
37. Obrigado !!!
Daniel Guillize - daniel@guillize.com
Silvio B. Prestes - silvio.b.prestes@gmail.com
Bibliografia:
BASS, Len; CLEMENTS, Paul; KAZMAN, Rick. Software Architecture in
Practice. 2. ed. Boston: Addison Wesley Professional, 2012. 560 p.
ANSI/ISA-99. (2007). Security for Industrial Automation and Control Systems
Part 1 : Terminology, Concepts , and Models. American National Standard.
National Institute for Standards and Technology (NIST) 800-82.
37