◇ OpenCyber Academy
Curso rápido · Capítulo 3 · Português

Capítulo 3 — Reconhecer e relatar problemas

Ensino gratuito e aberto para quem deseja proteger pessoas e tecnologias. Não é preciso criar uma conta para estudar ou consultar as respostas.

Capítulo 3 — Reconhecer e relatar problemas

Mapa da aula

Aula 03 publicada. Mapa, exemplo, EX027.

flowchart TD
  N0["3.1 Primeiro, o normal"]
  N1["3.2 Ler o laboratório"]
  N2["3.3 Dar nome ao que você viu"]
  N3["3.4 Outros sinais de alerta"]
  N4["3.5 Relatar"]
  N5["3.6 A segurança física vem primeiro"]
  N6["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6
  N6 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX027"]

Desenho lógico

flowchart LR
  N0["3.1 Primeiro, o normal"]
  N1["3.2 Ler o laboratório"]
  N2["3.3 Dar nome ao que você viu"]
  N3["3.4 Outros sinais de alerta"]
  N4["3.5 Relatar"]
  N5["3.6 A segurança física vem primeiro"]
  N6["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> Q["EX027"]
[3.1 Primeiro, o normal]
    |
    v
[3.2 Ler o laboratório]
    |
    v
[3.3 Dar nome ao que você viu]
    |
    v
[3.4 Outros sinais de alerta]
    |
    v
[3.5 Relatar]
    |
    v
[3.6 A segurança física vem primeiro]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX027]

Objetivos de aprendizagem

Você vai (1) descrever o comportamento normal na Elmstead; (2) identificar um comando que não se encaixa na agenda; (3) descrever o que viu usando os nomes do ATT&CK for ICS; e (4) escrever um relato curto e factual.

3.1 Primeiro, o normal

O controlador da usina segue uma agenda diária: descarregar no pico da manhã, carregar ao meio-dia, quando a produção solar é alta, e descarregar de novo à noite. Os comandos vêm do SC-1. Os logins acontecem durante trabalho planejado. Escrever isso é o que permite a qualquer pessoa reconhecer o anormal.

"""Lab 3: compare synthetic battery charge commands with the agreed daily schedule."""
schedule = {"06": "discharge", "12": "charge", "18": "discharge"}
commands = [("06", "discharge", "site-controller"), ("12", "charge", "site-controller"),
            ("14", "discharge", "remote-portal"), ("18", "discharge", "site-controller")]
for hour, cmd, src in commands:
    ok = schedule.get(hour) == cmd and src == "site-controller"
    print(f"{hour}:00 {cmd:9} from {src:15} {'expected' if ok else 'UNEXPECTED - report'}")

Execute com python3 lab_soc.py. Saída verificada:

06:00 discharge from site-controller expected
12:00 charge    from site-controller expected
14:00 discharge from remote-portal   UNEXPECTED - report
18:00 discharge from site-controller expected

Um normal escrito não precisa ser detalhado para ser útil. O Laboratório 3 trabalha com três horários agendados e uma única origem esperada, e isso já basta para fazer um comando estranho se destacar. À medida que a usina muda, por exemplo quando o operador da rede pede um padrão diferente para a noite, a agenda escrita precisa ser atualizada, ou o laboratório vai sinalizar comandos legítimos.

3.2 Ler o laboratório

Três comandos correspondem à agenda e vêm do SC-1. Às 14:00, chegou um comando de descarga vindo do portal remoto do fornecedor: hora errada e origem errada. Pode ser um teste do fornecedor, um engano ou o mau uso de credenciais roubadas; não dá para saber só por essa linha, e você não precisa saber. Você o relata.

O laboratório também tem um ponto cego: qualquer comando num horário ausente da agenda é sinalizado, mesmo quando vem do SC-1. Isso é aceitável para uma lista curta, porque um alarme falso custa pouco, mas uma usina real precisaria de uma agenda mais completa. O que importa aqui é que Jonah relata fatos sem adivinhar qual explicação é a verdadeira.

3.3 Dar nome ao que você viu

O MITRE ATT&CK for ICS oferece nomes compartilhados: T0836 Modify Parameter para configurações alteradas, T0886 Remote Services para o mau uso de rotas de acesso remoto, T0831 Manipulation of Control para comandos não autorizados ao processo. Use-os para descrever observações, não para acusar.

Para o evento das 14:00 na Elmstead, o próprio comando se encaixa em Manipulation of Control, e a sua rota pelo portal do fornecedor se encaixa em Remote Services. Nenhum dos rótulos diz quem fez nem por quê. Eles simplesmente permitem que a engenheira, o fornecedor e qualquer pessoa que leia o relato depois entendam que tipo de comportamento foi visto, em palavras que significam a mesma coisa para todos.

3.4 Outros sinais de alerta

Temperaturas das baterias subindo sem carga; configurações de inversores alteradas sem chamado; dispositivos novos na rede; telas discordando dos medidores locais; contas entrando em horários estranhos; alarmes silenciados.

Nenhum desses sinais prova um ataque; muitos vêm de sensores com defeito, manutenção apressada ou uma mudança esquecida. O valor deles está em que cada um difere do normal escrito e pode ser verificado. Um estagiário que perceba um deles deve anotar quando e onde o viu, guardar qualquer captura de tela ou linha de registro e passá-lo à pessoa de plantão, em vez de investigar sozinho.

3.5 Relatar

Avise imediatamente a engenheira da usina ou a pessoa de plantão. Diga o quê, onde, quando, o estado atual e o que você fez. Guarde as evidências: capturas de tela, linhas de registro, horários. Não altere configurações, não reinicie dispositivos nem contate o fornecedor por conta própria, a menos que peçam.

Uma mensagem curta enviada depressa é melhor do que uma completa enviada tarde. O relato de Jonah sobre o comando das 14:00 cabe em cinco frases e ainda assim dá à engenheira o que ela precisa para decidir. Os horários devem incluir o fuso horário ou dizer que são a hora local da usina, porque os registros do portal e os da usina podem não usar o mesmo relógio.

3.6 A segurança física vem primeiro

Se uma bateria estiver superaquecendo, siga primeiro o procedimento de incêndio e segurança da usina; as perguntas de segurança da informação esperam.

Na Elmstead, isso significa dar o alarme, manter distância do invólucro da bateria e seguir os passos de evacuação e incêndio do cartão da usina. A pessoa de plantão pode decidir depois se o superaquecimento teve uma causa de segurança cibernética. Evidências perdidas enquanto as pessoas são mantidas em segurança são um preço aceitável; uma pessoa ferida enquanto salvava um arquivo de registro não é. A equipe de segurança física nunca deve esperar por uma resposta de segurança cibernética.

Exemplo resolvido (Elmstead sintética)

Jonah relata: "Hoje às 14:00, o BESS recebeu um comando de descarga do portal remoto do fornecedor, fora da agenda (a agenda diz carregar das 12:00 às 18:00). A bateria está descarregando agora. Não alterei nada. Exportação do registro salva." A engenheira liga para o fornecedor, que não tem registro de nenhuma sessão; a conta do portal é desabilitada e a sua senha redefinida, com MFA obrigatório.

Caso sintético — Elmstead. O comando e a resposta são inventados.

Erros e limites

A maioria dos eventos inesperados é engano ou falha; relate-os mesmo assim. Os registros vindos de nuvens podem chegar atrasados ou com fusos horários diferentes.

Exercícios

Síntese

Escreva o normal, perceba o que não se encaixa, descreva-o com clareza usando nomes compartilhados e relate-o sem tocar em nada.

Continue estudando — capítulo 03 de 04

← Capítulo 02 · Índice de capítulos do curso · Capítulo 04 →

Siga para a próxima lição escrita.