Mapa da aula
Aula 01 publicada. Mapa, exemplo, EX001.
flowchart TD
N0["1.1 O objeto de estudo: uma malha de controle com co"]
N1["1.2 Uma escada de alegações"]
N2["1.3 A segurança antes da integridade dos resultados"]
N3["1.4 Ética e duplo uso"]
N4["1.5 Dados que descrevem uma planta são sensíveis"]
N5["1.6 Métricas que resistem à manipulação"]
N6["1.8 Atividade prática — Laboratório 1: o ajuste por"]
N7["Síntese do capítulo"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7
N7 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX001"]
Desenho lógico
flowchart LR
N0["1.1 O objeto de estudo: uma malha de controle com co"]
N1["1.2 Uma escada de alegações"]
N2["1.3 A segurança antes da integridade dos resultados"]
N3["1.4 Ética e duplo uso"]
N4["1.5 Dados que descrevem uma planta são sensíveis"]
N5["1.6 Métricas que resistem à manipulação"]
N6["1.8 Atividade prática — Laboratório 1: o ajuste por"]
N7["Síntese do capítulo"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7 --> Q["EX001"]
[1.1 O objeto de estudo: uma malha de controle com co]
|
v
[1.2 Uma escada de alegações]
|
v
[1.3 A segurança antes da integridade dos resultados]
|
v
[1.4 Ética e duplo uso]
|
v
[1.5 Dados que descrevem uma planta são sensíveis]
|
v
[1.6 Métricas que resistem à manipulação]
|
v
[1.8 Atividade prática — Laboratório 1: o ajuste por]
|
v
[Síntese do capítulo]
|
v
[Exemplo resolvido] --> [Exercício EX001]
Objetivos de aprendizagem e conexão
Ao final deste capítulo, você será capaz de: (1) explicar por que o processo físico, e não o pacote, é o objeto da pesquisa em segurança de TO; (2) situar uma alegação de pesquisa numa escada que vai da observação de rede até a consequência física; (3) desenhar um experimento cujo pior resultado plausível seja limitado por uma camada de segurança independente; (4) aplicar os princípios do Menlo à pesquisa industrial; e (5) escolher métricas de detecção que não possam ser manipuladas por convenções de pontuação. O capítulo se apoia no seu conhecimento de entrada sobre desenho de pesquisa e prepara o mapeamento da fronteira do Capítulo 2.
1.1 O objeto de estudo: uma malha de controle com consequências
Um sistema de informação falha divulgando, corrompendo ou retendo dados. Um sistema de controle industrial pode falhar de todas essas maneiras, mas a sua falha característica é outra: um processo físico sai do seu envelope seguro. Uma bomba trabalha a seco, um tanque transborda, uma dose de cloro passa do limite, uma turbina dispara. A NIST SP 800-82 Rev. 3 enquadra a TO como sistemas que "interagem com o ambiente físico" e enfatiza que a segurança física e a disponibilidade costumam dominar a ordem de prioridades que, na TI, é liderada pela confidencialidade. Essa diferença remodela a pesquisa. Um método de detecção que sinaliza toda escrita Modbus maliciosa, mas não consegue dizer se o processo foi posto em perigo, respondeu a uma pergunta de TI num ambiente de TO.
O pesquisador de doutorado, portanto, modela a malha explicitamente. Um sensor mede uma variável de processo (nível, pressão, vazão). Um controlador, tipicamente um controlador lógico programável (CLP), compara-a com um setpoint e calcula um comando. Um atuador (bomba, válvula, disjuntor) altera o processo. Uma camada de supervisão (SCADA, IHM, historiador) observa e ajusta os setpoints. Abaixo de todos eles fica um sistema instrumentado de segurança (SIS) ou um intertravamento cabeado, projetado para levar o processo a um estado seguro independentemente do sistema de controle. Cada elemento é um possível ponto de manipulação, e a honestidade de cada elemento é algo que o seu detector ou pressupõe ou testa.
1.2 Uma escada de alegações
Escreva toda alegação numa escada de cinco degraus e recuse-se a subir um degrau sem evidências para ele:
- Observação de protocolo — um quadro com o código de função 6 (escrever registrador único) chegou à unidade 1 (a especificação Modbus define os códigos de função).
- Inferência de controle — o registrador do setpoint mudou de 50 para 80.
- Inferência de processo — a trajetória do nível do tanque foi coerente com o novo setpoint.
- Inferência de segurança — a trajetória cruzaria (ou não) o trip de nível muito alto dentro do horizonte modelado.
- Alegação de consequência — dano a equipamentos, liberação ou ferimentos teriam ocorrido (ou não), dadas as camadas de proteção independentes.
A maioria dos artigos publicados sobre detecção em TO para no degrau 1 ou 2 e relata acurácia; a maior parte do valor prático está nos degraus 3–5. Uma tese não precisa chegar ao degrau 5, mas precisa dizer onde para.
1.3 A segurança antes da integridade dos resultados
Um experimento de TI mal conduzido perde dados; um experimento de TO mal conduzido pode ferir alguém. As regras de integridade da pesquisa comum — relato honesto, pré-registro das análises, retenção dos dados brutos — permanecem, mas uma nova regra tem precedência: nunca teste em produção. Os experimentos rodam em simulações, em bancadas de laboratório isoladas cujo pior caso é inofensivo ou, excepcionalmente, no sistema de um operador, sob a autorização escrita do operador, a sua própria análise de segurança e uma pessoa nomeada com autoridade de parada. Mesmo num laboratório, o pesquisador deve listar o pior resultado físico plausível de cada experimento (por exemplo, "a água se derrama no piso do invólucro da bancada") e a camada independente que o limita (uma chave boia mecânica, não o CLP sob teste). Se a única proteção é o próprio sistema que você está atacando, o experimento não está limitado.
1.4 Ética e duplo uso
O Menlo Report adapta os princípios do Belmont à pesquisa em TIC: respeito às pessoas, beneficência, justiça e respeito à lei e ao interesse público. Na pesquisa em TO, a beneficência domina: uma técnica de evasão que derrota todos os detectores publicados é uma contribuição real e também uma receita. A resposta ética não é o silêncio, mas a proporção. Publique a classe de fraqueza, a medição defensiva e a mitigação; retenha os detalhes de exploração específicos de fornecedores até que a divulgação coordenada (Capítulo 8) tenha seguido o seu curso. O respeito às pessoas se aplica aos operadores que você entrevista ou observa: eles podem revelar práticas inseguras que poderiam lhes custar o emprego, então os termos de consentimento devem declarar quem vê as anotações brutas. O respeito à lei abrange o controle de exportação de algumas tecnologias industriais e os limites contratuais sobre os dados das bancadas de testes.
1.5 Dados que descrevem uma planta são sensíveis
Capturas de rede, programas de CLP, diagramas de tubulação e instrumentação e logs de alarmes formam, juntos, um mapa de como ferir uma instalação. Trate-os como sensíveis mesmo quando a instalação for uma bancada universitária, porque as bancadas reutilizam controladores comerciais e as suas configurações revelam o comportamento dos produtos. Defina os níveis cedo: T0 público, T1 compartilhável sob licença, T2 compartilhável com pesquisadores verificados, T3 nunca sai do dono. O Capítulo 7 transforma esses níveis num manifesto de liberação.
Atribua um nível a cada artefato no momento em que ele é criado, não quando a tese é escrita, e registre o dono que pode mudá-lo. Uma captura feita na Bancada de testes T2 começa em T2, mesmo que pareça inofensiva. Baixar um nível exige uma razão escrita, como remover endereços e identificadores de controladores, e uma segunda pessoa que verifique o resultado.
1.6 Métricas que resistem à manipulação
A pesquisa em detecção na TO tem um problema de medição. Os ataques em conjuntos de dados de séries temporais são segmentos longos e contíguos; uma convenção de pontuação muito usada, o ajuste por pontos (point adjustment), marca um segmento de ataque inteiro como detectado se qualquer ponto isolado dentro dele for sinalizado. Como mostra o Laboratório 1, ela pode transformar um detector que encontra 10% dos pontos de ataque num detector que relata um F1 quase perfeito. Arp et al. listam essa família de armadilhas — medidas de desempenho inadequadas, negligência da taxa de base, avaliação apenas em laboratório — para o aprendizado de máquina em segurança de modo geral. Para a TO, o conjunto defensável de métricas é: revocação por evento (fração dos episódios de ataque detectados), tempo até a detecção medido a partir do início do ataque, alarmes falsos por turno de operador (porque as avalanches de alarmes são, elas próprias, um perigo para a segurança) e impacto físico na detecção (quanto o processo já tinha se deslocado quando o alarme disparou). A última métrica é específica da TO e é a mais frequentemente omitida.
1.7 Exemplo resolvido: a primeira revisão de protocolo do Setpoint Study (sintético)
O primeiro protocolo do candidato propunha repetir ataques gravados na rede ativa do historiador da Kestrel Plant A, "somente leitura". O comitê de revisão levantou três problemas. Primeiro, somente leitura é uma alegação, não uma propriedade: uma ferramenta de captura numa porta espelhada (span) é passiva, mas uma ferramenta que consulta o CLP é ativa e acrescenta carga a um controlador com ciclo de varredura fixo. Segundo, o pior resultado plausível não estava declarado. Terceiro, a métrica era o F1 com ajuste por pontos. O protocolo revisado (a) transfere todos os experimentos de ataque para uma simulação da Plant A e, depois, para a Bancada de testes T2 isolada; (b) declara o pior resultado na T2 como "o tanque superior transborda para a bandeja coletora", limitado por uma válvula boia mecânica independente do CLP; (c) relata a revocação por evento, o atraso, os alarmes falsos por turno de 8 horas e o transbordamento máximo; e (d) nomeia o gerente do laboratório como autoridade de parada.
1.8 Atividade prática — Laboratório 1: o ajuste por pontos infla as pontuações
Execute-o offline. Ele cria uma sequência sintética de 100 rótulos com dois segmentos de ataque e um detector que sinaliza cinco amostras.
# Lab 1 (synthetic): how "point-adjusted" scoring inflates an OT anomaly detector.
labels = [0]*20 + [1]*30 + [0]*30 + [1]*10 + [0]*10 # two attack segments (100 samples)
alarms = [0]*100
for i in (5, 40, 85, 86, 87): # detector flagged five samples
alarms[i] = 1
def scores(lab, pred):
tp = sum(l and p for l, p in zip(lab, pred)); fp = sum((not l) and p for l, p in zip(lab, pred))
fn = sum(l and not p for l, p in zip(lab, pred))
prec = tp/(tp+fp) if tp+fp else 0.0; rec = tp/(tp+fn) if tp+fn else 0.0
return round(prec, 3), round(rec, 3), round(2*prec*rec/(prec+rec), 3) if prec+rec else 0.0
def point_adjust(lab, pred):
out = pred[:]; i = 0
while i < len(lab):
if lab[i]:
j = i
while j < len(lab) and lab[j]: j += 1
if any(pred[i:j]): out[i:j] = [1]*(j-i)
i = j
else: i += 1
return out
def events(lab, pred):
segs, i = [], 0
while i < len(lab):
if lab[i]:
j = i
while j < len(lab) and lab[j]: j += 1
segs.append((i, j)); i = j
else: i += 1
return sum(any(pred[a:b]) for a, b in segs), len(segs)
print("pointwise P/R/F1 :", scores(labels, alarms))
print("point-adjust :", scores(labels, point_adjust(labels, alarms)))
print("events detected :", events(labels, alarms))
Saída esperada:
pointwise P/R/F1 : (0.8, 0.1, 0.178)
point-adjust : (0.976, 1.0, 0.988)
events detected : (2, 2)
Interpretação: os dois episódios foram detectados (revocação por evento 1,0), o que é genuinamente útil, mas o F1 ajustado por pontos de 0,988 esconde que o primeiro alarme no segmento um veio 20 amostras depois do início. Relate a revocação por evento com o atraso, nunca o F1 ajustado por pontos sozinho.
Os mesmos cinco alarmes produzem três histórias muito diferentes. Ponto a ponto, o detector encontrou quatro de quarenta amostras de ataque e gerou um alarme falso. Com o ajuste por pontos, ele parece quase perfeito. Por eventos, ele encontrou os dois episódios, um deles com atraso. Só a terceira visão, acompanhada do atraso, diz a um operador o que teria acontecido no tanque, e por isso é a que o Setpoint Study relata.
1.9 Erros comuns e limites
- Tratar uma anomalia de protocolo como uma anomalia de processo (o degrau 1 apresentado como degrau 3).
- Chamar uma captura passiva de "segura" enquanto se executam ferramentas de consulta ativas.
- Usar o CLP sob teste como o único limite de segurança num laboratório.
- Relatar uma única pontuação agregada sem os alarmes falsos por turno.
- Pressupor que as bancadas universitárias não são sensíveis porque são pequenas.
Cada erro tem uma salvaguarda. Escreva o degrau ao lado de cada alegação nas suas anotações. Chame de ativa qualquer ferramenta que envie requisições a um controlador, seja o que for que ela leia. Nomeie a camada independente que limita cada execução no laboratório, como a válvula boia na T2. Relate os alarmes falsos por turno de oito horas ao lado da revocação. Classifique os dados de bancadas universitárias no mesmo nível em que classificaria os dados de uma planta.
Exercícios — capítulo 1
Rubrica para todos os exercícios deste livro: 3 = correto, delimitado, com evidências rotuladas e honesto sobre os limites; 2 = correto, com uma pequena lacuna de escopo ou de evidência; 1 = parcialmente correto ou com alegações sem rótulo; 0 = ausente, inseguro ou alegando demais.
- EX001 — Alegações na escada para o slogan do transbordamento. Objetivo: classificar alegações. Insumo: a afirmação "Nosso detector impede transbordamentos de tanques." Passos: reescrevê-la como uma alegação em cada um dos degraus 1–4 da escada, para um ataque ao setpoint via Modbus. Evidência: quatro alegações delimitadas. Restrição: nenhuma alegação de degrau 5 sem dados das camadas de proteção.
Mostrar critérios de avaliação
Rubrica: 3 = quatro degraus com Modbus FC6/40001, setpoint 50→80, trajetória, trip modelado; nenhum degrau 5 sem dados de proteção; 2 = quatro degraus, mas vínculo fraco com o processo; 1 = omite um degrau ou inventa o degrau 5; 0 = slogan repetido. - EX002 — Limitar o experimento da bomba da T2. Objetivo: limitar um experimento. Para um ataque à bomba da Bancada de testes T2, declare o pior resultado plausível, a camada de proteção independente e a autoridade de parada. Evidência: uma tabela de três linhas.
Mostrar critérios de avaliação
Rubrica: 3 = transbordamento≈2 L, válvula boia+bandeja de 10 L, gerente nomeado com parada de emergência; camada só no CLP ≤1; 2 = três linhas, mas independência fraca; 1 = falta a autoridade de parada; 0 = sem limites. - EX003 — Coleta passiva versus ativa. Objetivo: passivo versus ativo. Classifique cinco métodos de coleta de dados (captura em porta espelhada, consulta ao CLP, exportação do historiador, upload do projeto da estação de engenharia, extração do firmware) como passivos ou ativos e dê um risco para cada um.
Mostrar critérios de avaliação
Rubrica: 3 = cinco métodos com passivo/ativo e um risco cada (porta espelhada, consulta, historiador, upload do projeto, firmware); 2 = quatro corretos; 1 = dois; 0 = nenhum. - EX004 — Revisão Menlo da publicação de uma evasão. Objetivo: análise pelo Menlo. Aplique os quatro princípios à publicação de uma nova técnica de evasão contra detectores baseados em física. Evidência: um parágrafo por princípio e uma decisão de publicação.
Mostrar critérios de avaliação
Rubrica: 3 = quatro princípios do Menlo + publicar a classe/defesa, reter os passos específicos de produtos; 2 = princípios sem decisão; 1 = um princípio; 0 = nenhum. - EX005 — Níveis do programa ladder ao simulador. Objetivo: níveis de dados. Atribua T0–T3 a: um programa ladder de CLP, uma tabela anonimizada de contagem de alarmes, uma captura de rede com endereços IP, um P&ID, um simulador sintético. Justifique cada um.
Mostrar critérios de avaliação
Rubrica: 3 = ladder T2/T3, alarmes T1, captura com IPs T2, P&ID T2/T3, simulador T0, com justificativas; 2 = quatro corretos; 1 = dois; 0 = nenhum. - EX006 — Atraso por evento versus ajuste por pontos. Objetivo: métricas. Usando o Laboratório 1, calcule o atraso de detecção por evento para cada segmento e explique por que o ajuste por pontos o esconde.
Mostrar critérios de avaliação
Rubrica: 3 = atrasos de 20 e 5 amostras + por que o ajuste por pontos os esconde; 2 = apenas os atrasos; 1 = um atraso; 0 = nenhum. - EX007 — Títulos do protocolo do Setpoint Study. Objetivo: protocolo. Redija os dez títulos de um protocolo do Setpoint Study, incluindo as condições de parada e de abandono.
Mostrar critérios de avaliação
Rubrica: 3 = dez títulos, incluindo parada (válvula boia, reinicialização, perda de registros>1%) e abandono; 2 = títulos sem parada/abandono; 1 = lista parcial; 0 = nenhum.
Síntese do capítulo
A pesquisa em TO estuda malhas de controle cuja falha é física. Suba a escada de alegações apenas com evidências, limite cada experimento com uma camada de segurança independente, trate os dados de plantas como sensíveis e escolha métricas — revocação por evento, atraso, alarmes falsos por turno, impacto físico na detecção — que uma convenção de pontuação não consiga inflar.