Mapa da aula
Aula 03 publicada. Mapa, exemplo, EX015.
flowchart TD
N0["3.1 Perguntas falseáveis"]
N1["3.2 Pré-registro"]
N2["3.3 Protocolo ético"]
N3["3.4 Linhas de base e tamanho da amostra"]
N4["3.5 Aprovação"]
N5["3.5b Modos de falha da proposta"]
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 Perguntas falseáveis"]
N1["3.2 Pré-registro"]
N2["3.3 Protocolo ético"]
N3["3.4 Linhas de base e tamanho da amostra"]
N4["3.5 Aprovação"]
N5["3.5b Modos de falha da proposta"]
N6["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> Q["EX015"]
[3.1 Perguntas falseáveis]
|
v
[3.2 Pré-registro]
|
v
[3.3 Protocolo ético]
|
v
[3.4 Linhas de base e tamanho da amostra]
|
v
[3.5 Aprovação]
|
v
[3.5b Modos de falha da proposta]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX015]
Objetivos de aprendizagem
Você vai (1) escrever uma pergunta de pesquisa falseável; (2) especificar hipóteses, medidas e análise antes de coletar dados; (3) projetar um protocolo ético para estudos autorizados em laboratório; (4) planejar linhas de base e tamanhos de amostra; e (5) obter a aprovação da orientação e do comitê de ética.
3.1 Perguntas falseáveis
Uma boa pergunta pode estar errada. "Predicados de escopo verificáveis por máquina reduzem as sondagens fora do escopo em comparação com ROE em prosa, nos laboratórios autorizados do NHUSTL, medidas como sondagens por hora de engajamento?" pode falhar. "Como os red teams podem ser melhores?" não pode. A pergunta de Elena nomeia a população (laboratórios autorizados do NHUSTL), a intervenção (verificador de predicados ligado ou desligado) e a medida (sondagens fora do escopo por hora de engajamento). Um resultado sem diferença ainda seria publicável se o estudo tivesse poder estatístico e fosse executado conforme o planejado. Escreva a pergunta de modo que um resultado nulo ainda seja uma resposta clara.
3.2 Pré-registro
Anote: população (engajamentos na faixa do laboratório), intervenção (verificador de predicados ligado/desligado), medida primária (sondagens fora do escopo por hora), medidas secundárias (tempo até a parada, paradas falsas), análise (diferença de taxas com intervalo), exclusões (engajamentos abortados por falha de infraestrutura). Registre tudo antes do estudo principal. Elena registra o seu antes do primeiro engajamento do estudo principal. O arquivo também registra as versões do ATT&CK e do verificador, para que leitores posteriores saibam quais definições valiam. Um par deve conseguir conduzir o estudo principal só com esse arquivo. Guarde-o onde o orientador e o comitê de ética possam encontrá-lo.
3.3 Protocolo ético
Os participantes (operadores estudantes) consentem; os alvos são sintéticos; não há credenciais reais; um apêndice de uso dual explica o que não será publicado. Alinhe-se à ética institucional e à ênfase do NIST SP 800-115 em planejamento cuidadoso.
"""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 disciplina para ações propostas: a negação de serviço é negada; um password spray de laboratório precisa de aprovação; trabalho às 18:00 ou com concorrência 20 é negado. Achados de trabalho fora dessas regras nunca entram nos dados do estudo. Os termos de consentimento declaram o propósito, os dados usados, o direito de desistência e os contatos.
3.4 Linhas de base e tamanho da amostra
Estime a taxa fora do escopo sob ROE em prosa a partir de um piloto. Escolha uma amostra (engajamentos ou horas) capaz de detectar uma redução relevante — por exemplo, de 0,20 para 0,05 sondagem por hora — com uma largura de intervalo planejada. O piloto de Elena sugere uma taxa em prosa perto de 0,18 por hora. Detectar uma queda em direção a 0,05 com um intervalo útil exige da ordem de 20 engajamentos de duas horas por braço, o que é viável ao longo de dois semestres no NHUSTL. Registre o esboço como número de planejamento e refine-o depois da estimativa de variância do piloto.
3.5 Aprovação
O orientador assina a ciência; o comitê de ética, as pessoas; o proprietário do laboratório, os sistemas. Guarde as versões da proposta com datas. Elena registra as três antes do piloto. Uma mudança na proposta depois da aprovação exige uma emenda datada, não um e-mail. Sem as três, o piloto não começa. Guarde as cópias assinadas com o pré-registro e verifique, antes de cada engajamento, se as datas ainda cobrem o trabalho. Uma autorização do laboratório ou uma aprovação ética vencida suspende a pesquisa, assim como a avaliação.
3.5b Modos de falha da proposta
Modos de falha comuns: uma pergunta que só o braço da intervenção pode "vencer" por construção; medidas que punem o relato (os operadores escondem sondagens); uma ética que bloqueia a validação independente. Teste a proposta sob estresse perguntando que resultado faria você abandonar a ideia e se esse resultado é observável. Para Elena, um resultado que levaria a abandonar a ideia é um verificador que não reduz as sondagens fora do escopo depois de corrigidas as paradas falsas. Esse resultado é observável pela medida primária. Uma medida que punisse os operadores por relatar sondagens esconderia justamente os eventos de que o estudo precisa.
3.6 Exemplo resolvido (caso sintético do NHUSTL)
A proposta de Elena: H1 — a verificação de predicados reduz pela metade a taxa de sondagens fora do escopo em relação às ROE em prosa. Medida primária: sondagens negadas ou executadas fora das listas de CIDR/portas/ações por hora de engajamento. O laboratório de ROE mostra as regras deny-action, outside-hours e de concorrência bloqueando propostas inseguras antes que rodem. Meta do estudo principal: 20 engajamentos por braço, após um piloto de 10 por braço. Ética: operadores estudantes, alvos sintéticos, nenhuma publicação de procedimentos de ataque funcionais.
H1 pode falhar: se a taxa com o verificador coincidir com a taxa em prosa dentro do intervalo planejado, a hipótese não é sustentada. O parágrafo de ética é curto o bastante para o orientador citá-lo quando perguntarem o que não será publicado.
3.7 Erros e limites
Três erros são comuns: hipóteses escritas depois de olhar os dados; pilotos que usam sistemas reais de clientes; e propostas sem plano de condições de parada. Cada erro prejudica a proposta. Hipóteses escritas depois de olhar os dados não podem ser falseadas com honestidade. Pilotos em sistemas reais de clientes violam a autorização e expõem dados reais. Propostas sem condições de parada deixam os operadores sem uma pausa ensaiada. Verifique os três pontos na proposta antes de buscar aprovação. A proposta de Elena trata cada um por escrito antes que ela colete as assinaturas, para que os examinadores vejam que os controles foram planejados.
Exercícios
- EX015 — Pergunta. Reescreva um objetivo vago como pergunta falseável. Rubrica: 3 = população, intervenção, medida; 2 = duas; 1 = uma; 0 = nenhuma.
- EX016 — Pré-registro. Liste oito campos de pré-registro. Rubrica: 3 = oito adequados; 2 = seis; 1 = três; 0 = nenhum.
- EX017 — Laboratório de ROE. Explique duas linhas DENY. Rubrica: 3 = ambas com as regras; 2 = uma; 1 = vago; 0 = errado.
- EX018 — Ética. Liste quatro controles éticos para o estudo de Elena. Rubrica: 3 = quatro; 2 = três; 1 = um; 0 = nenhum.
- EX019 — Amostra. Argumente a favor de 20 engajamentos por braço. Rubrica: 3 = tamanho de efeito, variância, viabilidade; 2 = dois; 1 = afirmação; 0 = nenhum.
- EX020 — Aprovações. Quem deve assinar o quê? Rubrica: 3 = orientador, ética, proprietário do laboratório, com os artefatos; 2 = dois; 1 = um; 0 = nenhum.
Síntese
Uma proposta de doutorado se compromete com uma pergunta falseável, medidas pré-registradas, uma ética que limita o dano e aprovações antes da coleta de dados.
Continue estudando — capítulo 03 de 08
← Capítulo 02 (rascunho) · Índice de capítulos do curso · Capítulo 04 (rascunho) →