Seguridad del Software Javier Javie r Bermejo Higuera
Mode odelado lado de Amanz Amanzas) as)
INDICE • • • • • • •
Introducción. Tipos Ti pos de Modelado Modelado de Amenazas. Amenazas. Metodologías de Modelado de Amenazas. Herramienta de Modelado Modelado de Amenazas Amenazas Conclusiones Trabajo Preguntas.
INTRODUCCION MODELADO DE AMENAZAS • Una amenaza para una aplicación sistema software es cualquier actor, agente, cir cunstancia o evento que tiene el potencial de causarle daño o a los datos o recursos que tiene o permite el acceso. Categoría de amenaza Sabotaje
Cambio de versión
Intercepción Descubrimiento
Descripción
Propiedad comprometida
La ejecución del software se suspende o termina, o su funcionamiento se degrada, o el ejecutable se suprime o destruye El software ejecutable se modifica intencionadamente (cambio o corrupción) o se substituye por parte no autorizada, o se inserta en el ejecutable
Disponibilidad
Una entidad no autorizada accede al software o a una función restringida dentro del mismo Se revelan aspectos tecnológicos del software y detalles de puesta en práctica empleando ingeniería inversa
Control de acceso Confidencialidad
Integridad
SEGURIDAD EN EL CICLO DE DESARROLL O EL SOFTWARE INTRODUCCION
• El modelado de Amenazas: – Constituye un framework específico para el proceso de análisis de riesgo estructurado. – Técnica de ingeniería cuyo objetivo es identificar y planificar la mitigación de las amenazas. – Herr amienta v álida para evaluar los riesgos inherentes a una aplicación durante su desarrollo. – Proceso si stemático que facilita la identificación de vulnerabilidades
TIPOS DE MODELADOS DE AMENAZAS • Tipos Metodologías: – Centradas en activo. – Centradas en el atacante. – Centradas en el software.
•
Metodologías: – – – –
Microsoft Threat Analysis and Modeling. CORAS. Trike. PTA (Practical Threat Analysis).
METODOLOGIA DE MODELADO AMENAZAS Adaptación de Micros oft Threat Analysis and Model ing
Metodología Modelado
METODOLOGIA DE MODELADO AMENAZAS • Modelado: – 1.1 Identificar Activos → datos confidenciales, servidores, páginas Web, disponibilidad del sistema, etc. – 1.2 Definir la arquitectura → funcionalidades, flujos de datos, tecnologías, etc. – 1.3 Descomponer la aplicación → Límites de la aplicación, análisis flujos de datos (DFD), entradas, perfiles, accesos recursos seguros.
SEGURIDAD EN EL CICLO DEDE DESARROLL O EL SOFTWARE AMENAZAS METODOLOGIA MODELADO
• Modelado → Diagramas DFD
SEGURIDAD EN EL CICLO DEDE DESARROLL O EL SOFTWARE AMENAZAS METODOLOGIA MODELADO
• Modelado: – 2.1 Determinar las amenazas a cada com ponente de la aplicación → identificar amenazas a nivel de red, host y aplicación. STRIDE – 2.2 Documentar las amenazas→ Descripción de la amenza Objetivo Riesgo Técnicas de ataque Medidas mi tigación
Inyecci ón de comando s SQL Componente de acceso a base de datos El atacante introduce comandos SQL en el campo usuario utilizado para formar una nueva sentencia SQL. Validar la entrada, filtrando el contenido del campo usuario, utilizar un procedimiento almacenado que uti lic e parámetros para acceder a la base de datos.
– 1.3 Valorar las amenazas→ DREAD
SEGURIDAD EN EL CICLO DEDE DESARROLL O EL SOFTWARE AMENAZAS METODOLOGIA MODELADO
– STRIDE (Spoofing, Tampering, Repudiation, Information disclosure, Denial of service, Elevation of privilege)
Riesgo = Probabil idad x Daño potenc ial
SEGURIDAD EN EL CICLO DEDE DESARROLL O EL SOFTWARE AMENAZAS METODOLOGIA MODELADO
• Mitigación – –
3. 1 Decidir cómo responder a las amenazas. 3. 2 Identificar las técnicas y tecnologías necesarias para mitigar los riesgos identificados
Am enazas Spoofing i dentity (Supl antación de Identidad)
Pro pi edad Autenticación
Salv agu ard as Procesos de Autenticación, Autorización y Auditoría (AAA): hash, firma digital. Protección de secretos No almacenamiento de secretos Single Sign On IPSEC Procesos de AAA: hash, firma digital. Códigos de autenticación de mensajes. Firmas digitales. Protocolos resistentes a la manipulación. Listas control de acceso ACL Procesos de Autenticación: hash, firma digital. Procesos de Auditoría. Sellado de tiempo. Procesos de AAA: hash, firma digital. Protección de secretos No almacenamiento de secretos. Protocolos seguros. Encriptado. Procesos de AAA: hash, firma digital. Listas control de acceso ACL. Calidad de servicio. Listas control de acceso ACL. Control de acceso basado en roles. Trabajar con el mínimo privilegio. Validación de entradas
Tampering w ith Data (Manipulación de datos)
Integridad
Repudiation (Repudio)
No Repudio
Information Disclosure (Revelación de información)
Confidencialidad
Denial of Service (Denegación de servi cio)
Disponibilidad
Elevation of Privil ege (Elevación de privilegios)
Autorización
SEGURIDAD EN EL CICLO DEDE DESARROLL O EL SOFTWARE AMENAZAS METODOLOGIA MODELADO
• 4. Validación: Rediseñar, usar salvaguardas estándar y personalizadas, aceptar el riesgo
SEGURIDAD EN EL CICLO DE DESARROLL O EL SOFTWARE HERRAMIENTA MODELADO AMENAZAS
•
Herramienta de Modelado: Thr eat Modeling Tool - TMT
Selección de vitas
SEGURIDAD EN EL CICLO DE DESARROLL O EL SOFTWARE HERRAMIENTA MODELADO AMENAZAS
Aplicación de Plantilla
SEGURIDAD EN EL CICLO DE DESARROLL O EL SOFTWARE HERRAMIENTA MODELADO AMENAZAS
SEGURIDAD EN EL CICLO DE DESARROLL O EL SOFTWARE CONCLUSIONES
– Modelado de amenazas es una herramienta de análisis v alioso que mejor a el proceso de diseño. – Beneficio de modelado → fase de diseño y enfocar las revisiones de código de seguridad. – Proporcionar la información para seleccionar las tecnologías apropiadas y técnic as de seguridad de mitigción. – Diagramas de flujo de datos → ayuda identificar v ulnerabilidades de seguridad.
TRABAJO Realizar un trabajo que contenga al menos el siguiente contenido: – – – –
Introducción al modelado de amenazas. Estudio de metodologías existentes. Descripción de una metodología en profundidad. Ejercicio práctico de modelado de amenazas, utilizando una herramienta de modelado como Threat Analysis and Modeling Tool , de una aplicación web de tres capas
TRABAJO • Aplicación Web de tres capas para un negocio de pago electrónico de una librería, con la siguiente arquitectura lógica:
TRABAJO •
Objetiv o: Salv aguardas y Calculo de Riesgo
PREGUNTAS
www.unir.net