OpenCyber Academy
Graduação · Capítulo 25 · Português
Código do curso: OCA-115Capítulo 25: OCA-115-C025

Capítulo 25 — Laboratório I

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

Mapa da aula

Aula 25 publicada. Mapa, exemplo, EX049.

flowchart TD
  N0["25.1 Finalidade e regras"]
  N1["25.2 A tarefa"]
  N2["25.3 Método e reprodutibilidade"]
  N3["25.4 Estrutura da nota"]
  N4["25.6 Rubrica de avaliação"]
  N5["Síntese do capítulo"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5
  N5 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX049"]

Desenho lógico

flowchart LR
  N0["25.1 Finalidade e regras"]
  N1["25.2 A tarefa"]
  N2["25.3 Método e reprodutibilidade"]
  N3["25.4 Estrutura da nota"]
  N4["25.6 Rubrica de avaliação"]
  N5["Síntese do capítulo"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> Q["EX049"]
[25.1 Finalidade e regras]
    |
    v
[25.2 A tarefa]
    |
    v
[25.3 Método e reprodutibilidade]
    |
    v
[25.4 Estrutura da nota]
    |
    v
[25.6 Rubrica de avaliação]
    |
    v
[Síntese do capítulo]
    |
    v
[Exemplo resolvido] --> [Exercício EX049]

Objetivos de aprendizagem e conexão

Depois deste laboratório, você consegue (1) combinar evidências de inventário, de fluxos de rede, de vulnerabilidades e de acessos numa única avaliação de um operador sintético; (2) registrar métodos, versões e saídas de modo que outra pessoa consiga reproduzir os seus resultados; (3) separar constatações, interpretações e recomendações; e (4) avaliar o seu próprio trabalho contra uma rubrica. O laboratório integra os Laboratórios 2, 4, 5 e 7 (Capítulos 3, 7, 9 e 13) e os métodos dos Capítulos 15, 23 e 24. É o primeiro ponto de controle de projeto do curso.

25.1 Finalidade e regras

Este laboratório é uma avaliação contida dos operadores sintéticos de Calder usando apenas os laboratórios offline do livro. As suas regras de engajamento (Capítulo 10, atividade prática) se aplicam: o seu próprio computador, nenhum acesso de rede a sistemas reais, nenhum dado real. A habilidade avaliada não é rodar código — essa é a parte fácil —, e sim reunir evidências num julgamento defensável e documentá-lo de modo que outro estudante consiga reproduzi-lo.

As condições de parada dessas regras também se aplicam aqui: se algum script de laboratório de Calder tentar acessar a rede, pare, registre o hash do script e avise o seu tutor.

25.2 A tarefa

Você é estagiário da County Resilience Partnership. Produza uma nota de avaliação de 1.500 palavras respondendo: "Considerando as evidências disponíveis, quais são as três melhorias de segurança de maior prioridade para os operadores de Calder, e quão confiantes estamos?" Use:

  1. Laboratório 2 (inventário do CVH): dispositivos sem suporte e fora do lugar.
  2. Laboratório 4 (fluxos da CW): violações da política de conduítes.
  3. Laboratório 5 (alertas da CPN): ativos vulneráveis, ordenados por exploração e exposição.
  4. Laboratório 7 (revisão de acessos): contas órfãs, inativas, compartilhadas e tóxicas.

A pergunta pede três prioridades entre quatro operadores, o que obriga à comparação: uma violação de conduíte na CW e uma falha no gateway da CPN precisam ser ordenadas uma contra a outra pela consequência, e não reportadas em listas separadas.

25.3 Método e reprodutibilidade

Registre para cada laboratório: o nome do arquivo e um hash SHA-256 do script que você rodou (python3 -c "import hashlib,sys;print(hashlib.sha256(open(sys.argv[1],'rb').read()).hexdigest())" lab05.py), a versão do Python, a saída exata e qualquer mudança que você tenha feito. A reprodutibilidade é evidência: um leitor que roda o seu script de novo e obtém a mesma saída pode confiar na sua seção de constatações sem precisar confiar em você (Sandve et al., 2013).

Se você mudou a lista de versões do Laboratório 5 para testar o VPN-01 contra outra versão de correção, o hash no seu apêndice precisa ser o desse arquivo editado, com a mudança listada ao lado.

25.4 Estrutura da nota

  1. Resumo — três prioridades, uma frase cada, com a confiança (alta/média/baixa) e o motivo.
  2. Escopo e método — o que foi examinado, como, e o que não foi.
  3. Constatações — só fatos das saídas (por exemplo, "o VPN-01 roda a 9.1; a correção é a 9.3; o alerta declara exploração").
  4. Análise — raciocínio de consequência primeiro (Capítulo 23): quais constatações poderiam levar aos piores desfechos para qual serviço.
  5. Recomendações — cada uma ligada às constatações, com o tipo de controle (Capítulo 24) e o dono.
  6. Limites — tamanho da amostra, dados sintéticos, afirmações não verificadas.
  7. Apêndice — hashes, versões, saídas.

"O VPN-01 roda a 9.1; a correção é a 9.3" pertence às constatações; "então o acesso remoto da CPN é a prioridade 1" pertence à análise, onde o raciocínio sobre a consequência pode ser contestado separadamente.

25.5 Exemplo resolvido: uma prioridade, totalmente argumentada (sintético)

Prioridade 1 — atualizar e redesenhar o acesso remoto da CPN (confiança: alta). Constatação: o VPN-01 (exposto à internet) roda uma versão mais antiga que a correção de uma falha crítica e explorada (Laboratório 5). Constatação: o projeto original põe os usuários remotos diretamente na rede de controle (Capítulo 16). Análise: este é o caminho mais curto da internet até o controle dos alimentadores; a consequência é a perda de controle da distribuição, o desfecho mais grave no modelo de serviço da CPN (Capítulo 21). Recomendação: atualização emergencial para a 9.3 (corretivo/técnico; dono: líder de infraestrutura da CPN, nesta semana) e, depois, terminar o acesso remoto num jump host na DMZ com aprovação por sessão para fornecedores (preventivo/técnico e procedimental; dono: segurança de TO da CPN, no próximo trimestre). Confiança: alta, porque a constatação vem diretamente dos dados de versão e do alerta, e a consequência decorre da arquitetura. Limite: o laboratório não consegue mostrar se a falha já foi explorada; recomenda-se uma avaliação de comprometimento do VPN-01.

25.6 Rubrica de avaliação

Tabela da aula; deslize para ver todas as colunas →

Critério 3 (forte) 2 1 0
Uso de evidências Toda constatação rastreável até uma saída de laboratório Majoritariamente rastreável Algumas afirmações sem sustentação Nenhuma evidência
Priorização Consequência primeiro, comparada entre operadores Fundamentada dentro de cada operador Ordenada só por rótulos de severidade Nenhuma
Recomendações Ligadas às constatações, tipificadas, com dono e data Ligadas, sem donos Genéricas Nenhuma
Limites e confiança Específicos e honestos Genéricos Simbólicos Ausentes
Reprodutibilidade Hashes, versões, saídas Só as saídas Parcial Nenhuma

A rubrica recompensa os mesmos hábitos da prioridade resolvida: toda constatação rastreada até uma saída, consequências comparadas entre operadores, donos e datas nas recomendações, limites honestos e um apêndice reprodutível. Uma nota com 3 em evidências, mas 1 em priorização, listou constatações sem julgá-las.

25.7 Erros comuns e limites

Uma nota que lista os seis fluxos do Laboratório 4, os cinco dispositivos sem suporte e todas as contas do Laboratório 7 cometeu o primeiro erro. Recomendar MFA para a CW sem uma constatação sobre as contas da CW é o segundo. Escrever "a conexão RDP é um intruso" nas constatações é o terceiro. Alegar alta confiança sobre exploração no mundo real a partir de dados sintéticos é o quarto.

Exercícios — capítulo 25

EX049 — Prioridades 2 e 3. Objetivo: completar a avaliação. Entradas: Laboratórios 2, 4, 7. Etapas: escreva as prioridades 2 e 3 no formato da prioridade resolvida acima. Evidência esperada: duas prioridades argumentadas. Rubrica: use a rubrica de avaliação do laboratório; 3 = por exemplo, os fluxos RDP corporativo→controle e controle→internet da CW investigados e fechados (Laboratório 4), e as contas de desligados/tóxicas/de fornecedor (Laboratório 7) ou o isolamento dos dispositivos clínicos sem suporte (Laboratório 2), cada uma com raciocínio de consequência, dono e confiança; notas menores conforme a rubrica.

EX050 — Conferência de reprodutibilidade. Objetivo: verificar o trabalho de um colega. Entradas: o apêndice de um colega (ou o seu, trocado). Etapas: rode cada script de novo, compare hashes e saídas e escreva uma declaração de verificação de 100 palavras. Evidência esperada: a declaração. Rubrica: 3 = hashes e saídas comparados, qualquer discrepância explicada (por exemplo, script editado, versão do Python); 2 = só as saídas; 1 = declaração sem rodar de novo; 0 = nada.

Síntese do capítulo

O Laboratório I transforma exercícios separados num único julgamento. Rastreie toda constatação até uma saída reprodutível, raciocine a partir das consequências entre operadores, ligue as recomendações às constatações e aos donos e declare explicitamente a confiança e os limites.

Respostas comentadas

EX049. Prioridade 2 (confiança: média): investigar e fechar o fluxo RDP corporativo→controle da CW e o fluxo controle→internet (Laboratório 4) — eles contornam a DMZ, e o caminho de consequência leva ao controle do tratamento de água; donos: segurança de TO da CW (investigar esta semana), equipe de rede da CW (regras). Prioridade 3 (confiança: alta): desabilitar a conta do desligado, remover as combinações tóxicas e passar o acesso dos fornecedores para aprovação por sessão (Laboratório 7) — caminhos diretos para ações de controle não autorizadas e fraude em pagamentos; donos: donos dos sistemas, em até uma semana. O isolamento dos dispositivos clínicos sem suporte (Laboratório 2) é uma terceira prioridade alternativa aceitável, com raciocínio de consequência.

EX050. Declaração-modelo: "Reexecutei os Laboratórios 2, 4, 5 e 7 do apêndice com o Python 3.13. Os hashes de lab02, lab04 e lab07 coincidiram; o de lab05 não, porque o autor havia acrescentado uma consulta LEFT JOIN, documentada nas suas notas de mudança. Todas as saídas impressas coincidiram com o apêndice, incluindo a saída da consulta extra. A seção de achados é reprodutível."