Desarrollo de software seguro: una visión con...

44
C. Santander, 101. Edif. A. 2º I E-08030 Barcelona (Spain) I Tel.: +34 93 305 13 18 I Fax: +34 93 278 22 48 C. Arequipa, 1 I E-28043 Madrid (Spain) I Tel: +34 91 763 40 47 I Fax: +34 91 382 03 96 [email protected] I www.isecauditors.com Desarrollo de software seguro: una visión con OpenSAMM Vicente Aguilera Díaz Internet Security Auditors 09/05/2012 Zaragoza

Transcript of Desarrollo de software seguro: una visión con...

C. Santander, 101. Edif. A. 2º I E-08030 Barcelona (Spain) I Tel.: +34 93 305 13 18 I Fax: +34 93 278 22 48

C. Arequipa, 1 I E-28043 Madrid (Spain) I Tel: +34 91 763 40 47 I Fax: +34 91 382 03 96

[email protected] I www.isecauditors.com

Desarrollo de software seguro: una visión con OpenSAMM

Vicente Aguilera Díaz

Internet Security Auditors 09/05/2012 – Zaragoza

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 2

Desarrollo de software seguro: una visión con OpenSAMM

¿Quién soy?

• CISA, CISSP, CSSLP, ITIL, CEH|I, ECSP|I, PCI ASV, OPSA,OPST

• Socio y Director del Dpto. de Auditoría en Internet Security Auditors

• OWASP Spain Chapter Leader

• Miembro del Consejo Técnico Asesor de la revista RedSeguridad

• Miembro del Jurado de los Trofeos de la Seguridad TIC

• Colaborador en distintos proyectos (OWASP Testing Guide, WASC

Threat Classification, OISSG ISSAF, WASC Articles, etc.)

• Ponente en congresos del sector (ExpoQA, IGC, RedIRIS, OWASP,

FIST, HackMeeting, ISACA, Respuestas SIC, AdwysCon, Infosecura,

etc.)

• Publicación de vulnerabilidades (Oracle, Facebook, Gmail, etc.) y

artículos en medios especializados (SIC, RedSeguridad, WASC, etc.)

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 3

Desarrollo de software seguro: una visión con OpenSAMM

Agenda

1. Necesitamos construir software seguro

2. El SDLC seguro es la clave

3. OpenSAMM como estrategia de seguridad

4. Aplicando el modelo OpenSAMM

5. Conclusiones

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 4

Desarrollo de software seguro: una visión con OpenSAMM

1│

Necesitamos construir software

seguro

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 5

Desarrollo de software seguro: una visión con OpenSAMM

“In the 80’s we wired the world with cables and in the 90’s we

wired the world with computer networks. Today we are wiring

the world with applications (software). Having a skilled

professional capable of designing, developing and deploying

secure software is now critical to this evolving world.”

Mark Curphey

Director & Product Unit Manager, Microsoft Corporation

Founder of Open Web Application Security Project (OWASP)

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 6

Desarrollo de software seguro: una visión con OpenSAMM

¿Porqué resulta ahora crítico?

• Las aplicaciones web resultan muy atractivas

• La trinidad de los problemas:

• Conectividad

• Complejidad

• Extensibilidad

… y existen estándares de obligado cumplimiento! (PCI

DSS, SOX, GLB Act, HIPAA, FISMA, …)

Nuestra vida cotidiana depende del software

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 7

Desarrollo de software seguro: una visión con OpenSAMM

Todo es posible en la web…

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 8

Desarrollo de software seguro: una visión con OpenSAMM

Escenario actual

Fuente: WASC Web Hacking Incident Database

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 9

Desarrollo de software seguro: una visión con OpenSAMM

Escenario actual

Fuente: WASC Web Hacking Incident Database

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 10

Desarrollo de software seguro: una visión con OpenSAMM

Escenario actual

Fuente: WASC Web Hacking Incident Database

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 11

Desarrollo de software seguro: una visión con OpenSAMM

¿Qué es software seguro?

• Diseñado, construido y probado para ser seguro

• Continúa ejecutándose correctamente bajo un ataque

• Diseñado con el fallo en mente

Romper algo es más fácil que diseñar algo para que no

pueda ser roto

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 12

Desarrollo de software seguro: una visión con OpenSAMM

¿Qué es software seguro?

Improving Web Application Security: Threats and countermeasures

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 13

Desarrollo de software seguro: una visión con OpenSAMM

2│

El SDLC seguro es la clave

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 14

Desarrollo de software seguro: una visión con OpenSAMM

El SDLC seguro es la clave

• SDLC basado en principios de seguridad

• No existe una fórmula única para todas las

organizaciones

• Requiere involucrar los siguientes factores:

• Personas

• Procesos

• Tecnología

SDLC genérico

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 15

Desarrollo de software seguro: una visión con OpenSAMM

Buenas prácticas

• Microsoft SDL (Secure Development Lifecycle)

• OWASP CLASP (Comprehensive, Lightweight

Application Security Process)

• Cigital Software Security Touchpoints

• OWASP OpenSAMM (Software Assurance Maturity

Model)

• BSIMM (Building Security In Maturity Model)

• SSE CMM (Secure Software Engineering Capability

Maturity Model)

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 16

Desarrollo de software seguro: una visión con OpenSAMM

3│

OpenSAMM como estrategia de

seguridad

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 17

Desarrollo de software seguro: una visión con OpenSAMM

OWASP OpenSAMM

• Marco abierto para ayudar a las organizaciones a

diseñar e implementar una estrategia para la creación

de software seguro

• Los recursos facilitados por OpenSAMM ayudan a:

• Evaluar las prácticas de seguridad existentes

• Demostrar mejoras concretas

• Definir y medir actividades relacionadas con la

seguridad

• Construir un programa de aseguramiento de la

seguridad en software

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 18

Desarrollo de software seguro: una visión con OpenSAMM

OWASP OpenSAMM

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 19

Desarrollo de software seguro: una visión con OpenSAMM

Gobierno - Estrategia y métricas

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 20

Desarrollo de software seguro: una visión con OpenSAMM

Gobierno - Política y cumplimiento

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 21

Desarrollo de software seguro: una visión con OpenSAMM

Gobierno - Educación y orientación

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 22

Desarrollo de software seguro: una visión con OpenSAMM

Construcción – Evaluación de amenazas

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 23

Desarrollo de software seguro: una visión con OpenSAMM

Construcción – Requisitos de seguridad

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 24

Desarrollo de software seguro: una visión con OpenSAMM

Construcción – Arquitectura de seguridad

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 25

Desarrollo de software seguro: una visión con OpenSAMM

Verificación – Revisión de diseño

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 26

Desarrollo de software seguro: una visión con OpenSAMM

Verificación – Revisión de código

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 27

Desarrollo de software seguro: una visión con OpenSAMM

Verificación – Pruebas de seguridad

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 28

Desarrollo de software seguro: una visión con OpenSAMM

Implementación – Gestión de vuln.

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 29

Desarrollo de software seguro: una visión con OpenSAMM

Implementación – Securización del entorno

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 30

Desarrollo de software seguro: una visión con OpenSAMM

Implementación – Habilitación operativa

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 31

Desarrollo de software seguro: una visión con OpenSAMM

4│

Aplicando el modelo OpenSAMM

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 32

Desarrollo de software seguro: una visión con OpenSAMM

Aplicando OpenSAMM

• Realizar una revisión inicial

• Medir las prácticas de la organización frente las

prácticas de seguridad definidas por el modelo

• Definir el nivel de madurez actual

• Dos estilos de revisiones

• Ligero

• Detallado

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 33

Desarrollo de software seguro: una visión con OpenSAMM

Aplicando OpenSAMM

• Construir programas de aseguramiento de la seguridad

• Crear una hoja de ruta o usar una plantilla

• Realizar las actividades prescritas para alcanzar el

nivel de madurez esperado

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 34

Desarrollo de software seguro: una visión con OpenSAMM

Hojas de trabajo para las revisiones

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 35

Desarrollo de software seguro: una visión con OpenSAMM

Creando tarjetas de

calificaciones

• Permite demostrar la evolución

• Basado en las puntuaciones

asignadas a cada práctica de

seguridad

• Puede resultar tan simple como

un conjunto de 12 puntuaciones

para un momento concreto

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 36

Desarrollo de software seguro: una visión con OpenSAMM

Hoja de ruta

• Define la estrategia de

implementación

• Es una estrategia a largo plazo

• Depende de las prioridades de cada

organización

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 37

Desarrollo de software seguro: una visión con OpenSAMM

¿Cuáles son los beneficios?

• Permite implementar las mejores prácticas utilizadas

hoy y aprovechar la experiencia en su implementación

• Proporciona una manera de revisar el estado de una

organización y priorizar los cambios

• Proporciona una manera de construir un programa de

seguridad en el desarrollo mediante iteraciones

claramente definidas

• Permite definir y medir actividades relacionadas con la

seguridad

• Permite demostrar mejoras concretas en la seguridad

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 38

Desarrollo de software seguro: una visión con OpenSAMM

5│

Conclusiones

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 39

Desarrollo de software seguro: una visión con OpenSAMM

Conclusiones

• La mayoría de los ataques se producen en la capa de

aplicación

• Necesitamos invertir más en la protección de nuestras

aplicaciones

• Necesitamos crear software seguro

• Necesitamos adoptar una estrategia de seguridad

para la creación de software

• El software seguro es el resultado de múltiples

actividades

• Requiere involucrar personas, procesos y tecnología

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 40

Desarrollo de software seguro: una visión con OpenSAMM

Conclusiones

• Mejorar la seguridad del software implica un cambio

cultural en la organización

• Debemos cambiar la forma en la que trabaja nuestra

organización

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 41

Desarrollo de software seguro: una visión con OpenSAMM

6│

Referencias

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 42

Desarrollo de software seguro: una visión con OpenSAMM

Referencias

• Improving Web Application Security:

• OWASP OpenSAMM:

• The Ten Best Practices for Secure Software Development:

http://www.isc2.org/uploadedFiles/(ISC)2_Public_Content/Certificat

ion_Programs/CSSLP/ISC2_WPIV.pdf

http://msdn.microsoft.com/en-us/library/ff649874.aspx

http://www.opensamm.org

• PCI Data Security Standard

https://www.pcisecuritystandards.org

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 43

Desarrollo de software seguro: una visión con OpenSAMM

?

preguntas / comentarios / sugerencias

Muchas gracias por su atención!

© I n t e r n e t S e c u r i t y A u d i t o r s • M a y o 2 0 1 2 • P. 44

Desarrollo de software seguro: una visión con OpenSAMM

Su Seguridad es Nuestro Éxito

Vicente Aguilera Díaz Director Departamento Auditoría

Internet Security Auditors [email protected]

C. Santander, 101. Edif. A. 2º

E-08030 Barcelona (Spain)

Tel.: +34 93 305 13 18

Fax: +34 93 278 22 48

C. Arequipa, 1

E-28043 Madrid (Spain)

Tel.: +34 91 763 40 47

Fax: +34 91 382 03 96

www.isecauditors.com