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
- EX027 — Descrever o normal. Descreva o padrão diário normal da bateria da Elmstead. Rubrica: 3 = descarga de manhã, carga ao meio-dia, descarga à noite, a partir do SC-1; 2 = parcial; 1 = vago; 0 = nenhum.
- EX028 — Duas coisas erradas. Que duas coisas tornam inesperado o comando das 14:00? Rubrica: 3 = hora errada em relação à agenda e origem errada (portal); 2 = uma; 1 = vago; 0 = nenhum.
- EX029 — Explicações possíveis. Dê três explicações possíveis para o comando das 14:00. Rubrica: 3 = teste do fornecedor, engano, credenciais roubadas; 2 = duas; 1 = uma; 0 = nenhum.
- EX030 — Variação do laboratório. Se a linha das 14:00 viesse de "site-controller" com "charge", o que o laboratório imprimiria? Rubrica: 3 = linha UNEXPECTED, com o motivo de que a hora 14 não tem item na agenda; 2 = só UNEXPECTED; 1 = expected; 0 = nenhum.
- EX031 — Técnica para comandos. Que técnica do ATT&CK for ICS se encaixa num comando de descarga não autorizado? Rubrica: 3 = T0831 Manipulation of Control; 2 = só o nome; 1 = errada; 0 = nenhum.
- EX032 — Técnica para a rota. Que técnica se encaixa no mau uso do portal do fornecedor como porta de entrada? Rubrica: 3 = T0886 Remote Services; 2 = só o nome; 1 = errada; 0 = nenhum.
- EX033 — Cinco sinais de alerta. Liste cinco sinais de alerta numa usina com baterias. Rubrica: 3 = cinco sinais plausíveis; 2 = quatro; 1 = dois; 0 = nenhum.
- EX034 — Fatos do relato. Que fatos o relato de Jonah precisa conter? Rubrica: 3 = o quê, onde, quando, estado atual, ações tomadas (evidências); 2 = quatro; 1 = dois; 0 = nenhum.
- EX035 — Mãos fora. Por que Jonah não reinicia o SC-1 depois de perceber o comando? Rubrica: 3 = poderia perturbar o processo/a segurança física e destruir evidências; a decisão é da engenheira; 2 = um; 1 = deveria reiniciar; 0 = nenhum.
- EX036 — Superaquecimento primeiro. Um alarme de temperatura de um rack de baterias aparece enquanto Jonah escreve o relato. O que vem primeiro? Rubrica: 3 = procedimento de incêndio/segurança da usina, avisar o plantão; relato depois; 2 = só avisar; 1 = terminar o relato; 0 = nenhum.
- EX037 — Ação com o fornecedor. O que desabilitar a conta do portal e exigir MFA conseguiu? Rubrica: 3 = impediu novos usos de credenciais possivelmente roubadas; logins futuros precisam de segundo fator; 2 = parcial; 1 = vago; 0 = nenhum.
- EX038 — Fusos horários. Por que Jonah deve anotar o fuso horário dos registros da nuvem? Rubrica: 3 = a nuvem pode registrar em UTC; horários desencontrados confundem a sequência; 2 = parcial; 1 = sem motivo; 0 = nenhum.
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.