◇ OpenCyber Academy
Engenharia · Capítulo 48 · Português

Capítulo 48 — Dossiê de evidências

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 48 — Dossiê de evidências

Mapa da aula

Aula 48 publicada. Mapa, exemplo, EX142.

flowchart TD
  N0["48.1 O que é o dossiê"]
  N1["48.2 Estrutura"]
  N2["48.3 Integridade e reprodutibilidade"]
  N3["48.4 Risco residual honesto"]
  N4["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4
  N4 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX142"]

Desenho lógico

flowchart LR
  N0["48.1 O que é o dossiê"]
  N1["48.2 Estrutura"]
  N2["48.3 Integridade e reprodutibilidade"]
  N3["48.4 Risco residual honesto"]
  N4["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> Q["EX142"]
[48.1 O que é o dossiê]
    |
    v
[48.2 Estrutura]
    |
    v
[48.3 Integridade e reprodutibilidade]
    |
    v
[48.4 Risco residual honesto]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX142]

Objetivos de aprendizagem

Você vai (1) montar um dossiê de evidências que sustente um caso de segurança física e de segurança para o projeto final; (2) organizar as evidências por afirmação e por requisito; (3) garantir a integridade e a reprodutibilidade das evidências; e (4) declarar com honestidade o risco residual e as limitações.

48.1 O que é o dossiê

O dossiê é o conjunto completo e organizado de evidências de que o sistema atende aos seus requisitos e de que seus riscos residuais são compreendidos e aceitos. Ele sustenta o caso de segurança física e de segurança e é o que um avaliador, cliente ou regulador examinaria. O dossiê é montado ao longo de todo o projeto, e não no fim. Cada relatório de teste, revisão e resultado de ensaio é arquivado com suas versões à medida que é produzido, de modo que a tarefa final é organizar e ligar, e não procurar. Um avaliador deve conseguir partir de qualquer afirmação e chegar à sua evidência em poucos passos, e partir de qualquer evidência e ver qual afirmação ela sustenta.

48.2 Estrutura

  1. Resumo: sistema, uso pretendido, afirmações, riscos residuais, recomendação.
  2. Caso de segurança física e de segurança: afirmações, argumentos, referências a evidências, refutadores.
  3. Matriz de rastreabilidade de requisitos: requisito → projeto → implementação → resultado da verificação.
  4. Relatórios de verificação e validação (Laboratórios I–II, red team, piloto).
  5. Relatório do ensaio de recuperação e ações pós-ação.
  6. Revisões de projeto e seu encerramento.
  7. Configuração: versões e hashes de código, modelos, dados, prompts.
  8. Documentação: model cards, datasheets, runbooks.
  9. Registro de riscos residuais com responsáveis e datas de revisão.

A ordem segue as perguntas de um avaliador. O resumo responde ao que se afirma, o caso ao porquê de se acreditar nisso, e a matriz a onde conferir.

48.3 Integridade e reprodutibilidade

Registre os hashes dos arquivos de evidência em um manifesto; guarde o dossiê em um repositório com controle de versão; torne a avaliação reprodutível a partir das configurações registradas (scripts, sementes, ambientes). O laboratório de hashes do Capítulo 19 é a forma mais simples dessa disciplina.

"""Lab H: integrity of model artefacts with SHA-256 manifests (stdlib only).
Creates synthetic 'artefact' bytes, records a manifest, then detects a
one-byte tampering and a swapped file. No real models are involved."""
import hashlib, json
files = {"model.bin": bytes(range(256)) * 40, "tokenizer.json": b'{"vocab": ["a", "b"]}',
         "config.yaml": b"layers: 4\nheads: 8\n"}
manifest = {n: hashlib.sha256(b).hexdigest() for n, b in files.items()}
print(json.dumps({k: v[:16] for k, v in manifest.items()}, indent=1))
received = dict(files)
tampered = bytearray(received["model.bin"]); tampered[5000] ^= 1
received["model.bin"] = bytes(tampered)
received["config.yaml"] = b"layers: 4\nheads: 8\ntrust_remote_code: true\n"
for n, b in sorted(received.items()):
    ok = hashlib.sha256(b).hexdigest() == manifest[n]
    print(f"{n:15s} {'OK' if ok else 'MISMATCH'}")

Saída esperada:

{
 "model.bin": "e96760a87768717b",
 "tokenizer.json": "f63d2ddabc61f2d9",
 "config.yaml": "e5bbb570ca0fcb87"
}
config.yaml     MISMATCH
model.bin       MISMATCH
tokenizer.json  OK

Um manifesto mostra que a evidência não foi alterada depois de produzida; a reprodutibilidade mostra que ela pode ser produzida de novo. Registrar sementes, ambientes e versões torna possíveis reexecuções anos depois, por exemplo quando um regulador pergunta sobre uma versão passada. O controle de versão acrescenta um histórico de quando cada evidência foi acrescentada e por quem, o que ajuda um avaliador a entender como o dossiê cresceu.

48.4 Risco residual honesto

Liste o que não foi testado, o que falhou e foi aceito e o que depende de premissas (por exemplo, "os técnicos leem as telas de aprovação"). Reguladores e clientes confiam em dossiês que declaram os limites. As premissas merecem cuidado especial porque são invisíveis até falharem. O Bulletin Gate supõe que os boletins de fornecedores chegam por um canal autenticado; se essa premissa cair, um atacante poderia enviar boletins diretamente. Registrar a premissa, junto com o que mostraria que ela não vale mais, a transforma em algo que os operadores podem monitorar. Uma entrada de risco residual também nomeia quem aceitou o risco e quando ele será revisto.

48.5 Exemplo resolvido (caso sintético da NRS)

O dossiê do Bulletin Gate de Sam tinha 41 requisitos: 39 passaram, um passou após correção e novo teste, e um (anexos de imagem) estava formalmente fora do escopo. Os riscos residuais incluíam ataques adaptativos além do conjunto testado, a dependência da autenticação do canal dos fornecedores e a atenção dos revisores. O manifesto de evidências listava 312 arquivos com hashes SHA-256; um avaliador reexecutou a estrutura de avaliação a partir do dossiê e reproduziu os números principais dentro de seus intervalos. A reprodução pelo avaliador é a evidência mais forte do dossiê, já que mostra que os resultados vieram do sistema registrado, e não de uma execução impossível de repetir.

48.6 Erros e limites

Três erros são comuns: dossiês que reúnem documentos sem ligá-los a afirmações; versões e hashes ausentes; e seções de risco residual que dizem "nenhum". Uma pasta de documentos sem ligações com as afirmações deixa o avaliador construindo o argumento, e ele pode construir outro. Versões ausentes fazem com que ninguém consiga dizer qual sistema um resultado descreve. Um registro de riscos residuais que diz "nenhum" nunca é verdadeiro e sugere que a equipe não procurou. O modelo de dossiê de Sam se recusa a ser gerado se alguma afirmação não tiver ligação com evidência ou algum arquivo de evidência não tiver hash.

Exercícios

Síntese

O dossiê de evidências torna o projeto final avaliável: afirmações ligadas a evidências verificadas, versionadas e reprodutíveis, e um registro honesto do que resta.

Continue estudando — capítulo 48 de 50

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