OpenCyber Academy
Engenharia · Capítulo 7 · Português
Código do curso: OCA-130Capítulo 07: OCA-130-C007

Capítulo 7 — Probabilidade e estatística

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 07 publicada. Mapa, exemplo, EX019.

flowchart TD
  N0["7.1 Probabilidade condicional"]
  N1["7.2 Taxas-base"]
  N2["Laboratório — Bayes para uma regra"]
  N3["7.3 Lendo o resultado"]
  N4["7.4 Resumos"]
  N5["7.5 Usando a estatística"]
  N6["Intervalos para taxas"]
  N7["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7
  N7 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX019"]

Desenho lógico

flowchart LR
  N0["7.1 Probabilidade condicional"]
  N1["7.2 Taxas-base"]
  N2["Laboratório — Bayes para uma regra"]
  N3["7.3 Lendo o resultado"]
  N4["7.4 Resumos"]
  N5["7.5 Usando a estatística"]
  N6["Intervalos para taxas"]
  N7["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7 --> Q["EX019"]
[7.1 Probabilidade condicional]
    |
    v
[7.2 Taxas-base]
    |
    v
[Laboratório — Bayes para uma regra]
    |
    v
[7.3 Lendo o resultado]
    |
    v
[7.4 Resumos]
    |
    v
[7.5 Usando a estatística]
    |
    v
[Intervalos para taxas]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX019]

Objetivos de aprendizagem

Você vai (1) aplicar a regra de Bayes à precisão dos alertas; (2) distinguir a taxa de falsos positivos da precisão; (3) resumir dados com medianas e percentis; (4) reconhecer efeitos da taxa-base.

7.1 Probabilidade condicional

Duas perguntas são fáceis de confundir. "Se um ataque acontece, qual a probabilidade de um alerta?" é a taxa de verdadeiros positivos. "Se um alerta dispara, qual a probabilidade de um ataque?" é a precisão. A regra de Bayes liga as duas por meio da taxa-base. Confundi-las leva a decisões ruins. Um fornecedor pode anunciar que seu detector pega 99% dos ataques, que é a taxa de verdadeiros positivos, enquanto os analistas vivem outra coisa: a maioria dos alertas que abrem acaba sendo benigna. A regra de Bayes mostra como as duas coisas podem ser verdadeiras ao mesmo tempo, porque a precisão depende fortemente de quão raros são os ataques entre os eventos avaliados.

7.2 Taxas-base

Axelsson (2000) mostrou que, quando os ataques são raros entre os eventos, mesmo um bom detector produz principalmente alarmes falsos. A precisão cai à medida que a prevalência cai. O argumento de Axelsson aplicou isso aos sistemas de detecção de intrusão numa época em que os fornecedores se concentravam nas taxas de detecção. Suponha que apenas um evento em dez mil seja malicioso; mesmo uma taxa de falsos positivos de um em mil produz dez alarmes falsos para cada verdadeiro. A lição prática é que as taxas de falsos positivos precisam ser extremamente baixas, ou os alertas precisam ser filtrados mais antes de chegar às pessoas.

Laboratório — Bayes para uma regra

"""Bayes' rule for one detection rule at Lindqvist Freight (synthetic figures)."""
p_attack = 0.002          # share of evaluated logon bursts that are credential stuffing
tpr, fpr = 0.90, 0.01
p_alert = tpr * p_attack + fpr * (1 - p_attack)
ppv = tpr * p_attack / p_alert
print(f"P(alert)={p_alert:.5f}  P(attack|alert)={ppv:.3f}")
print(f"per 100,000 bursts: true alerts={tpr*p_attack*1e5:.0f} false alerts={fpr*(1-p_attack)*1e5:.0f}")

Execute com python3 lab_bayes.py. Saída verificada:

P(alert)=0.01178  P(attack|alert)=0.153
per 100,000 bursts: true alerts=180 false alerts=998

7.3 Lendo o resultado

Com 0,2% das rajadas de logon sendo credential stuffing, uma taxa de verdadeiros positivos de 90% e uma taxa de falsos positivos de 1%, a precisão é 0,153: cerca de um alerta em sete é real. A cada 100.000 rajadas, esperam-se 180 alertas verdadeiros e 998 falsos. Ver as contagens deixa o ponto evidente: 998 alarmes falsos contra 180 reais. Reduzir a taxa de falsos positivos à metade, para 0,5%, cortaria os alarmes falsos para 499 e elevaria a precisão para cerca de 0,27, então melhorar a especificidade compensa mais do que melhorar a detecção aqui. Amara confere a aritmética montando a tabela completa de ataques e não ataques antes de confiar no resultado da fórmula.

7.4 Resumos

Os tempos de triagem são assimétricos: a maioria é rápida, alguns levam horas. Medianas e percentis 90 os descrevem melhor do que médias. Algumas investigações longas podem puxar a média muito acima do que um alerta típico leva, dando uma imagem enganosa do trabalho diário. A mediana diz quanto custa um alerta típico; o percentil 90 mostra quanto duram os lentos, o que importa para dimensionar a equipe. Amara relata os dois, com o número de alertas da amostra, para que os leitores vejam quão sólidos são os números.

7.5 Usando a estatística

Amara usa esses números para argumentar que a regra de rajada precisa de uma segunda condição (um sucesso dentro da rajada) para elevar a precisão antes de acionar analistas à noite. Exigir um sucesso dentro da rajada muda a taxa-base: rajadas com sucesso formam um grupo muito menor e mais suspeito, de modo que uma fração muito maior dos alertas que disparam sobre elas é real. A contrapartida é que ataques que falham por completo deixam de acionar alguém à noite. Amara propõe registrá-los numa fila de revisão diurna para que ainda sejam vistos.

Intervalos para taxas

Uma taxa observada de falsos positivos de 1% em 2.000 rajadas benignas tem incerteza: a taxa verdadeira pode ser um pouco maior ou menor. Amara relata as taxas com intervalos de 95% e anota o tamanho da amostra, para que os leitores não tratem 1% como exato. Quando as amostras são pequenas, ela o diz e evita decisões que dependam de diferenças finas entre regras. Paolo pede que toda proposta de regra inclua a amostra em que suas taxas foram medidas.

Exemplo resolvido

Paolo pergunta: "Se reduzirmos a taxa de falsos positivos à metade, o que acontece?" Amara refaz o cálculo com 0,5%: a precisão sobe para cerca de 0,27. Reduzir os falsos positivos à metade quase dobra a fração de alertas reais, o que é mais útil do que elevar a sensibilidade de 90% para 95%.

Caso sintético. As taxas vêm do script do laboratório; o caso de 0,5% é o recálculo dela.

Erros e limites

Taxas estimadas a partir de amostras pequenas são incertas; relate intervalos quando possível.

Exercícios

Síntese

A regra de Bayes e as taxas-base explicam por que a precisão, e não apenas a taxa de detecção, decide se uma regra é útil.

Continue estudando — capítulo 07 de 50

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

Respostas comentadas

EX019. A taxa de verdadeiros positivos é a chance de um alerta quando um ataque acontece; a precisão é a chance de um alerta ser um ataque real.

EX020. 0,153, ou seja, cerca de um alerta em sete é real: aproximadamente 180 verdadeiros contra 998 falsos a cada 100.000 rajadas.

EX021. Porque os alarmes falsos dominam com essa taxa-base baixa, reduzi-los à metade eleva a precisão para cerca de 0,27, muito mais do que um pequeno ganho de sensibilidade.