pular para o conteúdo

manifesto

Conhecimento de segurança deveria ser aberto, visual e fácil de achar.

O jeito dominante de ensinar segurança está falhando com quem aprende. Este projeto é uma aposta concreta em outro caminho, e vale mais mostrar do que prometer: tudo que está nesta página já existe e dá para conferir no código.

01 · o problema

A forma como aprendemos segurança está quebrada.

Isto é uma opinião, formada por quem aprendeu, trabalha e ensina na área. Cinco falhas que se repetem:

  1. Decorar listas em vez de entender conexões

    SAST, DAST, WAF, IAM, cada um num capítulo. Ninguém mostra onde um controle entra, o que ele deixa passar e qual outro cobre esse buraco.

  2. Conhecimento atrás de paredes

    Curso caro, PDF solto, vídeo de três horas sem busca. Quem mais precisa aprender costuma ser quem menos acessa.

  3. Material que envelhece em silêncio

    Sem data, sem fonte, sem canal para corrigir. Em segurança, informação antiga e errada é um risco, não só um incômodo.

  4. Teoria sem cenário

    Aprende-se o nome do controle, não o momento em que ele falha. O atacante não segue o capítulo do livro.

  5. Avaliação que mede memória

    Decorar a sigla é fácil e não prova nada. O que importa é raciocinar sobre um incidente que você nunca viu.

02 · o que eu defendo

Conhecimento é melhor quando circula.

Segurança é um esporte coletivo: quanto mais gente entende, mais difícil é atacar. Por isso, seis princípios guiam o projeto:

  • Aberto

    Código em MIT, conteúdo em CC BY-SA 4.0. Qualquer pessoa pode ler, copiar, adaptar, traduzir e corrigir. Sem login, sem assinatura.

  • Fácil de acessar

    Site estático, rápido, sem cookies e sem rastreamento, que funciona no celular. Busca em um atalho (Ctrl+K), lista por etapa e navegação por teclado.

  • Visual

    Cada domínio é um mapa: o que existe, onde entra na esteira e como se conecta. A estrutura é parte da explicação.

  • Verificável

    Fontes primárias, data de atualização, registro público de correções e um validador que quebra o build quando algo está incompleto ou aponta para o nada.

  • Prático

    Cenários de ataque passo a passo e quizzes que pedem raciocínio. Você descobre qual camada barra cada movimento do atacante.

  • Feito para evoluir

    Pessoas e agentes de código contribuem pelo mesmo caminho, com os mesmos guardrails e revisão humana no final.

03 · por que não só um Notion

Notas são um começo. Conhecimento estruturado é outra categoria.

O Notion é ótimo no que foi feito para fazer: anotar, organizar e colaborar. A comparação abaixo é sobre outra tarefa: publicar conhecimento estruturado e verificável, em que a ferramenta ajuda a manter a qualidade, em vez de depender só da disciplina de quem escreve.

Comparação entre um workspace de notas genérico e este projeto
critérioworkspace de notas (ex.: Notion)sec/atlas
EstruturaEstrutura por convenção: templates ajudam, mas nada obriga a segui-losTópicos tipados: seções, fontes, quiz e posição no mapa são exigidos
ConexõesLinks e relações flexíveis, sem garantia de consistência entre páginasGrafo com relações tipadas; o build falha se uma conexão aponta para o vazio
QualidadeSem verificação automática de conteúdoValidador (9 regras) e CI em todo PR, mais orçamento de tamanho
Histórico e revisãoHistórico por página; revisão por pares depende de processo manualGit: cada mudança é um commit revisável, com autoria e motivo
PropriedadeOs dados vivem na plataforma (dá para exportar, mas ela é a fonte da verdade)Arquivos no seu repositório, licença aberta, fork em um clique
AcessoLeitura pública é possível; colaborar depende de workspace e permissõesPúblico e estático: abre em qualquer lugar, sem conta
AprenderFoco em leitura e anotação; sem trilhas, cenários ou quiz nativosTrilhas, cenários, quizzes e progresso salvo só no seu navegador
Edição colaborativa em tempo realExcelente: é o ponto forte deleNão é o objetivo: aqui a colaboração é por pull request

04 · feito para pessoas e para agentes

Um servidor MCP para agentes de código evoluírem o projeto.

O repositório traz um servidor MCP (Model Context Protocol) local, sem dependências. Um agente conecta, aprende as regras, lê o que já existe, cria o esqueleto de um tópico e roda o mesmo validador que o CI roda, com os mesmos limites de qualidade que uma pessoa teria.

O que o agente consegue fazer

  • list_domains, list_topics · mapear o que já existe
  • get_topic, search · ler e achar conteúdo
  • get_authoring_guide · carregar as regras do projeto
  • scaffold_topic · criar o esqueleto de um tópico novo
  • validate_content · rodar o validador

Toda sessão nova começa do mesmo ponto

As regras do projeto vêm do próprio servidor (instruções e guia de contribuição), então uma sessão nova não depende de contexto antigo: ela se conecta, lê o guia e sabe o que fazer e o que o build exige.

Os guardrails ficam do lado do projeto: o scaffold_topic só cria um arquivo novo, recusa caminhos suspeitos e nunca sobrescreve, e o build não passa com conteúdo incompleto.

.mcp.json (já incluído no repositório)json
{
  "mcpServers": {
    "sec-atlas": {
      "command": "node",
      "args": ["--import", "./scripts/content-alias-loader.mjs", "mcp/server.mjs"]
    }
  }
}

Agentes propõem, pessoas revisam. Contribuições assistidas por IA são bem-vindas, desde que o autor verifique cada afirmação e declare o uso no pull request. O objetivo é acelerar a escrita sem abrir mão da precisão.

Aprenda, corrija, melhore.

Se você estuda segurança, comece por uma trilha. Se você trabalha com isso, o jeito mais valioso de ajudar é achar o que está errado e dizer. Se você constrói com agentes, conecte o servidor e proponha um tópico.

— Vitor Sienna. sobre mim