ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Seguridad software

diver1217Ensayo7 de Febrero de 2021

5.622 Palabras (23 Páginas)233 Visitas

Página 1 de 23

Asignatura

Datos del alumno

Fecha

Seguridad en el Software

Apellidos: Gutiérrez Monroy

14 de diciembre de 2020

Página  de 19

Nombre: Roberto

[pic 1]

[pic 2]

TITULO:

MODELADO DE AMENAZAS

ALUMNO:

ROBERTO GUTIÉRREZ MONROY

MAESTRIA:

 Ingeniería de Software y Sistemas Informáticos

PROFESOR:

M.G.T.I. OMAR URIEL DOMINGUEZ MENDOZA

FECHA:

14 DICIEMBRE DE 2020

Introducción Modelado de Amenazas[pic 3]

El modelado de amenazas es el proceso informático mediante el cual las amenazas potenciales, vulnerabilidades estructurales o la ausencia de salvaguardas adecuadas, se pueden identificar, enumerar y priorizar, la técnica permite la protección de sistemas, aplicaciones, redes y servicios [1].

Radica en facilitar un análisis de forma sistemática para saber la inclusión de controles o defensas requeridas; tomando en cuenta la operatividad del sistema a diseñar, la postura y ejecución probable de un atacante, etapas o aplicaciones más activas, o más vulnerables; lo anterior atiende  las cuestiones que surgen durante el desarrollo de un software seguro, tales como "¿Dónde soy más vulnerable a un ataque?" , "¿Cuáles son las amenazas más relevantes?" y "¿Qué debo hacer para protegerme contra estas amenazas?" .

El modelado es un análisis por medio de diagramas de flujo de datos, en el que se muestra el funcionamiento del sistema (gráficamente). Aplica un marco para ayudar a encontrar y corregir problemas de seguridad. Los sistemas que se publican sin un modelado de amenazas previo ponen en peligro a clientes y organizaciones. Esta técnica la puede aplicar cualquier persona que sepa cómo funciona su sistema y que tenga conocimientos prácticos sobre seguridad de la información.

La técnica se divide en cuatro fases diferentes, cada una de las cuales contiene pasos importantes para ayudarle a crear un diagrama de flujo de datos y a analizarlo en busca de posibles amenazas.

[pic 4]

  1. Diseño        - Recopilar todos los requisitos del sistema y crear un diagrama de flujo de datos.
  2. Interrupción- Se aplica el modelado de amenazas al diagrama de flujo de datos buscando los posibles problemas de seguridad.
  3. Corrección- Atención de los problemas detectados; se aplican la atención correcta de controles de seguridad.
  4. Verificación-        Se verifica que los controles de seguridad cumplan con su función específica, se reinicia el ciclo para implementar nuevas funciones o correcciones de errores.[pic 5]

INDICE TEMATICO

Metodologías Existentes                                                                        4

        Correctness by Construction (CbyC)                                                4

Security Development Lifecycle (SDL)                                        5

Metodología STRIDE                                                                6

Planteamiento. Caso de Estudio                                                        8

Diagrama DFD                                                                                10

Matriz STRIDE                                                                                11

Análisis DREAD                                                                                13

Salvaguardas                                                                                18

Conclusiones                                                                                        19

Referencias                                                                                        19

INDICE FIGURAS

Figura 2. Etapas Metodología Correctness by Construction                        4

Figura 3. Etapas Security Development Lifecycle                                        5

Figura 4. Etapas Metodología STRIDE                                                7

Figura 5. Diagrama DFD                                                                        10

INDICE TABLAS

Tabla 1. Matriz STRIDE                                                                        11

Tabla 2. Análisis DREAD                                                                13

Tabla 3. Salvaguardas                                                                        18

Metodologías Existentes[pic 6]

Por definición metodología, es una serie de técnicas de rigor científico que se aplican sistemáticamente durante un proceso de investigación para alcanzar un resultado teóricamente valido[2].

Su aplicación diversa en los sistemas informáticos y desarrollo en la seguridad; permite entender el tipo de amenazas o vulnerabilidades de un sistema a través de los ojos de los atacantes, identificando la confiabilidad de los accesos, la jerarquización de privilegios y estableciendo posibles rutas o puntos de amenazas con el fin de mitigarlas, administrarlas o eliminarlas por completo.

El Modelar las amenazas permite justificar que características de control y seguridad deberán ser implementadas o robustecidas a fin de proteger los activos informáticos. El objetivo, reducir el número de debilidades y vulnerabilidades del software y su creciente dependencia ante amenazas; su efectiva dependerá del enfoque y aplicación requerida.

 

Existen diversas metodologías de análisis, Algunas de las más utilizadas por sus características aplicativas y efectividad son:

Correctness by Construction (CbyC)

Método efectivo en el desarrollo de software que requiere de un nivel de seguridad critico comprobable, su meta es obtener un cumulo de defectos mínimos y una alta asertividad al cambio; es decir, se busca que sea complicado introducir errores y que estos se remuevan una vez introducidos al sistema de total y efectivamente del software o sistema.  Desde el principio en el desarrollo del software, se establecen los parámetros y funciones correctas, con elementos de alta rigurosidad de seguridad; definiciones detalladas del comportamiento del sistema bajo un esquema sólido y verificable. Su desarrollo establece la ejecución de las siguientes fases:[pic 7]

Figura 2. Etapas CbyC

  • Requerimientos Establece el propósito, funciones y necesidades del usuario, diagramas de clases y definiciones operativas.
  • Diseño de Alto Nivel Descripción interna del sistema (distribución de funcionalidad, estructura de bases de datos, mecanismos para las transacciones y comunicaciones).
  • Especificación del Software Documenta las especificaciones de interfaz de usuario, niveles superiores y prototipos de validación.
  • Especificación de Pruebas Ejecución de pruebas a valores limites, de comportamiento y de requerimientos no funcionales.
  • Fase de Diseño Detallado Conjunto de módulos y procesos y la función respectiva según la jerarquía y procesamiento establecido.
  • Fase de Especificación de los Módulos Define el estado y el comportamiento por cada módulo de software tomando en cuenta el flujo de información.
  • Fase Codificación Pruebas de análisis estático al código para eliminar tipos de errores; en caso de ser necesario,  modificaciones, correcciones o adiciones al código.
  • Construcción del Software Desarrollo de tipo ágil; estructura básica del sistema con todas las interfaces y módulos de comunicación;  funcionalidad limitada que se incrementara en cada interacción del ciclo.

Security Development Lifecycle (SDL)

Tipo de metodología propuesta por Microsoft, conformada por 16 actividades enfocadas a robustecer la seguridad en el desarrollo del software. Propone fases de seguridad, análisis estático, dinámico, planes y procedimientos de respuesta a incidentes. Su característica principal es el modelado de amenazas por medio de la inspeccion del código fuente, a fin de encontrar los puntos débiles del sistema los cuales sean vulnerables ataques o intenciones de falla maliciosas. La aplicación de esta metodología se conforma por las siguientes fases:[pic 8]

...

Descargar como (para miembros actualizados) txt (35 Kb) pdf (2 Mb) docx (886 Kb)
Leer 22 páginas más »
Disponible sólo en Clubensayos.com