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

Capítulo 28 — Análise de falhas

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 28 — Análise de falhas

Mapa da aula

Aula 28 publicada. Mapa, exemplo, EX082.

flowchart TD
  N0["28.1 Causas"]
  N1["28.2 Linha do tempo"]
  N2["28.3 Sem culpa"]
  N3["28.4 Deriva ou ataque"]
  N4["28.5 Ações"]
  N5["28.6 Plataforma"]
  N6["28.7 O plantão da plataforma nas revisões"]
  N7["28.8 Affordances da interface"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7
  N7 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX082"]

Desenho lógico

flowchart LR
  N0["28.1 Causas"]
  N1["28.2 Linha do tempo"]
  N2["28.3 Sem culpa"]
  N3["28.4 Deriva ou ataque"]
  N4["28.5 Ações"]
  N5["28.6 Plataforma"]
  N6["28.7 O plantão da plataforma nas revisões"]
  N7["28.8 Affordances da interface"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7 --> Q["EX082"]
[28.1 Causas]
    |
    v
[28.2 Linha do tempo]
    |
    v
[28.3 Sem culpa]
    |
    v
[28.4 Deriva ou ataque]
    |
    v
[28.5 Ações]
    |
    v
[28.6 Plataforma]
    |
    v
[28.7 O plantão da plataforma nas revisões]
    |
    v
[28.8 Affordances da interface]
    |
    v
[Exemplo resolvido] --> [Exercício EX082]

Objetivos de aprendizagem

Você vai (1) classificar causas de ferramenta, de processo e de pessoas; (2) conduzir revisões sem culpa; (3) transformar causas em correções.

28.1 Causas

Má configuração de ferramenta, lacunas de processo, ROE pouco claras, lacunas de habilidade — raramente "pessoas ruins". A análise de falhas no TRB começa separando as causas em má configuração de ferramenta, lacunas de processo, regras de engajamento pouco claras e lacunas de habilidade. A culpa pessoal é a última hipótese, não a primeira. Sam já viu revisões desperdiçarem uma hora discutindo quem clicou em quê enquanto o valor padrão de um menu suspenso continuava convidando ao mesmo erro. Nomear cedo a categoria sistêmica mantém a sala útil. Quando uma causa realmente é negligência individual, o relatório ainda separa isso das correções de plataforma e de processo que teriam tornado o erro mais difícil.

28.2 Linha do tempo

Fatos primeiro. Uma linha do tempo de falha lista fatos observáveis com horários antes que alguém ofereça motivações. Logs, carimbos de horário do chat e eventos do TrackScope vêm primeiro; as interpretações esperam. Sam se recusa a deixar uma revisão começar com uma história sobre quem foi descuidado. Depois que os fatos estão ordenados, as divergências sobre a causa viram divergências sobre a evidência, e não sobre o caráter. A linha do tempo é colada nas notas da revisão, para que leitores posteriores possam reconstruir o argumento. Se um fato não puder ter horário, ele é marcado como incerto em vez de ser arredondado numa narrativa arrumada.

28.3 Sem culpa

Buscar correções sistêmicas. Revisão sem culpa significa que o principal resultado é uma mudança em ferramentas, valores padrão, checklists ou materiais de treinamento, e não uma nota de desempenho. Sam continua orientando indivíduos, mas o ticket da revisão não pode ser encerrado só com orientação, a menos que a caixa de justificativa do modelo esteja preenchida. Equipes que pulam as correções sistêmicas repetem o mesmo incidente com outro nome. A prática vem emprestada da cultura de operações e é adaptada a engajamentos ofensivos, em que a vergonha viaja rápido. As pessoas dizem a verdade mais depressa quando a sala está caçando sistemas quebrados.

28.4 Deriva ou ataque

Decidir com evidência. Alguns resultados confusos parecem ataques quando são deriva de configuração, e o inverso também acontece. A revisão pergunta que evidência distinguiria os dois antes de escolher um rótulo. Sam certa vez perseguiu uma "intrusão" que era uma importação noturna de hosts desatualizados na CMDB. O PulseMap e os tickets de mudança costumam resolver a questão mais rápido do que a intuição. Rotular deriva como ataque desperdiça o tempo do SOC; rotular ataque como deriva atrasa a contenção. A decisão é escrita junto com a evidência que a definiu.

28.5 Ações

Responsável e data para cada causa. Toda causa aceita sai da revisão com um responsável nomeado e uma data de vencimento. Ações sem responsável são desejos. O modelo de Sam bloqueia "a equipe vai melhorar" como responsável; ele quer uma pessoa ou uma fila. As datas são curtas o bastante para importar e longas o bastante para serem reais. Quando uma ação atrasa, o atraso fica visível no mesmo quadro dos achados do engajamento. O encerramento da revisão de falha espera até que cada ação esteja concluída ou explicitamente adiada com assinatura.

28.6 Plataforma

Bugs do TrackScope também geram tickets de engenharia. Se a plataforma convidou ao erro, a engenharia recebe um ticket com a mesma seriedade de um achado. Sam registra esses tickets com a captura de tela do controle confuso e o id da revisão. O plantão da plataforma é convidado para as revisões de falha mesmo quando a sala acha que o erro foi humano, porque a interface muitas vezes induziu o clique. Corrigir o TrackScope uma vez evita uma geração de retreinamentos. Os operadores aprendem a tratar defeitos de ferramenta como resultados de primeira classe de uma revisão. Uma correção silenciosa de bug continua sendo uma correção de bug.

28.7 O plantão da plataforma nas revisões

As revisões de falha convidam o plantão da plataforma mesmo quando o erro parece humano. Muitas vezes, a interface convidou ao erro. Convidar o plantão muda a conversa de "quem errou o disparo" para "o que a tela sugeriu". No mês seguinte, o plantão mediu a queda dos cliques errados no mesmo controle e trouxe o gráfico para a retrospectiva da plataforma. O engenheiro de plantão não teria ouvido falar do padrão só por um ticket de treinamento. Revisões que excluem a equipe da plataforma tendem a produzir apresentações que ninguém coloca em produção. O convite é automático no modelo de agenda da revisão.

28.8 Affordances da interface

Se três analistas cometem o mesmo erro no TrackScope, a UX muda antes de mais treinamento. Sam registra tickets de UX com capturas de tela do controle confuso. Erros idênticos repetidos são um sinal de problema de design. Treinar a quarta pessoa é mais lento e menos confiável do que mudar o controle. Os tickets de UX de Sam sempre incluem uma captura de tela do antes e um estado proposto para o depois, para que os designers não fiquem adivinhando. O limite de três é uma heurística, não mágica; dois podem bastar quando o raio de impacto é alto. As affordances vencem os sermões quando o relógio é curto e a interface fala alto.

28.9 Limite de cinco porquês

As revisões param em cinco porquês ou na primeira correção sistêmica acionável. O teatro interminável de porquês é cortado. Os cinco porquês são uma ferramenta, não um ritual. Sam interrompe a cadeia quando a sala chega a uma correção que alguém pode assumir nesta sprint, mesmo que seja no terceiro porquê. O questionamento interminável vira um teatro que esgota as pessoas sem entregar mudança. O facilitador fica atento à primeira resposta sistêmica acionável e estaciona a filosofia mais profunda para uma revisão de design separada. Os limites mantêm a análise de falha mais curta do que o incidente que ela estuda.

28.10 Cinco porquês do inventário desatualizado

Os cinco porquês do inventário desatualizado param em "a API da CMDB não tinha campo de versão de schema". Ação: adicionar a versão de schema e um checksum no TrackScope. Treinar o estagiário que importou o arquivo desatualizado não é a ação principal. A sala poderia ter culpado o estagiário que clicou em importar. Em vez disso, o quinto porquê caiu num campo de versão de schema ausente e num checksum que o TrackScope nunca verificava. Essas duas ações de engenharia se tornaram o principal resultado da revisão; o estagiário recebeu uma nota de orientação tranquila como item secundário. Sam mantém essa cena no guia do facilitador porque ela mostra como é a ausência de culpa quando um júnior está no raio de impacto. Sistemas que não conseguem detectar importações desatualizadas vão continuar contratando bodes expiatórios.

28.11 Valor padrão do menu em negar

Um ticket de UX saído de uma revisão de falha mudou o valor padrão de um menu suspenso de "allow" para "deny". Os cliques errados caíram no mês seguinte. Os valores padrão são o destino. O controle parecia idêntico depois da mudança; só a opção padrão mudou. Os cliques errados que atormentavam a seleção de escopo caíram bruscamente no mês seguinte, sem um novo módulo de treinamento. Sam cita esse caso quando alguém argumenta que o trabalho de UX é cosmético. Os valores padrão autorizam ou bloqueiam silenciosamente milhares de cliques futuros. Revisões de falha que nunca tocam nos valores padrão deixam a mesma armadilha armada.

28.12 Capturas de tela de antes e depois

Os tickets de UX exigem uma captura de tela de antes e depois do controle que confundiu as pessoas. Frases como "o menu suspenso é confuso" não sobrevivem à passagem para um designer que não estava na sala. Capturas de tela de antes e depois tornam o pedido concreto e revisável. Sam as guarda com o prefixo ux- no mesmo caminho do cofre usado para a evidência dos engajamentos, para que o controle de acesso continue familiar. Tickets sem o par voltam da triagem. A disciplina também obriga quem reporta a propor um estado mais claro, em vez de apenas reclamar.

28.13 Caminho da evidência de UX

As capturas de tela de UX de antes e depois ficam no mesmo caminho do cofre da evidência dos engajamentos, com o prefixo ux-. Uma pasta extraoficial separada vira uma gaveta de bagunça que ninguém audita. Usar o cofre do engajamento com um prefixo claro mantém coerentes a retenção, as revisões de acesso e as retenções legais. Sam pode apontar uma única árvore ao jurídico quando surgem perguntas sobre o que foi capturado durante uma semana confusa. O prefixo também permite que a automação pule as imagens de UX ao montar os pacotes de evidência destinados ao cliente. Pequenas regras de nomenclatura evitam grandes dores de cabeça na fase de descoberta.

28.14 Caixa de seleção de plataforma ou processo

Os modelos de revisão de falha obrigam uma caixa de seleção "mudança de plataforma ou de processo?". Se nenhuma estiver marcada, a revisão está incompleta. Resultados apenas de treinamento precisam de justificativa explícita. A caixa de seleção é um quebra-molas contra o final preguiçoso em que todos concordam em se esforçar mais. Deixar as duas caixas desmarcadas reprova na validação do modelo que Sam integrou ao TrackScope. Resultados apenas de treinamento são permitidos quando justificados por escrito, por exemplo, uma violação deliberada de política sem lacuna de ferramenta. A maioria das revisões deveria entregar pelo menos uma mudança de plataforma ou de processo. A escolha forçada torna a cultura visível nos dados.

Exemplo resolvido (TRB sintético)

O rastreamento de um falso acerto em produção mostra um feed de inventário desatualizado; Sam registra ações para a plataforma e para a CMDB.

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

A análise de falhas produz correções sistêmicas com responsáveis, inclusive na plataforma.

Continue estudando — capítulo 28 de 40

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