Threat Modeling (Modelado de Amenazas)
El modelado de amenazas representa la transición fundamental entre la recolección pasiva de información y la ejecución activa de un test de penetración. Es el proceso intelectual crítico que dota de contexto, dirección y relevancia empresarial a las actividades técnicas posteriores. Sin un modelado de amenazas robusto, un Pentest corre el riesgo de convertirse en un ejercicio genérico de búsqueda de vulnerabilidades, carente de una narrativa que conecte los hallazgos técnicos con el riesgo real para la organización.
El objetivo final es responder a tres preguntas esenciales:
- ¿Qué estamos intentando proteger? (Activos)
- ¿De quién nos estamos intentando proteger? (Amenazas)
- ¿Cómo es más probable que ataquen? (Capacidades y vectores)
Este proceso se estructura en varios componentes que aparecen interconectados:
Identificación y categorización de activos de negocio
Un activo es, cualquier dato, dispositivo u otro componente del entorno que soporte las actividades de la organización y que, si es comprometido, cause un impacto negativo. La clave aquí es trascender la visión puramente tecnológica.
- Activos de Datos Primarios: Son el objetivo principal de un atacante. Incluyen:
- Propiedad intelectual y secretos comerciales: Planos, fórmulas, algoritmos, código fuente y roadmaps de los productos.
- Datos financieros: Estados de las cuentas, información de fusiones, ventas y adquisiciones, datos de cotización interna, etc.
- Datos de clientes y empleados: La pérdida de Información de Identificación Personal (PII) o Información de Salud Protegida (PHI) conlleva graves implicaciones legales (RGPD, LOPDGDD, HIPAA) y de reputación.
- Información operacional: Planes de marketing, estrategias de ventas, listas de proveedores y contratos, entre otros.
- Activos de soporte (Secundarios): Son los sistemas y credenciales que permiten el acceso a los activos primarios. Su compromiso es a menudo un paso intermedio necesario. Estos incluyen:
- Credenciales privilegiadas: Cuentas de administrador de dominio, claves de acceso a sistemas Cloud, certificados digitales de firma de código...
- Infraestructura crítica: Controladores de dominio, servidores de bases de datos, repositorios de código fuente y dispositivos de red centrales.
- Activos humanos: Personas con acceso privilegiado o que cuentan con "influencia", como administradores de sistemas, desarrolladores senior, ejecutivos y sus asistentes.
Perfilado de agentes de amenaza
Se debe construir un perfil realista de los potenciales atacantes, evitando la figura abstracta de un "hacker". Esto implica clasificarlos en comunidades con características comunes.
- Origen y Relación:
- Internos: Empleados descontentos, personal con acceso privilegiado (administradores), o contratistas. Su ventaja principal es el acceso inicial y el conocimiento interno.
- Externos: Competidores, crimen organizado, hacktivistas, estados-nación y "Script Kiddies". Su acceso es inicialmente nulo, pero su nivel de sofisticación podría ser muy elevado.
- Atributos específicos por comunidad:
- Empleado interno: Motivación típica por descontento laboral o beneficio personal. Capacidad técnica variable, pero con un conocimiento profundo de los procesos internos. Su ataque suele ser de bajo ruido.
- Crimen organizado: Motivación puramente económica, probablemente con alta capacidad técnica, acceso a exploits "Zero Days" y recursos logísticos. Su objetivo es el beneficio económico a través del robo de datos, el ransomware o el fraude.
- Hacktivistas: Principalmente, tienen motivación ideológica o política. Su capacidad técnica puede ser media-alta, pero su principal arma es la manipulación de la opinión pública. Buscan la filtración de datos o ataques de denegación de servicio (DoS o DDoS) para perjudicar la imagen de la organización.
- Estado-Nación: Motivación geopolítica o de inteligencia industrial. Máxima capacidad técnica, recursos ilimitados y gran paciencia. Sus campañas son persistentes y altamente sofisticadas APTs (Advanced Persistent Threats).
Análisis de capacidades y motivaciones
Una vez identificadas, es necesario analizar sus capacidades técnicas y operativas, así como sus motivaciones específicas.
- Análisis de capacidades:
- Herramientas: ¿Utilizan herramientas comerciales, de código abierto o personalizadas?
- Conocimiento de exploits: ¿Tienen capacidad para descubrir vulnerabilidades Zero Days o dependen de exploits públicos?
- Infraestructura: ¿Utilizan servidores proxy, redes botnets o hosting resistentes a takedowns?
- Persistencia y sigilo: ¿Cuál es su capacidad para mantener el acceso sin ser detectados?
- Accesibilidad: ¿Qué nivel de acceso inicial tienen? ¿Físico, remoto, o ninguno?
- Modelado de motivaciones:
- Beneficio Económico: Robo directo de fondos, extorsión mediante ransomware, venta de datos en el mercado negro.
- Ventaja Competitiva: Robo de propiedad intelectual para acelerar el desarrollo de un competidor.
- Activismo: Dañar la reputación de la organización para promover una causa.
- Espionaje: Recopilación de inteligencia para beneficio de un gobierno.
Asignación de Escenarios de Ataque y Vectorización
La fase final del modelado consiste en cruzar los activos identificados con las comunidades de amenazas probables y capacitadas. De este cruce surgen escenarios de ataque específicos y realistas.
- Ejemplo de Escenario: Un grupo de crimen organizado (agente externo, alta capacidad, motivación económica) busca obtener la base de datos de clientes (activo primario) para su venta. Para ello, identifican que el servidor de bases de datos (activo de soporte) es accesible a través de una aplicación web externa. Su vector de ataque inicial sería un ataque a una aplicación web, seguido de un movimiento lateral hacia el servidor interno de bases de datos.
Este escenario prioriza entonces las actividades de las fases siguientes. La búsqueda de vulnerabilidades se centrará en la aplicación web y en los mecanismos de acceso al servidor de bases de datos, y las técnicas de post-explotación se orientarán a la extracción y exfiltración de los datos de clientes.
En resumen, el modelado de amenazas es el marco estratégico que asegura que un Pentest sea una simulación creíble y relevante de un ataque dirigido "real", permitiendo a la organización comprender no solo sus vulnerabilidades técnicas puntuales, sino su postura global de seguridad frente a atacantes reales.