¿Cómo ejecutas un ejercicio de modelado de amenazas?
Respuesta breve
El modelado de amenazas responde a cuatro preguntas: qué estamos construyendo, qué puede salir mal, qué hacemos al respecto y si hicimos un buen trabajo. Diagramas el sistema (a menudo un diagrama de flujo de datos con fronteras de confianza), enumeras amenazas con un marco como STRIDE, priorizas por riesgo y asignas mitigaciones. PASTA añade un matiz centrado en el riesgo y el atacante; los árboles de ataque descomponen un único objetivo. Hacerlo en tiempo de diseño es mucho más barato que parchear producción.
El modelado de amenazas es la práctica de encontrar fallos de diseño antes de que se construyan. Los entrevistadores preguntan sobre él para ver si sabes razonar sobre un sistema de forma estructural en lugar de solo reaccionar a la salida de un escaneo, y si sabes que el lugar más barato para corregir un fallo de seguridad es la pizarra.
Las cuatro preguntas
Un buen modelo responde a las cuatro preguntas de encuadre de Adam Shostack: ¿Qué estamos construyendo? ¿Qué puede salir mal? ¿Qué vamos a hacer al respecto? ¿Hicimos un trabajo lo bastante bueno? Todo lo que sigue es la maquinaria para responderlas.
El flujo
- Modelar el sistema. Dibujar un diagrama de flujo de datos — procesos, almacenes de datos, entidades externas, flujos de datos — y marcar las fronteras de confianza donde los datos pasan de una zona menos confiable a una más confiable. Las amenazas se concentran en esas fronteras.
- Enumerar las amenazas. Aplicar un marco. STRIDE es el caballo de batalla: Spoofing, Tampering, Repudiation, Information disclosure, Denial of service, Elevation of privilege — cada uno correspondiendo a una propiedad violada (autenticación, integridad, no repudio, confidencialidad, disponibilidad, autorización).
- Priorizar. Calificar las amenazas por probabilidad e impacto para gastar el esfuerzo donde el riesgo es mayor, y no en cada problema teórico.
- Mitigar y verificar. Asignar a cada amenaza aceptada un control, y luego confirmar que realmente se implementó y se probó.
Elegir un método
STRIDE es excelente por componente y por flujo de datos. Los árboles de ataque descomponen un único objetivo del atacante (p. ej. «exfiltrar la base de datos») en ramas y son excelentes para el análisis profundo de un riesgo. PASTA es un proceso más pesado, de siete etapas, centrado en el riesgo y el atacante, que liga las amenazas técnicas al impacto de negocio — útil cuando necesitas el respaldo de la dirección.
Qué buscan los entrevistadores
Quieren escucharte partir del diseño y las fronteras de confianza, mapear las letras de STRIDE a propiedades de seguridad concretas, y mantener el modelo vivo a medida que el sistema evoluciona en lugar de tratarlo como un documento único.
Posibles preguntas de seguimiento
- ¿A qué corresponde cada letra de STRIDE, y a qué propiedad de seguridad?
- ¿Cuándo elegirías PASTA o los árboles de ataque en lugar de STRIDE?
- ¿Cómo mantienes vivo un modelo de amenazas a medida que la arquitectura cambia?