◇ OpenCyber Academy
Graduação · Capítulo 25 · Português

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.

Capítulo 25 — Laboratório I

Mapa da aula

Aula 25 publicada. Mapa, exemplo, EX073.

flowchart TD
  N0["25.1 Caderno"]
  N1["25.2 Verificação por pares"]
  N2["25.3 Falha plantada"]
  N3["25.4 Tempo limitado"]
  N4["25.5 Sem produção"]
  N5["25.6 Aprovação"]
  N6["25.7 A exclusão do SWIFT que sumiu"]
  N7["25.8 Fixando as versões dos scripts do laboratório"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7
  N7 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX073"]

Desenho lógico

flowchart LR
  N0["25.1 Caderno"]
  N1["25.2 Verificação por pares"]
  N2["25.3 Falha plantada"]
  N3["25.4 Tempo limitado"]
  N4["25.5 Sem produção"]
  N5["25.6 Aprovação"]
  N6["25.7 A exclusão do SWIFT que sumiu"]
  N7["25.8 Fixando as versões dos scripts do laboratório"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7 --> Q["EX073"]
[25.1 Caderno]
    |
    v
[25.2 Verificação por pares]
    |
    v
[25.3 Falha plantada]
    |
    v
[25.4 Tempo limitado]
    |
    v
[25.5 Sem produção]
    |
    v
[25.6 Aprovação]
    |
    v
[25.7 A exclusão do SWIFT que sumiu]
    |
    v
[25.8 Fixando as versões dos scripts do laboratório]
    |
    v
[Exemplo resolvido] --> [Exercício EX073]

Objetivos de aprendizagem

Você vai (1) executar os laboratórios de escopo, Wilson e fluxos sob supervisão; (2) fazer a verificação por pares; (3) recusar evidências ruins.

25.1 Caderno

Saídas de lab_scope, lab_wilson e lab_flows com as iniciais.

O caderno de laboratório é a evidência de que o estudante executou as ferramentas, e não de que leu sobre elas. Cada saída exigida é colada ou anexada com as iniciais do estudante e o horário. As iniciais importam porque capturas de tela compartilhadas circulam. Um caderno sem saídas é reprovado, por mais polido que seja o texto. Os supervisores conferem se os números colados correspondem ao que as versões fixadas dos scripts produzem, e é por isso que os hashes dos scripts aparecem mais adiante no capítulo.

25.2 Verificação por pares

Comparar as classificações de escopo. Depois de executar o lab_scope, os estudantes trocam os cadernos e reclassificam a mesma lista de alvos sem olhar as respostas um do outro. As divergências são discutidas com base no arquivo de escopo escrito, e não na memória. A verificação por pares pega leituras erradas sistemáticas, como tratar a exclusão do SWIFT como opcional, e treina o hábito de ter uma segunda pessoa confirmando as decisões de escopo antes de uma janela real. Uma verificação por pares limpa faz parte dos critérios de aprovação do laboratório. Quando os pares continuam discordando depois de ler o arquivo, o supervisor decide e a linha ambígua é enviada ao autor do escopo como correção de redação.

25.3 Falha plantada

Recusar evidência com hash divergente. Um arquivo de evidência no pacote do laboratório tem um hash que não corresponde à nota que o acompanha. Os estudantes que o arquivam mesmo assim são reprovados nessa estação. A questão é emocional, além de técnica. Recusar uma evidência dá a sensação de desacelerar, e num laboratório cronometrado essa pressão é proposital. A ação correta é parar, registrar a divergência e solicitar uma nova captura. Levar essa recusa para os engajamentos reais é o hábito que a estação existe para construir.

25.4 Tempo limitado

Duas horas, com parada obrigatória. Janelas reais terminam. O laboratório também termina, mesmo que uma estação esteja inacabada. Os estudantes praticam escrever o que concluíram, o que não concluíram e o que fariam em seguida, que é a mesma disciplina que Sam usa quando uma noite de testes fica sem tempo. Estender o laboratório para os estudantes com dificuldade ensinaria a lição errada. O tempo limitado também mantém justas as verificações por pares: todos têm o mesmo relógio. Os supervisores avaliam a nota de passagem com a mesma seriedade das estações concluídas, porque uma lista honesta do trabalho inacabado é o que permite a um colega retomar com segurança na noite seguinte.

25.5 Sem produção

Varrer o TRB em produção reprova no laboratório. O ambiente do laboratório usa endereços de faixas de documentação e dados sintéticos. Qualquer tentativa de apontar ferramentas para sistemas reais do TRB, mesmo por entusiasmo, é reprovação automática e uma conversa com o supervisor. A regra protege o banco e o estudante. A autorização para o laboratório é autorização para o laboratório. A curiosidade sobre a produção pertence a um engajamento planejado com escopo assinado, e não a um exercício de sala de aula. A rede do laboratório não tem rota para as faixas do TRB, então a regra também é imposta tecnicamente, e qualquer tentativa bloqueada aparece no log do firewall do laboratório que o supervisor revisa.

25.6 Aprovação

O supervisor aprova pela disciplina, não pela novidade. Um laboratório aprovado mostra verificações de escopo cuidadosas, hashing honesto, cadernos completos e respeito às paradas. Técnicas extras sofisticadas que não foram pedidas não aumentam a nota, e podem reduzi-la se violarem uma regra. Os supervisores assinam uma rubrica curta: escopo correto, recusa por hash demonstrada, saídas presentes, nenhum contato com a produção. A novidade é bem-vinda nos capítulos posteriores de pesquisa. O Laboratório I recompensa a disciplina. Um estudante que terminou todas as estações, mas arquivou a evidência divergente, não é aprovado, enquanto um que a recusou e ficou sem tempo numa estação posterior normalmente é.

25.7 A exclusão do SWIFT que sumiu

Entre as falhas plantadas do Laboratório I há um arquivo de escopo com o SWIFT removido das exclusões. Os estudantes que não percebem são reprovados. Sam foi reprovado nessa variante uma vez, quando era estudante, e hoje escreve as exclusões primeiro, todas as vezes. A variante funciona porque os estudantes costumam conferir se as faixas em escopo parecem corretas e esquecem de conferir se as exclusões continuam presentes. O hábito duradouro que Sam tirou dessa reprovação é ler a lista de exclusões antes da lista de inclusões. O laboratório mantém a variante porque a falha é barata numa sala de aula e cara numa janela real.

25.8 Fixando as versões dos scripts do laboratório

Os cadernos de laboratório incluem os hashes dos scripts usados. A divergência de versões é uma desculpa comum que Sam elimina fixando os hashes. Sem hashes, um estudante cujos números diferem do gabarito pode alegar que executou outra versão do script, e o supervisor não consegue verificar com facilidade. Com hashes, o caderno mostra exatamente quais bytes foram executados. Fixar versões também protege os estudantes. Se os mantenedores do laboratório mudarem um script no meio do período, a divergência de hash explica um resultado surpreendente, em vez de parecer erro do estudante. A lista de hashes fica no topo do caderno, e a primeira verificação do supervisor é recalcular um hash antes de ler qualquer resultado.

25.9 Rodízio das variantes plantadas

A variante de escopo plantada passa por rodízio para que a notícia não se espalhe entre as turmas. Sam mantém três variantes. Se todas as turmas vissem a mesma linha do SWIFT faltando, a turma da tarde ficaria sabendo no almoço. Três variantes mantêm honesta a verificação por pares: exclusão ausente, exclusão renomeada e exclusão apenas num apêndice. Os estudantes são avisados de que existem variantes, então decorar uma resposta é obviamente inútil. Os facilitadores sorteiam a variante de um envelope lacrado no início de cada turma. As variantes diferem apenas em onde o problema da exclusão se esconde, de modo que todos os estudantes enfrentam a mesma habilidade sob um disfarce diferente e as notas continuam comparáveis.

25.10 Exclusões pelo id do ativo

A variante B do Laboratório I esconde uma exclusão renomeando o SWIFT para "pay-gw-01". Os estudantes que só buscam a string "SWIFT" são reprovados. Sam ensina a exclusão pelo id do ativo, não pelo nome comercial. Inventários reais renomeiam as coisas. Um gateway que a equipe chama de SWIFT pode aparecer no registro de ativos com um hostname. Conferir as exclusões pelos nomes que as pessoas usam na conversa deixa essas linhas passarem. A variante renomeada do laboratório torna esse modo de falha pessoal. Os estudantes que passam por ela saem com o hábito de casar identificadores de ativos, e não slogans.

25.11 Exclusões escondidas em apêndices

A variante C usa uma exclusão listada apenas numa tabela de apêndice. Os estudantes que pulam os apêndices são reprovados. Sam adora a disciplina com apêndices. Documentos de escopo enterram linhas importantes em apêndices com mais frequência do que qualquer um admite. A variante C é um pouco cruel e muito realista. A correção é uma ordem de leitura: folha de rosto, apêndice de exclusões e, depois, faixas de inclusão. Os estudantes que adotam essa ordem deixam de ser reprovados na C e deixam de perder exclusões em regras de engajamento reais. A variante do apêndice também ensina que a estrutura de um documento de escopo faz parte do seu significado; uma tabela no fim pode ter tanta autoridade quanto a folha de rosto.

25.12 Lembretes plastificados de ids de ativos

As exclusões por id de ativo estão impressas no cartão plastificado da bancada do laboratório. O cartão lista os três identificadores que precisam aparecer em toda verificação de escopo do banco fictício do laboratório. É um apoio para o hábito, não um substituto para a leitura do arquivo de escopo. Os estudantes podem usá-lo durante o Laboratório I e espera-se que trabalhem sem ele nos laboratórios seguintes. A plastificação sobrevive a café derramado, um risco de laboratório mais comum do que os instrutores admitem. Os estudantes registram no caderno se usaram o cartão, o que permite aos supervisores ver quem está pronto para dispensar o apoio.

25.13 Invalidando cartões plastificados antigos

Os cartões plastificados têm versão; os antigos são furados para marcar que estão invalidados. Um cartão desatualizado é pior do que nenhum cartão, porque os estudantes confiam nele. Quando os identificadores de ativos mudam, novos cartões são emitidos e os antigos são furados para que não possam ser reutilizados por descuido. O número de versão do cartão corresponde à versão do pacote do laboratório. Os facilitadores conferem essa correspondência antes de cada turma, como parte da abertura da sala. Os cartões invalidados vão para uma caixa na mesa do facilitador, que serve também como um histórico rápido de quantas vezes os identificadores do laboratório mudaram.

25.14 Mostrando um caderno reprovado de verdade

As instruções iniciais do Laboratório I mostram um caderno reprovado de um ano anterior (com permissão) em que o hashing foi pulado. Ver uma reprovação real convence mais do que um item da rubrica. Sam agradece ao ex-aluno que permitiu o compartilhamento anonimizado. A permissão e a anonimização são obrigatórias; o que importa é o hash ausente, não a pessoa. Os estudantes que veem a reprovação fazem perguntas melhores sobre os próprios cadernos. Os itens da rubrica descrevem o padrão. Uma falha real faz o padrão ser sentido. Sempre que possível, cada nova turma vê uma reprovação anonimizada diferente, para que o exemplo não vire uma história conhecida que todos ignoram.

Exemplo resolvido (TRB sintético)

Sam recusa a evidência ruim plantada e pega um colega marcando o SWIFT como em escopo.

Caso sintético — Riverstone Transit Bank (TRB). O banco, Sam Ito, TrackScope/FindingsDesk/PulseMap e todos os números são inventados para fins didáticos.

Erros e limites

Este livro não concede nenhuma autoridade para testar bancos ou sistemas de pagamento reais. Os laboratórios usam apenas endereços de faixas de documentação e dados sintéticos; código de exploit nunca é fornecido.

Exercícios

Síntese

O Laboratório I avalia a disciplina de autorização e a integridade da evidência.

Continue estudando — capítulo 25 de 40

← Capítulo 24 (rascunho) · Índice de capítulos do curso · Capítulo 26 (rascunho) →