calidad y seguridad en procesos de desarrollo de software

18
GOS4i + IN2- Ingeniería de la Información – 2005 IN2- Ingeniería de la Información www.IN2.es Grupo Open Source para la Integración de Tecnología Calidad y Seguridad en Procesos de Desarrollo de Software Roger Carhuatocto roger.carhuatocto [ AT ] in2.es V1.0 - 18.Marzo.2005

Upload: conferencias-fist

Post on 26-Dec-2014

1.442 views

Category:

Technology


6 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Calidad y Seguridad en Procesos de Desarrollo de Software

GOS4i + IN2- Ingeniería de la Información – 2005

IN2- Ingeniería de la Informaciónwww.IN2.es

Grupo Open Source para la Integración de Tecnología

Calidad y Seguridad en Procesos de Desarrollo de Software

Roger Carhuatocto roger.carhuatocto [ AT ] in2.es

V1.0 - 18.Marzo.2005

Page 2: Calidad y Seguridad en Procesos de Desarrollo de Software

[2] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Objetivos

• Reflexión sobre problema de la seguridad en las organizaciones y cómo se están resolviendo. 

• Énfasis en el Proceso de Desarrollo de Sofware (Preventivo)• Énfasis en las metodologías de aseguramiento de la calidad y seguridad en procesos 

de desarrollo de software como actividad preventiva.

Page 3: Calidad y Seguridad en Procesos de Desarrollo de Software

[3] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Situación actual ­ Análisis

• Inseguridad• Seguridad reactiva

– Antivirus– IDS– Firewall– Honeypots, etc..

• El Testing de Seguridad es usado para identificar vulnerabilidades sobre Producto Final.

• Se soluciona los “bugs”, no el origen de ellos• ¿Dónde está el origen?

Page 4: Calidad y Seguridad en Procesos de Desarrollo de Software

[4] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Definimos la Problemática 

• El Sistema de Gestión de Seguridad– Personas– Software, Hardware y otro tipo de infraestructura– Procesos de Negocio– Información

• ¿Cuál es el elemento más débil?• ¿A dónde se enfocan las actuales soluciones?• Aplicar Paretto 80%­20%

Page 5: Calidad y Seguridad en Procesos de Desarrollo de Software

[5] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Replanteando el problema – Enfoque Sistémico

• Busquemos el Origen del Problema de la Seguridad• Usar un nuevo enfoque.• Enfoque Sistémico del Problema de la Seguridad (Enfoque Holístico)

– Considerar todos los elementos: Personas, SW, HW, Información, Red, etc.– Nos centramos en el elemento que nos interesa, el Software. Es el elemento más débil?– Análisis del Proceso de Desarrollo SW en lugar del Producto resultante– Definir acciones(seguridad preventiva) en cada etapa del Proceso de Desarrollo de SW

Page 6: Calidad y Seguridad en Procesos de Desarrollo de Software

[6] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Enfoque Sistémico al Problema de Seguridad ­ Conclusión

• Sólo estamos tomando acciones preventivas sobre el producto final (testing de seguridad)

• Estamos descuidando la seguridad en otras etapas del Desarrollo de SW• Existen elementos externos al proceso de Desarrollo de SW que se deben 

considerar, ellos proporcionan ayuda en la prevención:– Sistemas de Gestión de la Calidad– Otros procesos de negocio (no de Desarrollo de SW) como Atención al Cliente, 

Facturación, Contabilidad, etc.– Recomendaciones y Metodologías– Herramientas y Técnicas

• Bugtracking• CVS• Wiki• Nmap, Nessus, etc….• Testing tools, etc…

Page 7: Calidad y Seguridad en Procesos de Desarrollo de Software

[7] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Campos de Acción de QA y Security

SeguridadPreventiva

Seguridad Reactiva

Seguridad Lógica

Desarrollo de Software y

Aplicaciones

Networking, Sistemas e Infraestructura

Sistemas de GestiónProcesos Negocio

Page 8: Calidad y Seguridad en Procesos de Desarrollo de Software

[8] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Revisión del Ciclo de vida del Software

Análisis Diseño TransiciónConstrucción

•Se define el “Cómo?”•Objetivos:

•Prototipeo•Diseño de Sistema•Diseño de Objetos•Diseño de Componentes

•Herramientas: •CRC Cards: 

•Class, Responsibility, Collaboration•Diagrama de Secuencias y Clases•Definición Servicios Comunes:

•Logging, Security, Exception, Etc.•Modelamiento de Amenazas por Casos de Uso•Patrones de Diseño Funcional•Patrones de Diseño de Seguridad (por Amenazas)

•Input Validator Pattern•Aspect Oriented Programming•Exception Manager Pattern•Secure Logger Pattern

•Construcción, integración y testing•Interativo

•A producción•La seguridad aparece•Plan Operativo•Monitorización•Respuesta a incidentes

•Se define el “Qué?”•Qué aporta Seg. a Negocio?

•Herramientas: •Requerimientos•Analisis Func y No­Func.•Casos de Uso

Page 9: Calidad y Seguridad en Procesos de Desarrollo de Software

[9] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Ciclo de vida de los IDS (es reactivo!)

Pentest Vulnerability detection

Exploit Attack pattern

Integrate in IDS

The learning process = Four days (aprox.)

Page 10: Calidad y Seguridad en Procesos de Desarrollo de Software

[10] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Evolución de la Gestión de la Calidad Inspección• Separación, después de la producción, de los productos 

defectuosos de los no defectuosos.• Buscar la ausencia de defectos.• Auditoria final, reuniones para solucionar defectos.

Control de Proceso• Anticipación dentro de los procesos de desarrollo.• No se espera al final de la cadena de producción.• Se introduce el concepto de proceso.

Gestión Integral de la Calidad• la Calidad debe abarcar a todas las áreas de las empresa que 

intervienen en la realización del producto.

Calidad Total• Forma de gestión de una organización centrada en la calidad 

basada en la participación de todos sus miembros y que apunta al éxito a largo plazo por medio de la satisfacción del cliente y a proporcionar beneficios para todos los miembros de la organización y para la sociedad.

P

P

P

P

Page 11: Calidad y Seguridad en Procesos de Desarrollo de Software

[11] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Técnicas más usadas para explotar vulnerabilidades

Page 12: Calidad y Seguridad en Procesos de Desarrollo de Software

[12] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Origen de las Vulnerabilidades por Aplicación

Page 13: Calidad y Seguridad en Procesos de Desarrollo de Software

[13] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Predicciones en Software Security

Page 14: Calidad y Seguridad en Procesos de Desarrollo de Software

[14] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Origen de Defectos en SW – No es código!!

Page 15: Calidad y Seguridad en Procesos de Desarrollo de Software

[15] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

ROI en Security Software

Page 16: Calidad y Seguridad en Procesos de Desarrollo de Software

[16] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Metodologías y Estándares

• De Seguridad– http://www.fistconference.org/data/presentaciones/estandaresymetodologiasdeseguridad.pdf – Conferencias FIST, Nov. 2003 – Vicente Aceituno

• Generales– Anexo­Estandares­QA­SEC_RCARHUATOCTO­v1.pdf

Page 17: Calidad y Seguridad en Procesos de Desarrollo de Software

[17] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Conclusiones Finales

• Enfoque Sistémico (Holísitico)• Aplicable a todo el proceso de desarrollo de SW, 

incluye a la etapa de toma de requerimientos• Usar Metodologías y Estándares de propósito 

general y de seguridad

Page 18: Calidad y Seguridad en Procesos de Desarrollo de Software

[18] GOS4i + IN2- Ingeniería de la Información – 2005 Calidad y Seguridad en Procesos de Desarrollo de Software

Dire StraitsThe evolut ion of sof tware opens new vistas for business... and the bad guys.April 2004, By GARY MCGRAW & GREG HOGLUNDhttp:/ / infosecuritymag.techtarget.com/ ss/ 0,295796,sid6_iss366_art684,00.html

Introduct ion to Software SecurityDate: Nov 2, 2001 By Gary McGraw, John Viega.ht tp:/ / www.awprofessional.com/ art icles/ printerf riendly.asp?p= 23950

Centro de Desarrollo Microsoft Seguridadhttp:/ / www.microsoft .com/ spanish/ msdn/ centro_recursos/ security/ default .asp

Alan Cox on writ ing better sof tware By Basheera Khan - Thursday, 07 October 2004http:/ / www.pingwales.co.uk/ sof tware/ cox- on- better- sof tware.html

Referencias