◇ OpenCyber Academy
Tecnólogo · Capítulo 9 · Português

Capítulo 9 — Evidências e medição

Ensino gratuito e aberto para quem deseja proteger pessoas e tecnologias. Não é preciso criar uma conta para estudar ou consultar as respostas.

Capítulo 9 — Evidências e medição

Mapa da aula

Aula 09 publicada. Mapa, exemplo, EX025.

flowchart TD
  N0["9.1 Logs como evidência"]
  N1["Laboratório — Resumo das falhas de handshake"]
  N2["9.2 Ler o resumo"]
  N3["9.3 Relatar com clareza"]
  N4["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4
  N4 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX025"]

Desenho lógico

flowchart LR
  N0["9.1 Logs como evidência"]
  N1["Laboratório — Resumo das falhas de handshake"]
  N2["9.2 Ler o resumo"]
  N3["9.3 Relatar com clareza"]
  N4["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> Q["EX025"]
[9.1 Logs como evidência]
    |
    v
[Laboratório — Resumo das falhas de handshake]
    |
    v
[9.2 Ler o resumo]
    |
    v
[9.3 Relatar com clareza]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX025]

Objetivos de aprendizagem

Você vai (1) ler logs de falhas de TLS para encontrar as causas; (2) contar e classificar eventos de forma confiável; (3) relatar as evidências com clareza a engenheiros e gestores.

9.1 Logs como evidência

Quando os cidadãos relatam que "o site está quebrado", os logs contam o que realmente aconteceu. O gateway web da prefeitura registra os handshakes TLS que falham, com o endereço do cliente, um código de motivo e o host de destino. Rosa aprende a ler esses logs antes de fazer suposições. Códigos de motivo como certificate_expired, protocol_version, unknown_ca e handshake_timeout apontam para correções diferentes. Ela escreve um pequeno analisador usando apenas a biblioteca padrão para resumir as falhas de uma manhã, trabalhando sobre uma amostra sintética com endereços de uma faixa privada.

Laboratório — Resumo das falhas de handshake

"""Count reasons in a synthetic TLS handshake-failure log from a city web gateway."""
from collections import Counter
LOG = """\
2026-03-02T08:01Z fail client=10.2.0.14 reason=certificate_expired host=permits
2026-03-02T08:03Z fail client=10.2.0.31 reason=protocol_version host=legacy-gis
2026-03-02T08:07Z fail client=10.2.0.14 reason=certificate_expired host=permits
2026-03-02T08:11Z fail client=10.2.7.90 reason=unknown_ca host=staff-vpn
2026-03-02T08:12Z fail client=10.2.0.55 reason=certificate_expired host=permits
2026-03-02T08:20Z fail client=10.2.0.31 reason=protocol_version host=legacy-gis
2026-03-02T08:24Z fail client=10.2.3.12 reason=handshake_timeout host=permits"""

def main():
    rows = [dict(kv.split("=") for kv in ln.split()[2:]) for ln in LOG.splitlines()]
    for (r, h), n in Counter((x["reason"], x["host"]) for x in rows).most_common():
        print(f"{n}  {r:<20} {h}")
    print("distinct clients hitting expired cert:", len({x["client"] for x in rows if x["reason"] == "certificate_expired"}))

if __name__ == "__main__":
    main()

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

3  certificate_expired  permits
2  protocol_version     legacy-gis
1  unknown_ca           staff-vpn
1  handshake_timeout    permits
distinct clients hitting expired cert: 2

9.2 Ler o resumo

Das sete falhas, três são certificate_expired no host de licenças, vindas de dois clientes distintos; duas são protocol_version no legacy-gis, vindas de um cliente antigo; uma é unknown_ca na staff-vpn; e uma é um timeout em permits. Rosa conclui que o certificado de licenças é o problema urgente, pois afeta os cidadãos; as falhas do GIS legado vêm de um cliente desatualizado que não consegue negociar uma versão moderna do TLS; e o erro de autoridade desconhecida sugere um dispositivo da equipe sem a raiz interna. Ela separa cada um num chamado próprio, com as evidências anexadas, em vez de um único chamado vago de "problema de TLS".

9.3 Relatar com clareza

Para os engenheiros, Rosa relata contagens, hosts, códigos de motivo e intervalos de tempo. Para os gestores, ela escreve duas frases: os cidadãos não conseguiram renovar licenças por cerca de vinte minutos porque um certificado expirou, e ele foi renovado às 08:30; dois problemas menores afetam um cliente do GIS e um dispositivo da equipe. Ela evita exageros e indica quando as evidências estão incompletas, como as falhas não registradas quando o gateway estava sobrecarregado. Um relato claro e adequado a cada público ajuda a prefeitura a agir depressa e constrói confiança nas informações da TI. Ela encerra cada relatório com um próximo passo recomendado, para que quem lê na diagonal ainda saiba exatamente o que fazer.

Exemplo resolvido

Rosa analisa um log sintético de falhas, identifica como urgente o certificado expirado de licenças, separa três problemas em chamados e escreve resumos distintos para engenheiros e gestores.

Caso sintético. O log é inventado.

Erros e limites

Os logs podem perder eventos durante sobrecargas. Os códigos de motivo dependem do software do servidor e podem ser ambíguos.

Exercícios

Síntese

Ler os logs com cuidado, classificar os eventos e relatar a cada público transforma as falhas criptográficas em evidências acionáveis.

Continue estudando — aula 09 (capítulo 09 de 30)

← Capítulo 08 · Índice das aulas · Capítulo 10 →

Continue para a próxima aula já escrita.