saltar al contenido

manifiesto

El conocimiento de seguridad debería ser abierto, visual y fácil de encontrar.

La forma dominante de enseñar seguridad está fallando a quienes aprenden. Este proyecto es una apuesta concreta por otro camino, y vale más mostrar que prometer: todo lo que hay en esta página ya existe y se puede comprobar en el código.

01 · el problema

La forma en que aprendemos seguridad está rota.

Esto es una opinión, formada por alguien que aprendió, trabaja y enseña en el área. Cinco fallas que se repiten:

  1. Memorizar listas en lugar de entender conexiones

    SAST, DAST, WAF, IAM, cada uno en su capítulo. Nadie muestra dónde entra un control, qué deja pasar y qué otro cubre ese hueco.

  2. Conocimiento detrás de muros

    Cursos caros, PDFs sueltos, videos de tres horas sin búsqueda. Quienes más necesitan aprender suelen ser quienes menos acceso tienen.

  3. Material que envejece en silencio

    Sin fecha, sin fuente, sin canal para corregir. En seguridad, la información vieja y equivocada es un riesgo, no solo una molestia.

  4. Teoría sin escenario

    Se aprende el nombre del control, no el momento en que falla. El atacante no sigue el capítulo del libro.

  5. Evaluación que mide memoria

    Memorizar la sigla es fácil y no demuestra nada. Lo que importa es razonar sobre un incidente que nunca viste.

02 · lo que defiendo

El conocimiento es mejor cuando circula.

La seguridad es un deporte de equipo: cuanta más gente entiende, más difícil es atacar. Por eso seis principios guían el proyecto:

  • Abierto

    Código bajo MIT, contenido bajo CC BY-SA 4.0. Cualquiera puede leer, copiar, adaptar, traducir y corregir. Sin login, sin suscripción.

  • Fácil de acceder

    Sitio estático, rápido, sin cookies ni rastreo, que funciona en el celular. Búsqueda con un atajo (Ctrl+K), lista por etapa y navegación por teclado.

  • Visual

    Cada dominio es un mapa: qué existe, dónde entra en el pipeline y cómo se conecta. La estructura es parte de la explicación.

  • Verificable

    Fuentes primarias, fecha de actualización, registro público de correcciones y un validador que rompe el build cuando algo está incompleto o apunta a la nada.

  • Práctico

    Escenarios de ataque paso a paso y quizzes que piden razonar. Descubres qué capa detiene cada movimiento del atacante.

  • Hecho para evolucionar

    Personas y agentes de código contribuyen por el mismo camino, con los mismos guardrails y revisión humana al final.

03 · por qué no solo un Notion

Las notas son un comienzo. El conocimiento estructurado es otra categoría.

Notion es excelente en lo que fue hecho para hacer: anotar, organizar y colaborar. La comparación de abajo trata de otra tarea: publicar conocimiento estructurado y verificable, donde la herramienta ayuda a mantener la calidad en lugar de depender solo de la disciplina de quien escribe.

Comparación entre un espacio de notas genérico y este proyecto
criterioespacio de notas (ej.: Notion)sec/atlas
EstructuraEstructura por convención: las plantillas ayudan, pero nada obliga a seguirlasTemas tipados: se exigen secciones, fuentes, quiz y posición en el mapa
ConexionesEnlaces y relaciones flexibles, sin garantía de consistencia entre páginasGrafo con relaciones tipadas; el build falla si una conexión apunta al vacío
CalidadSin verificación automática del contenidoValidador (9 reglas) y CI en cada PR, más presupuesto de tamaño
Historial y revisiónHistorial por página; la revisión por pares depende de un proceso manualGit: cada cambio es un commit revisable, con autoría y motivo
PropiedadLos datos viven en la plataforma (se pueden exportar, pero ella es la fuente de verdad)Archivos en tu repositorio, licencia abierta, fork en un clic
AccesoLa lectura pública es posible; colaborar depende de un workspace y permisosPúblico y estático: se abre en cualquier lugar, sin cuenta
AprenderEnfocado en lectura y anotación; sin rutas, escenarios ni quiz nativosRutas, escenarios, quizzes y progreso guardado solo en tu navegador
Edición colaborativa en tiempo realExcelente: es su punto fuerteNo es el objetivo: aquí la colaboración es por pull request

04 · hecho para personas y para agentes

Un servidor MCP para que los agentes de código evolucionen el proyecto.

El repositorio incluye un servidor MCP (Model Context Protocol) local, sin dependencias. Un agente se conecta, aprende las reglas, lee lo que ya existe, crea el esqueleto de un tema y ejecuta el mismo validador que corre el CI, con los mismos límites de calidad que tendría una persona.

Lo que el agente puede hacer

  • list_domains, list_topics · mapear lo que ya existe
  • get_topic, search · leer y encontrar contenido
  • get_authoring_guide · cargar las reglas del proyecto
  • scaffold_topic · crear el esqueleto de un tema nuevo
  • validate_content · ejecutar el validador

Cada sesión nueva empieza desde el mismo punto

Las reglas del proyecto vienen del propio servidor (instrucciones y guía de contribución), así que una sesión nueva no depende de contexto viejo: se conecta, lee la guía y sabe qué hacer y qué exige el build.

Los guardrails están del lado del proyecto: scaffold_topic solo crea un archivo nuevo, rechaza rutas sospechosas y nunca sobrescribe, y el build no pasa con contenido incompleto.

.mcp.json (ya incluido en el repositorio)json
{
  "mcpServers": {
    "sec-atlas": {
      "command": "node",
      "args": ["--import", "./scripts/content-alias-loader.mjs", "mcp/server.mjs"]
    }
  }
}

Los agentes proponen, las personas revisan. Las contribuciones asistidas por IA son bienvenidas, siempre que el autor verifique cada afirmación y declare el uso en el pull request. El objetivo es acelerar la escritura sin renunciar a la precisión.

Aprende, corrige, mejora.

Si estudias seguridad, empieza por una ruta. Si trabajas en esto, la forma más valiosa de ayudar es encontrar lo que está mal y decirlo. Si construyes con agentes, conecta el servidor y propón un tema.

— Vitor Sienna. acerca de mí