Tema 5 Flashcards
¿Qué es una metodología de desarrollo?
Conjunto de filosofías, fases, procedimientos, reglas, técnicas, herramientas, documentación y aspectos de formación para los desarrolladores de SI (Maddison,1983)
¿Cuál es el objetivo de desarrollar software de manera sistemática?
- Mejores aplicaciones. Un mejor proceso de desarrollo que identifique salidas (o productos intermedios) de cada fase de forma que se pueda planificar y controlar un proyecto.
- Un proceso estándar en la organización.
Las metodologías de desarrollo de software seguro más extendidas hoy día:
► Microsoft
• Iniciativa Trustworthy Computing
► OSSTMM (Open Source Security Testing Methodology Manual )
► OWASP (Open Web Application Security Project)
► OASIS Web Application Security (WAS) project
¿Qué conceptos abarca la Metodología Microsoft?
• Confianza
• Estabilidad
• Seguridad en la plataforma, que se sustenta sobre 5 pilares básicos:
– Aislamiento y flexibilidad
– Calidad
– Autenticación
– Autorización y control de accesos – Orientación y formación
¿Cuáles son los cuatro principios de la Metodología Microsoft?
La aplicaciones deben ser:
- Seguras
- Privadas
- Fiables
- Deben garantizar la integridad de negocio
La seguridad debe abarcar todas las fases. Por tanto, el software debe
ser:
► Seguro por diseño
• Ninguna parte de la aplicación queda fuera del control de seguridad
► Seguro por defecto
• La aplicación recién instalada tiene un comportamiento suficientemente seguro
• Un ejemplo es el gestor de áreas de exposición de SQL Server
► Seguro en la distribución
• Informar al usuario sobre la seguridad de la aplicación
• Mecanismos de modificación de las características de seguridad
• Crear parches de seguridad tan pronto como se detecte una nueva vulnerabilidad.
► Seguro en las comunicaciones
¿Qué frase comprende Modelo de Amenazas (Threat Model)?
– Identificar activos de la aplicación
– Crear información general sobre la arquitectura
– Descomponer la aplicación
– Identificar, documentar y clasificar las amenazas
– Identificar las vulnerabilidades
¿Qué comprende el modelo Modelo STRIDE?
– Spoofing (suplantación)
– Tampering (manipulación)
– Repudiation (no repudio)
– Information disclosure (divulgación de información) – Denial of service (denegación de servicio)
– Elevation of privileges (elevación de privilegios)
¿Qué comprende la Directiva dread?
– Damage - Daño potencial
– Reproducibility - Facilidad de reproducción
– Exploitability - Capacidad de explotación
– Affected users - Usuarios afectados
– Discoverability - Dificultad para su descubrimiento
¿Cómo se calcula el riesgo DREAD?
Riesgo dread = (D + R + E + A + D) / 5
Cada riesgo se calcula como un promedio de los cinco parámetros
anteriores, valorados de 0 a 10
Recomendaciones para la defensa con Microsoft:
– Adoptar el principio mínimo privilegio
– Usar las defensas en profundidad
– No confiar en los datos introducidos por el usuario
– Utilizar opciones predeterminadas seguras
– No depender de la seguridad por medio de ocultación
– Validar todo acceso al sistema
– Asumir que los sistemas externos no son seguros
– Reducir el área de exposición
– Cometer errores de forma segura
– No olvidar que el alcance de la seguridad lo define su punto más débil – Si no se utiliza, hay deshabilitarlo
¿Qué significa OSSTMM?
Open Source Security Testing Methodology Manual (Manual de Metodología de Pruebas de Seguridad de Código Abierto)
¿Qué es OSSTMM?
El Manual de la Metodología Abierta de Comprobación de la Seguridad es uno de los estándares de factor más utilizado en Auditorías de Seguridad para revisar la Seguridad de los Sistemas desde Internet.
¿Qué fases comprende OSSTMM?
- Seguridad de la información
- Seguridad de los procesos
- Seguridad en las tecnologías de Internet
- Seguridad en las comunicaciones
- Seguridad inalámbrica
- Seguridad física
¿Qué significa OWASP?
Open Web Application Security Project
¿Qué objetivo tiene OWASP?
- De libre acceso y utilización
- Que pueda ser utilizada como material de referencia por parte de los arquitectos de, software desarrolladores, fabricantes y profesionales de la seguridad
- Todos ellos involucrados en el diseño, desarrollo, despliegue y verificación de la seguridad de las aplicaciones y servicios web
OWASP pretende que se desarrolle mejor software mediante:
- El desarrollo de herramientas útiles para identificar los fallos y corregirlos
- La educación de los grupos involucrados, para evitar que se produzcan fallos
- El fomento de la discusión de problemas a través de una comunidad abierta
- La definición de estándares
¿Cuáles son los patrocinadores principales de OWASP?
Foundstone, Deloitter, Visa, Unisys
¿Cuáles son los proyectos más destacados de OWASP?
• OWASP Top Ten Project: Representa un consenso a nivel global sobre las 10 vulnerabilidades web
más importantes
• WebGoat: Herramienta destinada a la educación y que permite practicar y explotar las vulnerabilidades más frecuentes de un sitio Web
• WebScarab: Es un framework para el análisis de aplicaciones que utilizan como base los protocolos HTTP y HTTPS
Las guías más relevantes de OWASP:
• Development Guide
– Guía para la construcción de aplicaciones web seguras
• Code Review Guide
– Guía para la revisión de código para la garantía de software seguro
• Testing Guide
– Guía y herramientas para pruebas de intrusiones y garantía de software seguro
OWASP: Principios básicos de la seguridad de cualquier aplicación o servicio
web
- Validación de la entrada y salida de información
- Diseños simples
- Utilización y reutilización de componentes de confianza
- Defensa en profundidad
- Verificación de privilegios
- Ofrecer la mínima información
¿Qué directivas se deben seguir si se guardan datos de tarjeta de crédito?
Debe seguir las directivas de PCI al pie de la letra. Se recomienda encarecidamente que no almacene datos de tarjetas de crédito.
¿Qué es phishing?
El phishing es una tergiversación donde el criminal utiliza ingeniería social para aparecer como una identidad legitima. Hasta un 5% de los usuarios parecen ser atraídos en este tipo de ataques.
OWASP está dividida conceptualmente en dos grandes partes:
- Marco de trabajo de pruebas en el Ciclo de Vida del Desarrollo del Software (SDLC Testing Framework)
- Vulnerabilidades más comunes en Aplicaciones Web es una guía y no un documento formal que seguir al «pie de la letra»
El framework de pruebas de OWASP está estructurado de la siguiente forma:
Fase 1: Antes de empezar el desarrollo Fase 2: Durante el diseño y definición Fase 3: Durante el desarrollo Fase 4: Durante la implementación Fase 5: Mantenimiento y operación
La Guía de Pruebas de OWASP contempla y analiza en detalle las pruebas que hay que realizar para los siguientes grupos de vulnerabilidades:
- Recolección de información
- Pruebas de gestión de configuración
- Pruebas de autenticación
- Pruebas de gestión de sesiones
- Pruebas de autorización
- Pruebas de validación de datos
- Pruebas de denegación de servicio
- Pruebas de servicios web
- Pruebas de AJAX
Se estima que hoy en día la mayor parte de ataques contra aplicaciones web se aprovechan de vulnerabilidades presentes en:
La aplicación web.
¿Cuál es un peligro comúnmente asociado al uso de sesiones?
Reutilización, falsificación o intercepción de sesión.
Los datos sobre autorización y roles del cliente una vez este ha sido identificado deben ser almacenados en:
Sesiones