Mexingsof 05 T 3 Trab
Mexingsof 05 T 3 Trab
Mexingsof 05 T 3 Trab
Apellidos:
Seguridad en el Software
Nombre:
Objetivos
Actividades 1
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Descripción de la actividad
Caso práctico
Actividades 2
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Actividades 3
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Actividades 4
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
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.
Tened en cuenta que nos encontramos en la fase análisis de requisitos del SDLC,
identificando requisitos funcionales y de seguridad. Una vez identificados y
comprendidos los objetivos de seguridad procederemos a realizar el modelado de
amenazas conforme a método explicado en la clase magistral de este tema,
«modelado de amenazas», que se resume en el siguiente diagrama:
1. Modelado de la aplicación
© Universidad Internacional de La Rioja (UNIR)
Actividades 5
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Los requisitos que se establecen para los actores, tanto humanos como de otro tipo,
son los siguientes:
Los clientes deben poder buscar productos y realizar sus pedidos utilizando la
tienda web o llamando a la oficina de ventas.
Los agentes de ventas pueden conceder descuentos a los clientes
Los administradores pueden modificar y eliminar la información del cliente y del
producto.
La base de datos deberá copiarse periódicamente a una ubicación de un tercero,
Proveedor de servicios IT, para propósitos de recuperación ante desastres.
Los eventos del sistema se almacenarán de forma periódica en un servidor de log
centralizado de la compañía. Se transmitirán de forma cifrada y con protección
de su integridad.
Esto nos ayuda a identificar tres actores humanos del sistema: clientes, agentes de
ventas y administradores. Entre los actores no humanos se pueden incluir procesos
que respaldan periódicamente los datos a la ubicación de Proveedor de servicios IT,
procesos de almacenamiento de log, etc.
Se asigna un identificador único a cada actor. Se utiliza para poder realizar una
referencia cruzada de los actores y su nivel de confianza con los puntos de entrada y
los activos.
Actividades 6
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Id Nombre Descripción
1 Cliente anónimo usuario del Cliente que se ha conectado al sitio web de la compañía, pero
sitio Web no ha proporcionado credenciales válidas.
2 Usuario con credenciales de Usuario que se ha conectado al sitio web de la compañía y ha
inicio de sesión válidas iniciado sesión utilizando credenciales válidas.
3 Usuario con credenciales de Usuario que se ha conectado al sitio web de la compañía que
inicio de sesión no válidas está intentando iniciar sesión con credenciales no válidas.
4 Agente de ventas Usuario que puede crear usuarios en el sitio web de la
compañía y ver su información personal.
5 Administrador del servidor El administrador del servidor de bases de datos administra la
de base de datos base de datos del sitio web de la compañía.
6 Administrador del sitio web El administrador del sitio web que puede configurar y
administrar el sitio web de la compañía.
7 Proceso del usuario del Proceso que en el servidor web que ejecuta código de usuario
servidor Web y se autentica contra el servidor de base de datos.
8 Usuario de lectura de la Cuenta de usuario utilizada para acceder a la base de datos
base de datos en modo lectura.
9 Usuario de lectura/escritura Cuenta de usuario utilizada para acceder a la base de datos
de la base de datos en modo lectura y escritura
10 Proceso de Back-up Proceso que realiza una copia periódica de la base de datos
en una ubicación de un tercero.
11 Proceso de realización de Proceso que realiza el pago de los pedidos con tarjeta de
pagos. crédito.
12 Proceso de Proceso que realiza el almacenamiento de los eventos del
almacenamiento log sistema en el servidor centralizado de almacenamiento de
logs de la compañía.
Actividades 7
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Actividades 8
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Actividades 9
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
La matriz de control de acceso a los datos indica los derechos y privilegios (Create
(C), Read (R), Update (U) o Delete (D)) que los actores tendrán sobre los diferentes
tipos de datos del sistema.
Usuarios (roles)
Administrador Cliente Agente ventas
Datos de pedidos
Datos de tarjeta de crédito
Actividades 10
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Deberás completar la tabla con los derechos y privilegios (Create (C), Read (R),
Update (U) o Delete (D)) que los actores tendrán sobre los diferentes tipos de
datos del sistema.
Los usuarios se conectarán a la aplicación web a través del puerto del puerto 443
(https). La aplicación web se conectará a la base de datos del servidor SQL a través
del puerto 1433 (mediante TCP / IP). Cuando los usuarios usan un protocolo https
sobre el puerto 443, el certificado SSL también se considera un componente y
necesitará estar protegido contra amenazas de falsificación, robo e integridad.
Actividades 11
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
1.4.2.
© Universidad Internacional Definir
de La los puntos
Rioja (UNIR) de entrada
Los puntos de entrada son aquellos elementos que incorporan la entrada del
usuario y definen las interfaces a través de las cuales, los potenciales agentes
maliciosos pueden interactuar con la aplicación con el objetivo de introducir datos
Actividades 12
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
con carácter malicioso. Para atacar una aplicación, deben existir puntos de
entrada, por lo tanto, constituyen una fuente potencial de amenaza. Cada uno
debe ser explícitamente identificado y salvaguardado. Los puntos de entrada en una
aplicación web pueden incluir cualquier página que tenga en cuenta la entrada del
usuario.
Puntos de entrada
ID Nombre Descripción Actores
1 Puerto HTTPS El sitio web de la compañía «Librería On-Line (1), (2), (3), (4)
SA» es solamente accesible a través del
protocolo TLS. Todas las páginas dentro del
sitio web están en capas desde este punto de
entrada.
1.1 Página principal Página de presentación del sitio web de la
de la tienda compañía «Librería On-Line SA». Es el punto
de entrada para todos los usuarios, tanto los
maliciosos como los que no.
1.2 Página de Inicio Los clientes y agentes de ventas utilizan esta
de Sesión página para iniciar sesión en el sitio web de
la compañía «Librería On-Line SA».
1.2.1 Funcionalidad La función de inicio de sesión acepta las
de Inicio de credenciales suministradas por el usuario y
Sesión las compara con las de la base de datos.
1.3 Página de La página utilizada para realizar búsquedas.
búsqueda
© Universidad Internacional
1.4 de La Página
Rioja (UNIR) de Página donde se configuran las preferencias
preferencias de los usuarios
1.5 Página de Página para la administración del catálogo de
administración productos
Actividades 13
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Los puntos de salida son aquellos elementos que muestran información desde el
sistema. Los puntos de salida también incluyen procesos que extraen datos del
sistema. Los puntos de salida pueden ser la fuente de fuga de información y deben
estar igualmente protegidos. Algunos de los puntos de salida identificados en la
tienda web de la compañía «Librería On-Line SA», son los siguientes:
Puntos de entrada
ID Nombre Descripción Actores
1 Página de resultados La página utilizada para presentar los resultados de las
de búsqueda búsquedas.
2 Página de preferencias Página donde se muestran las preferencias de los
usuarios.
3 Página de Catalogo de Página que presenta los resultados de la administración
producto del catálogo de productos.
4 Procesos tarjetas de Procesos de verificación de tarjetas de crédito y
crédito realización de pagos.
5 Procesos de copia de Proceso que realiza una copia periódica de la base de
© Universidad Internacional de La Rioja (UNIR)
seguridad datos a una ubicación de un tercero.
6 Proceso de Proceso que realiza el almacenamiento de los eventos del
almacenamiento log sistema en el servidor centralizado de almacenamiento
de log de la compañía.
Actividades 14
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Dependencias Externas
I Descripción
D
1 Servicio de copia periódica de la base de datos a una ubicación de un tercero.
2 Servidor que almacena de los eventos del sistema en el servidor centralizado de
almacenamiento de log de la compañía.
3 Servicio de verificación de tarjetas de crédito y realización de pagos
Actividades 15
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Para la realización del DFD se utilizará la herramienta Threat Análisis 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 videos:
Actividades 16
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Vista de Diseño
Elementos del
diagrama DFD
Actividades 17
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Una vez en esta vista, hay que empezar a realizar el diagrama DFD conforme a todos
los datos obtenidos en las etapas anteriores de forma que sea acorde a la topología
lógica indicada en la figura 2. En el cuadro de la derecha «Stencil» están los
diferentes elementos que se pueden elegir para realizar el diagrama, con más
extensión que lo indicado en el resumen de la figura 3.
2. Identificación de Amenazas
Actividades 18
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
algún formulario para introducir más información como podría ser las salvaguardas
que la mitiguen y su justificación.
Vista de análisis
Actividades 19
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Figura 7. Relación entre las amenazas del método STRIDE y los elementos de un diagrama DFD.
Actividades 20
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Accede al enlace a través del aula virtual o desde la siguiente dirección web:
http://descargas.unir.net/escueladeingenieria/05
Seguridad_del_Software/caso1.rar
Aplicación de Plantilla
Una vez realizado el análisis automático de las amenazas hay que documentarlas,
para ello hay que rellenar la tabla siguiente. Hay rellenarla manualmente con cada
una de las amenazas obtenidas con la herramienta, indicando su objetivo y las
técnicas de ataque. Se adjunta un ejemplo.
© Universidad Internacional de La Rioja (UNIR)
Descripción de la Inyección de comandos SQL
amenaza
Objetivo Componente de acceso a base de datos
Técnicas de El atacante introduce comandos SQL en el campo usuario utilizado para
ataque formar una nueva sentencia SQL.
Actividades 21
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Descripción de la
amenaza
Objetivo
Técnicas de
ataque
Una vez que tenemos identificada la lista de amenazas, el siguiente paso consiste en
puntuarlas de acuerdo con el riesgo que suponen. Esto nos permitirá priorizar las
actuaciones a efectuar para mitigar el riesgo.
Para poder realizar una adecuada valoración del riego de las amenazas es
fundamental el contar con los datos obtenidos de los patrones de ataque.
Para ello, debes mapear los patrones de ataque obtenidos de Common Attack
Pattern Enumeration and Classification (CAPEC™)
(https://capec.mitre.org/about/index.html) con las 15 amenazas seleccionadas
para análisis de las proporcionadas por la herramienta.
Actividades 22
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Actividades 23
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
3. Mitigación
Actividades 24
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Tabla 8. Salvaguardas.
Como ayuda para seleccionar las salvaguardas a incluir en la aplicación para mitigar
las amenazas, se incluye el siguiente dibujo:
Actividades 25
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Actividades 26
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Disponible:
http://administracionelectronica.gob.es/pae_Home/pae_Documentacion/
pae_Metodolog/pae_Magerit.html#.U2_oe2CKB2E
4. Validación
Rediseñar.
Usar salvaguardas estándar.
Usar salvaguardas personalizadas.
Aceptar el riesgo de acuerdo con las políticas de la organización y requisitos del
sistema.
Actividades 27
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Extensión
En la solución a enviar, solo se deberán incluir las tablas que se piden rellenar a lo
largo del enunciado de la actividad y el mapeo de los patrones de ataque. La
extensión máxima de la actividad será de 14 páginas.
Rúbrica
Actividades 28
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:
Actividades 29