OpenCyber Academy
Mestrado · Capítulo 3 · Português
Código do curso: OCA-180Capítulo 03: OCA-180-C003

Capítulo 3 — Desenho do estudo, ética e reprodutibilidade

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 03 publicada. Mapa, exemplo, EX015.

flowchart TD
  N0["3.1 Opções de desenho"]
  N1["3.2 Ética e autorização"]
  N2["3.3 Plano de reprodutibilidade"]
  N3["3.4 Esboço do tamanho da amostra"]
  N4["3.5 Condições de parada para as avaliações de origem"]
  N5["3.5b Minimização de dados"]
  N6["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6
  N6 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX015"]

Desenho lógico

flowchart LR
  N0["3.1 Opções de desenho"]
  N1["3.2 Ética e autorização"]
  N2["3.3 Plano de reprodutibilidade"]
  N3["3.4 Esboço do tamanho da amostra"]
  N4["3.5 Condições de parada para as avaliações de origem"]
  N5["3.5b Minimização de dados"]
  N6["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> Q["EX015"]
[3.1 Opções de desenho]
    |
    v
[3.2 Ética e autorização]
    |
    v
[3.3 Plano de reprodutibilidade]
    |
    v
[3.4 Esboço do tamanho da amostra]
    |
    v
[3.5 Condições de parada para as avaliações de origem]
    |
    v
[3.5b Minimização de dados]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX015]

Objetivos de aprendizagem

Você vai (1) escolher um desenho de estudo que compare formatos de relato de forma justa; (2) definir regras de inclusão e de ética; (3) planejar a reprodutibilidade desde o primeiro dia; (4) dimensionar a amostra a partir de uma estimativa piloto; e (5) escrever condições de parada para o trabalho de avaliação que gera os achados.

3.1 Opções de desenho

Um desenho entre achados atribui aleatoriamente cada achado sintético ao texto de relatório marcado com ATT&CK ou ao texto apenas narrativo, mantendo fixos a severidade e a classe do ativo. Isso gera muitas unidades e permite a estratificação. Um desenho entre engajamentos alterna os formatos de relatório por semana. É mais simples na operação, mas confunde o formato com o tempo e com a carga da equipe. Prefira o desenho entre achados quando o sistema de tickets puder armazenar uma marca de formato.

No caso de Noah, a marca de formato pode ser armazenada no sistema de tickets da CBM, então a aleatorização entre achados é possível. Manter fixas a severidade e a classe do ativo importa porque, do contrário, os achados marcados poderiam se concentrar em tickets de alta severidade, que são corrigidos mais depressa só por esse motivo.

3.2 Ética e autorização

Todas as avaliações que produzem achados para o estudo são executadas sob autorização por escrito e apenas em segmentos sintéticos. Operadores e responsáveis pela remediação consentem com o uso dos metadados dos tickets na pesquisa. Nenhum dado real de cliente entra na dissertação. Regra de uso dual: os achados descrevem o impacto e as referências de evidência, nunca passos de exploração. Se uma avaliação de treinamento tocar inesperadamente um host de produção, as condições de parada disparam e a pesquisa é pausada junto com a avaliação.

Noah arquiva a autorização e o consentimento dos responsáveis pela remediação antes que o primeiro achado entre no estudo. Os formulários de consentimento declaram a finalidade, os metadados de tickets usados, o direito de desistir e um contato do orientador.

3.3 Plano de reprodutibilidade

Publique o script de aleatorização, os dois modelos de relatório, a definição operacional de remediado e um esquema sintético de exportação de tickets. Fixe a versão do ATT&CK usada nas marcações. Um par deve conseguir regenerar suas tabelas a partir da exportação sintética. Cada item responde a uma pergunta que um examinador pode fazer. O script mostra como os achados foram atribuídos; os modelos mostram o que os responsáveis pela remediação viram; a definição mostra o que contou como remediado; e o esquema permite que outros confiram a exportação. Com a versão do ATT&CK fixada, as marcações escritas no início do estudo mantêm o mesmo significado no fim, mesmo depois de atualizações do framework.

3.4 Esboço do tamanho da amostra

Se a conclusão no formato narrativo for de cerca de 40% em 30 dias, detectar uma alta para 60% exige da ordem de 100 achados por braço para uma comparação aproximada. Trate isso como um esboço de planejamento; refine-o depois da estimativa de variância do piloto. O esboço também alerta sobre a viabilidade. Se as avaliações de treinamento da CBM produzirem só algumas dezenas de achados por mês, chegar a 100 por braço pode levar um período letivo inteiro ou mais. Noah registra isso como risco de cronograma na proposta. O piloto do Capítulo 5 serve para melhorar a estimativa, não para responder à pergunta.

3.5 Condições de parada para as avaliações de origem

Host fora do escopo, aparecimento de dados pessoais reais ou impacto na disponibilidade de serviços compartilhados — pare, escalone e pause a coleta de dados da pesquisa até a liberação. A pesquisa nunca pressiona os avaliadores a continuar de forma insegura.

"""Evaluate proposed actions against synthetic rules of engagement."""
ROE = {
    "hours": ("09:00", "17:00"),
    "deny_actions": {"denial-of-service", "phishing-staff", "exfiltrate-real-data"},
    "require_approval": {"password-spray-lab", "privilege-escalation-lab"},
    "max_concurrency": 5,
}
proposals = [
    ("service-enum", "10:30", 3, False),
    ("denial-of-service", "10:30", 1, False),
    ("password-spray-lab", "10:30", 2, False),
    ("password-spray-lab", "10:30", 2, True),
    ("service-enum", "18:00", 2, False),
    ("service-enum", "11:00", 20, False),
]

def ok_time(t):
    return ROE["hours"][0] <= t <= ROE["hours"][1]

for action, when, conc, approved in proposals:
    reasons=[]
    if action in ROE["deny_actions"]: reasons.append("deny-action")
    if action in ROE["require_approval"] and not approved: reasons.append("needs-approval")
    if not ok_time(when): reasons.append("outside-hours")
    if conc > ROE["max_concurrency"]: reasons.append("concurrency")
    print(f"action={action:20} when={when} conc={conc:2} approved={approved} -> {'ALLOW' if not reasons else 'DENY'} {','.join(reasons) or '-'}")

Saída esperada:

action=service-enum         when=10:30 conc= 3 approved=False -> ALLOW -
action=denial-of-service    when=10:30 conc= 1 approved=False -> DENY deny-action
action=password-spray-lab   when=10:30 conc= 2 approved=False -> DENY needs-approval
action=password-spray-lab   when=10:30 conc= 2 approved=True -> ALLOW -
action=service-enum         when=18:00 conc= 2 approved=False -> DENY outside-hours
action=service-enum         when=11:00 conc=20 approved=False -> DENY concurrency

O laboratório de ROE mostra a mesma lógica para as ações propostas: a enumeração de serviços dentro do horário de trabalho é permitida; a negação de serviço é negada; um password spray de laboratório é negado até ser aprovado; trabalhar às 18:00 ou com concorrência 20 é negado. Achados produzidos por trabalho fora dessas regras nunca entram nos dados do estudo.

3.5b Minimização de dados

As exportações de tickets para a pesquisa devem remover nomes sempre que possível, manter IDs de papel e excluir texto livre que possa conter credenciais. Guarde as exportações criptografadas em repouso no drive da universidade, com acesso restrito a Noah e aos orientadores. A retenção termina no congelamento do arquivo da dissertação mais um ano, salvo se a ética exigir exclusão antes. A exportação de Noah remove os nomes dos responsáveis pela remediação e os campos de texto livre. Os IDs de papel mantêm a análise possível sem nomear pessoas: Noah ainda consegue conferir que os redatores não avaliaram os próprios achados. O texto livre é excluído porque os responsáveis pela remediação às vezes colam trechos de configuração ou senhas nos comentários dos tickets. A regra de retenção está escrita na submissão ao comitê de ética e no plano de gestão de dados, para que a data de exclusão seja conferida, e não lembrada.

3.6 Exemplo resolvido (caso sintético da CBM)

Noah escolhe a aleatorização entre achados na VLAN 40 sintética da CBM. A autorização e o consentimento dos responsáveis pela remediação estão arquivados. O padrão do laboratório de ROE — negar ações inseguras, exigir aprovação para laboratórios sensíveis, fazer cumprir o horário — é espelhado nos runbooks de avaliação, para que os dados do estudo só se acumulem a partir de trabalho bem governado. A VLAN 40 é um segmento sintético de treinamento, então nenhum dado de cliente está envolvido. Os runbooks fazem com que uma ação negada ou não aprovada seja interrompida antes de produzir um achado, e os dados da pesquisa venham apenas de trabalho que a autorização permite. O desenho, a autorização e o consentimento são arquivados com o orientador antes do início da coleta.

3.7 Erros e limites

Três erros são comuns: aleatorizar depois de ver os resultados; usar segmentos de clientes reais; e não ter definição de remediado. Cada erro custa caro para corrigir depois. Aleatorizar depois de ver os resultados permite ao pesquisador conduzir os achados para o braço que convém à hipótese, o que destrói a comparação. Segmentos de clientes reais expõem dados reais e rompem a autorização. Sem uma definição de remediado, cada ticket é julgado de um jeito, e a medida primária perde o sentido. Verifique os três pontos no desenho antes de a coleta começar. O desenho de Noah trata de cada um por escrito.

Exercícios

Síntese

As decisões de desenho, ética e reprodutibilidade são tomadas antes que os tickets se acumulem — não são reflexões tardias.

Continue estudando — capítulo 03 de 08

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

Respostas comentadas

EX015. Entre achados: mais poder estatístico, exige a marca de formato. Entre engajamentos: mais simples, com confundidores temporais.

EX016. Autorização; dados sintéticos; consentimento; nenhum texto de exploração; condições de parada.

EX017. Fechado com evidência de verificação anexada e não reaberto em até 30 dias; conferido por um avaliador cego à hipótese.

EX018. Segurança primeiro; dados vindos de um trabalho que continuou de forma insegura estariam contaminados e seriam antiéticos.

EX019. Pressupõe 40%→60%; precisa da variância do piloto; pode ser pesado para um período letivo — divida a coleta em fases.

EX020. Finalidade; metadados de tickets usados; desistência voluntária; contato do orientador.