¿Qué es OWASP SAMM?
El Software Assurance Maturity Model (SAMM) es el marco de referencia de OWASP para ayudar a las organizaciones a formular e implementar un programa de seguridad de software adaptado a sus riesgos específicos. La versión actual es SAMM 2.0 (2020, con actualizaciones anuales).
SAMM vs OWASP Top 10
SAMM está diseñado para ser tecnológicamente agnóstico, aplicable a cualquier metodología de desarrollo (Waterfall, Agile, DevOps) y a organizaciones de cualquier tamaño. A diferencia de BSIMM (que describe lo que hacen las empresas), SAMM es prescriptivo: define qué deberías hacer para alcanzar cada nivel.
Estructura del modelo
5 Funciones de Negocio
SAMM organiza la seguridad en cinco Business Functions, cada una con tres prácticas de seguridad:
Niveles de Madurez (0–3)
Cada práctica de seguridad se evalúa en una escala del 0 al 3:
Nivel 0 — Sin práctica
La organización no realiza la actividad de forma sistemática. Punto de partida.
Nivel 1 — Inicial
Comprensión básica. Actividades ad-hoc, sin proceso formalizado. Ejemplo en Threat Assessment: el equipo identifica amenazas de forma reactiva cuando se reporta un bug.
Nivel 2 — Gestionado
Proceso definido y repetible. Actividades planificadas y ejecutadas de forma consistente. Ejemplo: threat modeling formal en cada nuevo componente de arquitectura.
Nivel 3 — Optimizado
Proceso medido y optimizado continuamente. Métricas, retroalimentación y mejora continua. Ejemplo: threat modeling automatizado integrado en el pipeline CI/CD con generación de tickets de remediación.
Cómo hacer una evaluación SAMM
Proceso de Assessment
- 1. Scope: Define qué BU/aplicación/equipo vas a evaluar. SAMM puede aplicarse a nivel organizativo o a un producto concreto.
- 2. Cuestionario: Responde el SAMM Assessment Tool (SAT) — disponible en samm.owasp.org. ~80 preguntas de Sí/No con evidencias.
- 3. Scoring: Cada respuesta positiva suma puntos. El resultado es un scorecard con los niveles 0–3 por práctica.
- 4. Roadmap: Define un target state a 12–18 meses. Identifica las prácticas con mayor ROI para subir de nivel.
- 5. Medición continua: Reevalúa cada 6–12 meses para medir progreso.
SAMM Assessment Tool (SAT)
Ejemplo de resultado
Roadmap de implementación por tamaño de empresa
Startup / Equipo pequeño (< 20 devs)
- Prioridad inmediata (Nivel 1): Education & Guidance (formación básica OWASP Top 10), Secure Build (activar
npm audit/Dependabot), Incident Management (proceso básico de respuesta). - Corto plazo (Nivel 2): Threat Assessment (threat modeling en nuevas features), Security Requirements (checklist de requisitos en tickets).
PYME / Empresa mediana (20–200 devs)
- Meta realista: madurez 1.5–2.0 en todas las funciones en 18 meses.
- Inversión clave: Security Champions program (1 champion por equipo de 5–10 devs).
- Herramientas: SAST en CI/CD (Semgrep), DAST periódico (OWASP ZAP), SCA (Snyk).
Enterprise (> 200 devs)
- Meta: alcanzar nivel 2 en todas las prácticas, nivel 3 en las críticas para el negocio.
- Programa formal: AppSec team dedicado, Security Champions, PSIRT, bug bounty.
- Integración con GRC: mapear SAMM a ISO 27001 Annex A, PCI-DSS req. 6, NIST SSDF.
SAMM y otros frameworks
SAMM no existe en aislamiento. Se integra con:
- OWASP ASVS: usa ASVS como el checklist de requisitos dentro de la práctica "Security Requirements" de SAMM.
- OWASP DSOMM: DSOMM es más específico para DevSecOps; puedes usar SAMM para el programa general y DSOMM para el pipeline CI/CD.
- BSIMM: BSIMM es descriptivo (benchmarking contra la industria); SAMM es prescriptivo. Úsalos juntos: BSIMM para saber dónde estás vs. la industria, SAMM para el roadmap.
- ISO 27001:2022: SAMM cubre muchos controles del Anexo A, especialmente A.8 (Asset Management) y A.14 (System Acquisition).
- NIST SSDF (SP 800-218): mapeo directo disponible en el sitio de OWASP SAMM.