Está en la página 1de 12

Asignatura Datos del alumno Fecha

Apellidos:
Seguridad en el
Software
Nombre:

Actividades

Trabajo: Metodologías de modelado de amenazas

Descripción

Esta actividad te servirá para seguir profundizando en el modelado de amenazas


realizando un trabajo que contenga al menos los siguientes apartados:
» Introducción al modelado de amenazas.
» Estudio de metodologías existentes. Se incluirá un resumen de las principales
características de:

o CORAS (Consultative objective risk analysis system).


o CIGITAL's architectural risk analysis process.

o PTA Technologies calculative threat modeling methodology (CTMM).

o Trike. Metodología de evaluación de amenazas.

o TAM (Microsoft threat analysis and modeling).

o PASTA (Process for Attack Simulation and Threat Analysis).

» 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 (https://www.microsoft.com/en-
us/download/details.aspx?id=49168) del siguiente caso que se describe a continuación:

Ejercicio práctico de modelado de amenazas

Con objetivo de afianzar los conocimientos adquiridos sobre el modelado de amenazas


se pide el definir, modelar y medir las posibles amenazas de una tienda de libros online,
llamada «Librería On-Line SA».

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el
Software
Nombre:

Últimamente, ha sufrido un ciberataque que ha comprometido las credenciales de sus


clientes. El incidente ha trascendido en los medios de comunicación, lo que ha
producido una pérdida de cuota de mercado importante frente a sus competidores.
Con el objetivo de mantener su actual posición en el mercado de venta electrónica de
libros y volver a recurar e incluso superar la que tenía, ha contratado a la empresa
InfoSecurity para llevar a cabo un trabajo de modelado de amenazas a sus sistemas
TI e implementar las salvaguardas que se deriven del mismo en función del nivel de
riesgo y la disponibilidad económica. Se le establece los siguientes requisitos de negocio
y técnicos:
» Habrá tres tipos de usuarios en la aplicación: clientes, administrador TI y agente de
ventas.
» Los clientes deben poder buscar productos y gestionar sus pedidos utilizando la
tienda web o llamando a la oficina de ventas.
» Para que un cliente pueda realizar un pedido debe, con anterioridad, registrase para
crearle una cuenta.
» El cliente puede pagar con una tarjeta de crédito, débito o mediante trasferencia
bancaria.
» Los clientes deben iniciar sesión antes para poder personalizar sus preferencias.
» Los clientes deben ser capaces de revisar y modificar sus pedidos realizados.
» Los agentes de ventas pueden conceder descuentos a los clientes.
» Los administradores pueden modificar y eliminar clientes y productos e
información.
» La tienda web de la librería tendrá que ser accesible desde Intranet e Internet.
» La tienda web deberá diseñarse con una arquitectura distribuida por razones de
escalabilidad.
» El cliente necesitará autenticarse en la tienda web con las credenciales de la cuenta
de usuario, que a su vez se comprobarán contra la base de datos implementada en el
backend de la compañía, a través de una interfaz de servicios web.
» La información de la cuenta del usuario y la información del producto deberán
mantenerse en una base de datos relacional.
» El procesamiento de tarjetas de crédito será subcontratado a un procesador de
terceros.
» Las interacciones de los usuarios con la tienda web se almacenan en un servidor de
log interno de la organización.

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el
Software
Nombre:

» La base de datos deberá copiarse periódicamente en una ubicación de un proveedor


de servicios TI de terceros, para propósitos de recuperación ante desastres.
» El sitio web se diseñará lógicamente como una aplicación cliente/servidor
distribuida conforme a un modelo de tres capas: presentación, proceso y datos.
» Los clientes accederán a la aplicación utilizando navegadores web de escritorio y
dispositivos móviles.
» El sitio web se desplegará en Internet protegido por una DMZ de dos capas con
acceso tanto para usuarios internos como externos.
» Físicamente, la aplicación estará completamente alojada en un servidor de
aplicaciones (frontend) alojado en la DMZ con acceso a un servidor de base de datos
que estará en la red interna de la compañía (backend).
» La tecnología utilizada en el desarrollo de la aplicación web es ASP.Net utilizando C
# y la base de datos del backend de la compañía está implementada en base al
producto Microsoft SQL Server.

Los objetivos de seguridad establecidos para la tienda web de Librería On-Line SA son
los siguientes:

» Recuperar la imagen de la compañía deteriorada tras el ciberincidente ocurrido.


» Obtener la posición líder de mercado en venta de libros online.
» Mantener confidencialidad, integridad y disponibilidad de la información
almacenada y trasmitida.
» Proporcionar un servicio seguro a los clientes existentes y potenciales.
» Proporcionar un servicio ininterrumpido a los clientes existentes y potenciales. Se
aplicarán técnicas de monitorización, equilibrio de carga, replicación, recuperación
ante desastres y continuidad del negocio y copias de seguridad recuperables.
» Proporcionar una experiencia de usuario mejorada a los clientes existentes y
potenciales.
» Se establecerán procesos de autenticación, autorización y auditoría.

El sistema estará basado en una típica arquitectura de una aplicación web de tres capas
donde el cliente es un navegador que accede a los servicios proporcionados por el sitio
web de la librería, que contiene una base de datos de los clientes, cuentas y
publicaciones disponibles alojada en un servidor de bases de datos y un servidor web
que implementa toda la lógica de negocio.

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el
Software
Nombre:

Hay que tener en cuenta que nos encontramos en la fase análisis de requisitos del SDLC
identificando requisitos funcionales y de seguridad.

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el
Software
Nombre:

Realización del diagrama DFD de la arquitectura de la aplicación

Para la realización del DFD se utilizará la herramienta Threat analysis and modeling
tool 2016 de la compañía Microsoft, descargable en el siguiente enlace:
https://www.microsoft.com/en-us/download/details.aspx?id=49168

Como ayuda a su manejo, aparte de los manuales que se pueden descargar con
esta herramienta, se aconseja visionar estos dos vídeos:

AppSecEU 16: https://www.youtube.com/watch?v=C5IPkuDnOGs


Microsoft SDL Unit04: https://www.youtube.com/watch?v=WGz2JQ1OlGQ

La aplicación también está disponible, ya instalada y con la plantilla cargada, en el


escritorio virtual de UNIR:
https://salainformaticaunir.u-cloudservices.com

La aplicación permite analizar las amenazas de una aplicación web típica de negocio de
pago electrónico de una librería (textos, libros, revistas, etc.) en formato digital con
opciones de impresión.

El sistema está basado en una típica arquitectura de una aplicación web de tres capas,
donde el cliente es un navegador que acceder a los servicios proporcionados por el sitio
web de la librería, que contiene una base de datos de los clientes, cuentas y
publicaciones disponibles alojada en un servidor bases de datos (que replica a un
hosting externo para tener un backup), un servidor web que implementa toda la lógica
de negocio, un servidor de logs interno como podrían ser un SIEM y por último un
acceso a una pasarela de pagos externa.

Tener en cuenta que nos encontramos en la fase análisis de requisitos del SDLC,
identificando requisitos funcionales y de seguridad.

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el
Software
Nombre:

Figura 20. Topología lógica de la aplicación

Se propone modelar la aplicación mediante el siguiente diagrama DFD que constituye


una representación gráfica que agiliza el proceso de modelado de requerimientos y al
mismo. En la siguiente figura se muestra un modelo básico como ayuda a la realización
del diagrama DFD de la aplicación propuesta. No hay que olvidar configurar las
propiedades de cada elemento del diagrama, por ejemplo, configurar autenticación y
autorización en el servidor web protegerá de posibles amenazas y la herramienta lo
tendrá en cuenta a la hora de calcularlas. Además, saldrán amenazas repetidas. Es
decir, se tendrán menos amenazas.

Un ejemplo puede ser el siguiente, aunque lo puedes modelar de forma diferente según
consideres:

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el
Software
Nombre:

Figura 21. Posible diagrama DFD de la aplicación

La herramienta Threat modeling tool 2016 tiene dos vistas:

» Una de diseño para dibujar el diagrama DFD de la aplicación.


» Una de análisis que calcula las amenazas automáticamente y permite incluir las
salvaguardas manualmente.

Selección de vitas

Figura 22. Vistas Threat analysis and modeling tool 2014

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el
Software
Nombre:

Una vez dibujado el diagrama anterior en la herramienta (u otro que consideres


adecuado para vuestro diseño) produce un análisis automático por cada elemento de la
lista de componentes definidos en el diseño mediante el método STRIDE, tomando
como base la siguiente matriz siguiente:

Figura 23. Relación entre las amenazas del método STRIDE y los elementos de un diagrama DFD

Cuando se selecciona la vista de análisis, la herramienta mostrará las amenazas


sugeridas para el diagrama de flujo de datos dibujado, donde al clicar en cada una de
ellas nos permite introducir las salvaguardas que consideremos y el análisis DREAD del
paso de la metodología.

Figura 24. Vista análisis Threat analysis and modeling tool

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el
Software
Nombre:

Antes es necesario cargar la plantilla descargable de la plataforma: caso1.tb7 (este


archivo se dejará en el foro, se enviará a las carpetas de descarga o se descarga desde el
siguiente enlace:
http://descargas.unir.net/escueladeingenieria/05 Seguridad_del_Software/caso1.rar

Y cargarla mediante el menú Aply template, según la figura:

Aplicación de Plantilla

Figura 25. Aplicación de plantilla

Valorar las amenazas

Una vez que tenemos identificada la lista de amenazas, el siguiente paso consiste en
puntuarlas de acuerdo al riesgo que suponen. Esto nos permitirá priorizar las
actuaciones a efectuar para mitigar el riesgo.

Para ello utilizaremos el método DREAD (Damage, Reproducibility, Exploitability,


Affected, DIscoverability), en castellano: Daño potencial, Reproductividad,
Explotabilidad, Usuarios afectados y Descubribilidad. El riesgo se puede cuantificar
como el resultado de multiplicar la probabilidad de que la amenaza se produzca, por el
daño potencial de esta:

Riesgo = Probabilidad x Impacto potencial= (R+E+DI) x (D+A) = PxI

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el
Software
Nombre:

Cada valor se cuantifica con un valor entre 1 y 3. En la herramienta se incluye este


análisis modificando las pestañas DREAD (Damage, Reproducibility, Exploitability,
Affected, DIscoverability) a valores de high, medium y low. Hay que realizarlo para
todas las amenazas.

Figura 26. Significado de cada componente valoración del método DREAD.

Se rellena después para cada amenaza la siguiente tabla en la que se incluye un


ejemplo:

Probabilidad Impacto P I Riesgo


de ocurrencia potencial (I)
(P)
Amenaza R / E / DI D/A (R+E+DI) (D+A) PxI
Inyección de ·/2/2 3/3 7 6 42
comandos
SQL

Figura 27. Cálculo riesgo.

Deberás incluir en la memoria esta tabla rellena con al menos 15 de las amenazas
obtenidas de la de la herramienta Threat analysis and modeling tool 2016. Se valorará
que se implemente en idioma español. En la herramienta deberán estar analizadas
todas.

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el
Software
Nombre:

Salvaguardas

Una vez calculado el riesgo con el método DREAD hay que incluir en la herramienta
manualmente para cada una las salvaguardas que ayuden a mitigarlas.

Si se quiere un catálogo más completo de salvaguardas consultar el Libro II de la


Metodología MAGERIT:
http://administracionelectronica.gob.es/pae_Home/pae_Documentacion/pae_Metod
olog/pae_Magerit.html#.WTj48mjyjIV

También se puede utilizar como guía el siguiente diagrama:

Figura 28. Salvaguardadas aplicación web

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el
Software
Nombre:

También se puede usar la siguiente tabla de salvaguardas del método STRIDE:

Amenazas Propiedad Salvaguardas


Spoofing identity Autenticación Procesos de autenticación, autorización y
(suplantación de auditoría (AAA): hash, firma digital.
identidad) Protección de secretos.
Protección de secretos.
No almacenamiento de secretos.
Single sign on.
IPSEC
Tempering with Integridad Procesos de AAA: hash, firma digital.
data Códigos de autenticación de mensajes.
(manipulación de Firmas digitales.
datos) Protocolos resistentes a la manipulación.
Listas de control de accesos ACL.
Repudiation No repudio Procesos de autenticación: hash, firma digital.
(repudio) Procesos de auditoría.
Sellado de tiempo.
Information Confidencialidad Procesos de AAA: hash, firma digital.
disclosure Protección de secretos.
(revelación de No almacenamiento de secretos.
información) Protocolos seguros.
Encriptado.
Denial of service Disponibilidad Procesos de AAA: hash, firma digital.
(Denegación de Listas de control de acceso ACL.
servicio) Calidad de servicio.
Elevation of Autorización Listas de control de acceso ACL.
privilege Control de acceso basado en roles.
(elevación de Trabajar con el mínimo privilegio.
privilegios) Validación de entradas.
Figura 29. Salvaguardas método STRIDE.

TEMA 2 – Actividades Universidad Internacional de La Rioja (UNIR)

También podría gustarte