OpenCyber Academy
Engenharia · Capítulo 24 · Português
Código do curso: OCA-134Capítulo 24: OCA-134-C024

Capítulo 24 — Segurança ofensiva autorizada e red team: métodos 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 24 publicada. Mapa, exemplo, EX070.

flowchart TD
  N0["24.1 Sequência"]
  N1["24.2 Cartões de método"]
  N2["24.3 Pronto significa artefatos"]
  N3["24.2b Métodos silenciosos vs. ruidosos"]
  N4["24.3b Congelamento de métodos"]
  N5["24.1b Dependências entre métodos"]
  N6["24.4b Revisando um cartão de método"]
  N7["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7
  N7 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX070"]

Desenho lógico

flowchart LR
  N0["24.1 Sequência"]
  N1["24.2 Cartões de método"]
  N2["24.3 Pronto significa artefatos"]
  N3["24.2b Métodos silenciosos vs. ruidosos"]
  N4["24.3b Congelamento de métodos"]
  N5["24.1b Dependências entre métodos"]
  N6["24.4b Revisando um cartão de método"]
  N7["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7 --> Q["EX070"]
[24.1 Sequência]
    |
    v
[24.2 Cartões de método]
    |
    v
[24.3 Pronto significa artefatos]
    |
    v
[24.2b Métodos silenciosos vs. ruidosos]
    |
    v
[24.3b Congelamento de métodos]
    |
    v
[24.1b Dependências entre métodos]
    |
    v
[24.4b Revisando um cartão de método]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX070]

Objetivos de aprendizagem

Você vai (1) encadear pré-engajamento → descoberta → validação → relatório segundo o PTES/SP 800-115; (2) escolher métodos que correspondam à autorização; (3) definir o que é "pronto" para um método sem shell.

24.1 Sequência

O pré-engajamento produz a ROE assinada. A descoberta enumera os ativos em escopo pelos métodos combinados. A validação confirma problemas de configuração com privilégio mínimo. O relatório entrega os achados e os hashes das evidências. Pular o pré-engajamento é o modo como os testes não autorizados acontecem. ROE assinada antes da descoberta é toda a história da segurança numa frase. A validação com privilégio mínimo mantém o engajamento dentro dos papéis concedidos. O relatório com hashes torna os achados verificáveis. A etapa de controle de Sam no TrackScope recusa ações de descoberta até que um hash de ROE seja registrado, e um teste de CI tenta uma descoberta com o hash ausente e espera a negação.

24.2 Cartões de método

Cada cartão de método traz: nome, propósito, privilégio exigido, ruidoso?, condições de parada, artefatos esperados. "Revisão de configuração autenticada" é um cartão; "exploit transformado em arma" não está no baralho deste programa. Privilégio, ruído e condições de parada num só cartão impedem a improvisação sob pressão. Os artefatos dizem aos revisores como é o pronto. Exploits transformados em armas ficam fora do catálogo por política. Sam rejeita um cartão que não consiga nomear sua condição de parada em termos observáveis. Os cartões que sobrevivem à revisão são numerados e congelados durante a janela; os rascunhos ficam numa branch separada do catálogo.

24.3 Pronto significa artefatos

Um método está pronto quando seus artefatos existem: CSV de inventário, trechos de configuração, rascunhos de achados, atualização de cobertura — não quando alguém "sente que terminou".

"""Rebuild a synthetic engagement timeline from event records."""
events = [
    ("09:00", "ROE brief signed", "auth"),
    ("09:15", "scoped host inventory loaded (12 hosts)", "prep"),
    ("10:02", "service enumeration on 10.20.1.0/28", "enum"),
    ("10:45", "finding SYN-001 noted on staging UI", "find"),
    ("11:10", "stop: host 10.20.0.1 probed — out of scope", "stop"),
    ("11:12", "escalated to client contact; confirmed deny-list", "comm"),
    ("13:00", "resume on in-scope hosts only", "auth"),
    ("15:30", "debrief draft shared with client", "report"),
]
# print chronological with phase tags; compute stop latency
print("phase timeline:")
for t, msg, phase in events:
    print(f"  {t} [{phase:6}] {msg}")
t0 = 10*60+45; t1 = 11*60+10
print(f"minutes from SYN-001 note to stop: {t1-t0}")
print(f"stop reason present: yes")
print(f"events={len(events)} phases={len(set(p for _,_,p in events))}")

Saída esperada:

phase timeline:
  09:00 [auth  ] ROE brief signed
  09:15 [prep  ] scoped host inventory loaded (12 hosts)
  10:02 [enum  ] service enumeration on 10.20.1.0/28
  10:45 [find  ] finding SYN-001 noted on staging UI
  11:10 [stop  ] stop: host 10.20.0.1 probed — out of scope
  11:12 [comm  ] escalated to client contact; confirmed deny-list
  13:00 [auth  ] resume on in-scope hosts only
  15:30 [report] debrief draft shared with client
minutes from SYN-001 note to stop: 25
stop reason present: yes
events=8 phases=7

Caso sintético — Riverstone Transit. O laboratório de linha do tempo mostra uma parada às 11:10 e a retomada depois da confirmação — o cartão de método exigia esse caminho.

Sentimentos não sobrevivem a uma passagem de bastão; arquivos, sim. Inventário, trechos, rascunhos e atualizações de cobertura são a lista de verificação. O executor de métodos de Sam marca pronto só quando cada caminho existe e os hashes estão guardados. Conjuntos parciais de artefatos deixam o método em andamento e bloqueiam o próximo método dependente no planejador.

24.4 Erros e limites

Copiar a lista de métodos de outra pessoa sem a autorização correspondente é PTES de culto à carga. Listas de métodos emprestadas ignoram a autorização local e a fragilidade local. Fazer o cartão corresponder à ROE assinada é o verdadeiro trabalho de planejamento. Sam começa pelos verbos da ROE e só então abre o catálogo. Um cartão cuja linha de privilégio excede a ROE é removido antes de a agenda ser publicada, e um cartão ruidoso que consumiria mais de 16% do uplink de uma garagem — o orçamento do exemplo resolvido de física — é vetado na interface da agenda, com essa porcentagem mostrada ao lado do nome do método.

24.2b Métodos silenciosos vs. ruidosos

Métodos silenciosos (leituras autenticadas, exportação de configuração) cabem em janelas diurnas em sistemas compartilhados. Métodos ruidosos (enumeração ampla de serviços) precisam de limites de taxa mais apertados e, muitas vezes, de horários fora de pico. O campo "ruidoso?" do cartão de método comanda a agenda; deixá-lo em branco é o modo como as janelas de despacho da manhã ficam congestionadas. O indicador de ruído comanda o calendário automaticamente quando preenchido. Indicadores em branco são o modo como as janelas de despacho entopem. Sam bloqueia a publicação da agenda enquanto qualquer cartão ainda tiver o campo de ruído em branco. Os cartões são revisados com o contato do cliente antes de a janela ser publicada, porque o cliente sabe quais sistemas compartilhados ficam ocupados de manhã.

24.3b Congelamento de métodos

Durante uma janela de engajamento, acrescentar um novo método em pleno voo exige o mesmo caminho de autorização que uma ampliação de escopo. "Já que estávamos aqui, também tentamos…" é o modo como a ROE deriva. Estacione as ideias no backlog de planejamento do próximo engajamento. Acréscimos em pleno voo são deriva de escopo com uma marca melhor. O caminho de ampliação existe por um motivo e vale também para os métodos. Estacionar as ideias mantém a janela atual auditável. Sam registra as quebras de congelamento como incidentes, mesmo quando o cliente aprova o método depois. Os tickets de incidente de quebras de congelamento incluem o horário, o nome do método e se o tráfego já tinha saído da zona de avaliação.

24.1b Dependências entre métodos

Alguns métodos exigem as saídas de outros (inventário antes da revisão autenticada). Codifique as dependências no plano para que a linha do tempo não agende a revisão no primeiro dia contra uma lista de ativos vazia. O PulseMap pode mostrar ligações de bloqueado-por para as técnicas planejadas. Uma revisão no primeiro dia contra um inventário vazio desperdiça a janela e convida a atalhos. Dependências codificadas fazem o planejador recusar ordens impossíveis. Sam exibe o grafo de dependências no kickoff para que o cliente veja o caminho crítico. Se uma dependência atrasa, o planejador move o método dependente em vez de deixá-lo rodar antes da hora sobre dados parciais.

24.4b Revisando um cartão de método

Antes de um cartão de método entrar no catálogo, um segundo engenheiro o lê como se nunca tivesse visto o método: o propósito está claro, as condições de parada são observáveis, o cartão nomeia a evidência que produz? O primeiro cartão de Sam para o inventário passivo de serviços voltou com uma mudança: a condição de parada "se a rede parecer lenta" virou "se o monitoramento do cliente relatar latência acima do limiar combinado". Um leitor sem contexto encontra condições de parada nebulosas antes que a produção as encontre. Limiares observáveis substituem impressões sobre lentidão. Sam guarda o comentário da revisão ao lado da versão do cartão que o corrigiu.

Exercícios

Síntese

Os métodos são autorizados, descritos em cartões e ficam prontos quando os artefatos existem.

Continue estudando — capítulo 24 de 50

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

Respostas comentadas

EX070. Nome: revisão autenticada de configuração web. Propósito: ler as configurações relevantes para a segurança. Privilégio: papel de aplicação assess-read. Ruído: baixo. Parada: qualquer tentativa de escrita ou host da lista de exclusão. Artefatos: hash da exportação das configurações, rascunhos de achados.

EX071. Ações sem ROE assinada não são autorizadas; é uma falha legal/ética, independentemente da intenção.

EX072. Relatório: o host 10.20.0.1 foi sondado (lista de exclusão), as ações foram paradas, o contato do cliente confirmou, a retomada só ocorreu em hosts em escopo — com os carimbos de tempo.