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
- EX015 — Desenho — Compare os desenhos entre achados e entre engajamentos. Rubrica: 3 = compromissos de poder estatístico e confundidores; 2 = um desenho; 1 = vaga; 0 = nenhuma.
- EX016 — Ética — Liste cinco controles éticos. Rubrica: 3 = cinco pertinentes; 2 = quatro; 1 = dois; 0 = nenhum.
- EX017 — Remediado — Defina remediado de forma operacional. Rubrica: 3 = critérios verificáveis e quem confere; 2 = parcial; 1 = vaga; 0 = nenhuma.
- EX018 — Vínculo com as ROE — Por que a pesquisa herda as condições de parada da avaliação. Rubrica: 3 = segurança primeiro, qualidade dos dados; 2 = um; 1 = vaga; 0 = nenhuma.
- EX019 — Amostra — Critique o esboço de 100 por braço. Rubrica: 3 = pressupostos, necessidade do piloto, viabilidade; 2 = dois; 1 = um; 0 = nenhum.
- EX020 — Consentimento — Escreva os itens do consentimento dos responsáveis pela remediação. Rubrica: 3 = finalidade, dados, desistência, contatos; 2 = três; 1 = um; 0 = nenhum.
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) →