Diseño de aplicaciones web siguiendo el concepto hack-resilient. Respuestas SiC
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Diseño de aplicaciones web siguiendo el concepto hack-resilient. Respuestas SiC

on

  • 409 views

Internet Security Auditors estuvo presente en el Respuestas SIC de Junio de 2011. Vicente Aguilera, director de auditoría de Internet Security Auditors y presidente del capítulo español de la ...

Internet Security Auditors estuvo presente en el Respuestas SIC de Junio de 2011. Vicente Aguilera, director de auditoría de Internet Security Auditors y presidente del capítulo español de la OWASP, realizó una presentación destacando los aspectos más importantes del desarrollo seguro de aplicaciones. También desgranó los contenidos más relevantes del marco de ciclo de vida de desarrollo seguro de aplicaciones esponsorizado por la OWASP, OWASP ASVS (Application Security Verification Standard).

Statistics

Views

Total Views
409
Views on SlideShare
409
Embed Views
0

Actions

Likes
0
Downloads
11
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Diseño de aplicaciones web siguiendo el concepto hack-resilient. Respuestas SiC Presentation Transcript

  • 1. 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 Pº. de la Castellana, 164-166. Entlo. 1ª I E-28046 Madrid (Spain) I Tel: +34 91 788 57 78 I Fax: +34 91 788 57 01 info@isecauditors.com I www.isecauditors.com Diseño de aplicaciones web siguiendo el concepto hack-resilient Vicente Aguilera Díaz 21/06/2011 – Barcelona Internet Security Auditors 22/06/2011 – Madrid
  • 2. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 2 Diseño de aplicaciones web siguiendo el concepto hack-resilient Agenda 1. Concepto hack-resilient 2. La importancia de la seguridad en la capa de aplicación 3. Áreas clave en la seguridad de aplicaciones 4. Conclusiones y recomendaciones 5. Referencias
  • 3. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 3 Diseño de aplicaciones web siguiendo el concepto hack-resilient 1│Concepto hack-resilient
  • 4. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 4 Diseño de aplicaciones web siguiendo el concepto hack-resilient
  • 5. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 5 Diseño de aplicaciones web siguiendo el concepto hack-resilient ¿Qué entendemos como software seguro?
  • 6. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 6 Diseño de aplicaciones web siguiendo el concepto hack-resilient 2│La importancia de la seguridad en la capa de aplicación
  • 7. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 7 Diseño de aplicaciones web siguiendo el concepto hack-resilient ¿Por qué ha cobrado tanta relevancia? • Proliferación de modelos de negocio en la web. • Las aplicaciones web resultan muy atractivas. • Según Gartner: • El 66% de las aplicaciones son vulnerables. • El 75% de los ataques se focalizan en la capa de aplicación. • Nuevos requerimientos normativos.
  • 8. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 8 Diseño de aplicaciones web siguiendo el concepto hack-resilient ¿Por qué ha cobrado tanta relevancia?
  • 9. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 9 Diseño de aplicaciones web siguiendo el concepto hack-resilient Todo es posible en la Web…
  • 10. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 10 Diseño de aplicaciones web siguiendo el concepto hack-resilient ¿Qué podemos hacer para protegernos? • Conocer las amenazas y las soluciones • Definir niveles de riesgo/confianza • Verificar los requerimientos de seguridad • Adoptar una iniciativa de seguridad en el ciclo de vida
  • 11. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 11 Diseño de aplicaciones web siguiendo el concepto hack-resilient OWASP ASVS Application Security Verification Standard
  • 12. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 12 Diseño de aplicaciones web siguiendo el concepto hack-resilient 3│Áreas clave en la seguridad de aplicaciones
  • 13. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 13 Diseño de aplicaciones web siguiendo el concepto hack-resilient Áreas con requerimientos de seguridad 1 Arquitectura de seguridad 2 Autenticación 3 Gestión de sesiones 4 Control de acceso 5 Validación de entradas 6 Codificación de salida 7 Criptografía 8 Gestión de errores y logging 9 Protección de datos 10 Seguridad en la comunicación 11 Seguridad en HTTP 12 Configuración de seguridad 13 Búsqueda de código malicioso 14 Seguridad interna
  • 14. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 14 Diseño de aplicaciones web siguiendo el concepto hack-resilient A1. Arquitectura de seguridad • Thinking Evil™ • Establecer un conjunto de principios y máximas de seguridad. • Contemplar los aspectos de seguridad en la documentación.
  • 15. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 15 Diseño de aplicaciones web siguiendo el concepto hack-resilient A2. Autenticación • Autenticación de múltiples factores. • Negar el acceso a procesos automáticos. • Utilizar controles anti-fraude y monitorizar las alertas. • Controles de autenticación centralizados. • No relajar los controles (operativas de gestión de cuentas). • Informar del último acceso.
  • 16. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 16 Diseño de aplicaciones web siguiendo el concepto hack-resilient A3. Gestión de sesiones • No reinventar la rueda. • No confiar en los identificadores de sesión recibidos. • Establecer un tiempo de vida (inactividad, absoluto). • Destruir las sesiones en la desconexión (logout). • Proteger y regenerar los identificadores de sesión. • Asociar los identificadores de sesión con otro token. • Utilizar atributos de seguridad en las cookies.
  • 17. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 17 Diseño de aplicaciones web siguiendo el concepto hack-resilient A4. Control de acceso • Recoger los requerimientos en la política de seguridad. • Elaborar una matriz de control de acceso. • Limitar el acceso a los recursos en función de la identidad del usuario y su rol. • Evitar que el mecanismo sea sobrepasado. • Restricciones sobre las operativas de administración.
  • 18. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 18 Diseño de aplicaciones web siguiendo el concepto hack-resilient A5. Validación de entradas • Sistema centralizado. • Canonicalización de forma previa a la validación. • En caso de fallo, rechazar los datos de entrada. • Establecer el charset (como UTF-8). • Validaciones de seguridad siempre en la parte del servidor. • Firewall de aplicación.
  • 19. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 19 Diseño de aplicaciones web siguiendo el concepto hack-resilient A6. Codificación de salida y escape • Conocer el contexto. • Los controles deben implementarse en la parte del servidor. • Escapar/codificar los caracteres inseguros.
  • 20. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 20 Diseño de aplicaciones web siguiendo el concepto hack-resilient A7. Criptografía • Política explícita de gestión de claves. • Utilizar módulos criptográficos aprobados y validados contra estándares (FIPS 140-2). • Almacenar contraseñas de forma segura.
  • 21. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 21 Diseño de aplicaciones web siguiendo el concepto hack-resilient A8. Gestión de errores y logging • Gestión de errores estructurada vs funcional. • Mensajes de error no detallados. • En caso de fallo, ir a un estado seguro. • Sincronizar los componentes de logging. • Los eventos relevantes deben ser registrados. • Proteger los logs. • Apoyarse en herramientas de auditoría de log para su análisis.
  • 22. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 22 Diseño de aplicaciones web siguiendo el concepto hack-resilient A9. Protección de datos • Establecer una política que defina como controlar el acceso. • Eliminar la información tras el tiempo de retención de datos. • Tecnologías de cifrado, tokenización, firewalls de base de datos. • Conocer las normativas de cumplimiento (PCI DSS, LOPD, PII, HIPAA, etc.)
  • 23. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 23 Diseño de aplicaciones web siguiendo el concepto hack-resilient A10. Seguridad en la comunicación • Establecer conexiones TLS y no permitir conexiones inseguras. • Autenticar las conexiones a sistemas externos (principio de mínimo privilegio). • Los errores en las conexiones TLS (backend) deben ser registrados. • Seguir un estándar en las implementaciones TLS.
  • 24. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 24 Diseño de aplicaciones web siguiendo el concepto hack-resilient A11. Seguridad en HTTP • Analizar los usos de las cabeceras HTTP. • No transmitir información innecesaria. • No utilizar la cabecera HTTP «Referer» en validaciones de seguridad. • Únicamente habilitar métodos HTTP seguros. • Utilizar tokens asociados a las cookies de sesión.
  • 25. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 25 Diseño de aplicaciones web siguiendo el concepto hack-resilient A12. Configuración de seguridad • Almacenar en una ubicación protegida. • Sin el acceso a la configuración no permitir el acceso a la aplicación. • Registrar los cambios en la configuración.
  • 26. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 26 Diseño de aplicaciones web siguiendo el concepto hack-resilient A13. Búsqueda de código malicioso • Verificar la integridad del código. • Emplear tecnologías que permitan detectar malware.
  • 27. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 27 Diseño de aplicaciones web siguiendo el concepto hack-resilient A14. Seguridad interna • Interfaces simples. • Ofrecer protección sobre los recursos compartidos. • Proteger la información y políticas utilizadas por los controles de acceso.
  • 28. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 28 Diseño de aplicaciones web siguiendo el concepto hack-resilient 4│Conclusiones y recomendaciones
  • 29. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 29 Diseño de aplicaciones web siguiendo el concepto hack-resilient Conclusiones • Necesitamos crear software seguro. • Aplicación segura ≠ código seguro. • Debemos conocer todos los riesgos y cómo mitigarlos. • Incrementar la inversión en la protección de la capa de aplicación.
  • 30. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 30 Diseño de aplicaciones web siguiendo el concepto hack-resilient Recomendaciones • Clasificar las aplicaciones y definir requerimientos mínimos de seguridad. • Verificar el cumplimiento de los requerimientos de seguridad. • Crear el software pensado en los casos de abuso. • Huir de la solución «todo en uno». • Seguir el principio de defensa en profundidad.
  • 31. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 31 Diseño de aplicaciones web siguiendo el concepto hack-resilient Recomendaciones • Identificar los marcos regulatorios. Ayudar a su cumplimiento. • Otorgar a los requerimientos de seguridad la misma prioridad que a los requerimientos funcionales. • Mantenerse informado sobre las amenazas existentes. • Consultar las soluciones tecnológicas sin menospreciar las open-source. • Potenciar la cultura de la seguridad en la organización.
  • 32. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 32 Diseño de aplicaciones web siguiendo el concepto hack-resilient 5│Referencias
  • 33. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 33 Diseño de aplicaciones web siguiendo el concepto hack-resilient Referencias • Improving Web Application Security: • Business Models on the Web: • OWASP Application Security Verification Standard: https://www.owasp.org/index.php/Category:OWASP_Application_S ecurity_Verification_Standard_Project http://msdn.microsoft.com/en-us/library/ff649874.aspx http://digitalenterprise.org/models/models.html • PCI Data Security Standard https://www.pcisecuritystandards.org
  • 34. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 34 Diseño de aplicaciones web siguiendo el concepto hack-resilient Referencias • Controles técnicos de seguridad para la protección de aplicaciones web (SIC, nº 94. 04/2011): http://www.isecauditors.com/downloads/prensa/downloads/prensa/ SIC94_Seguridad_Aplicaciones_OWASP.pdf • Servicio Vigilancia Anti-Malware (SIC, nº 83. 02/2009) http://www.isecauditors.com/downloads/prensa/SIC- 83_Servicio_Vigilancia_Anti_Malware.pdf • Fundamentos de tokenización y su aplicación en el cumplimiento de PCI DSS (Red Seguridad, nº 49. 11/10) http://www.isecauditors.com/downloads/prensa/RedSeguridad_49_ Tokenizacion.pdf
  • 35. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 35 Diseño de aplicaciones web siguiendo el concepto hack-resilient ? dudas / comentarios / sugerencias ¡Muchas gracias!
  • 36. © I n t e r n e t S e c u r i t y A u d i t o r s • J u n i o 2 0 1 1 • P. 36 Diseño de aplicaciones web siguiendo el concepto hack-resilient Su Seguridad es Nuestro Éxito Vicente Aguilera Díaz Director Departamento Auditoría Internet Security Auditors vaguilera@isecauditors.com c/ Santander, 101. Edif. A. 2º E-08030 Barcelona (Spain) Tel.: +34 93 305 13 18 Fax: +34 93 278 22 48 Pº. de la Castellana, 164-166. Entlo. 1ª E-28046 Madrid (Spain) Tel.: +34 91 788 57 78 Fax: +34 91 788 57 01 www.isecauditors.com