Objetivos del Seminario:
- Presentar a los asistentes los aspectos de seguridad
en las diferentes etapas del desarrollo de software.
- Señalar las debilidades más comunes de las aplicaciones
y los fundamentos de una programación segura para defender
la misma de ataques avanzados
- Proveer a los desarrolladores los conocimientos sobre
las mejores prácticas actuales para el desarrollo
seguro de las aplicaciones de software.
- Proveer al project manager, de los conocimientos necesarios
para analizar, cuantificar y calificar los riesgos de
seguridad de un proyecto de software.
Diseñado para:
- Líderes de Proyecto de desarrollo, Desarrolladores,
Analistas de QA, Analistas Funcionales, Oficiales de Seguridad
Informática, Auditores.
Temario:
1.Introducción a la seguridad en el desarrollo de software
- Casos reales de vulnerabilidades y su impacto.
- Problemática de las aplicaciones inseguras.
- Derribando mitos.
- Participación de Seguridad Informática en el desarrollo del software
2.Seguridad en la etapa
de análisis
- Pautas de seguridad en el análisis de requerimientos.
3. Seguridad en el diseño de software
- Análisis de Riesgo.
- Árboles de ataque.
- Threat Modeling.
- Principios de reducción de superficie de ataque.
- Principio del menor privilegio.
- Separación de privilegios.
- Manejo seguro de errores
.
- Criterio de defensa en profundidad.
- Criterio del “Fallo Seguro”.
- Definición de mensajes de error.
- Prevención de divulgación de información.
- Manejo de información sensible
.
- Almacenamiento seguro.
- Transferencia segura.
- Encripción y Hashes.
- Interacción con bases de datos.
- Interacción con Firewalls e IDS´s.
- Auditoría y Logging.
- Diseño de autenticación.
- Diseño de perfiles y niveles de acceso.
- Diseño de protección contra Denial of
Service.
- (D.O.S).
- Usabilidad de la seguridad.
- Pautas para la documentación de seguridad .
- Mitigación de riesgos a través de la documentación.
- Buenas prácticas en la documentación
de seguridad
.
4. Seguridad en la codificación de software
- Vulnerabilidades más comunes. ¿Cómo prevenirlas?.
- Buffer Overflow.
- SQL Injection.
- Cross Site Scripting (XSS).
- Errores de Canonización.
- Information disclosure.
- Escalamiento de privilegios.
- Errores en el manejo de sesiones.
- Prevención de DOS en la codificación.
5. Testing de seguridad de software
- Técnicas de testing de seguridad.
- Testing de seguridad vs testing funcional.
- Testing de seguridad basado en riesgo .
- Revisión de código .
- Testing de seguridad en el ciclo de vida del software.
- Herramientas de testing de seguridad .
- Métricas de seguridad de software .
- CMM y desarrollo seguro .
- OWASP Application Security Metrics Project.
6. Implementación segura de aplicaciones
- Diseño de implementación segura.
- Manejo de Defaults seguros.
- Consejos de seguridad en aplicaciones Windows.
- Consejos de seguridad en aplicaciones Unix/ Linux.
- Instalación y hardening de sofware de base.
- Topología de la instalación.
- Aseguramiento de S.O y software de base.
- Prevención de revelación de información.
- Seguridad en el proceso de implementación.
- Separación de ambientes.
- Administración de la implementación.
- Manejo de Releases y parches.
- Firma de código.
Inscripción
Contáctese con Jose Manuel Solans (jmsolans@cybsec.com)
Tel/Fax: (+34 93) 218 3666..