Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

SSL instalado... ¿estamos realmente seguros?

795 views

Published on

Presentación sobre HTTPS para la StarTechConf 2013.

Temas cubiertos:
- Vulnerabilidades en suites de cifrado
- Forward Secrecy
- Temas a considerar respecto de Autoridades Certificadoras
- Consejos práticos

  • Be the first to comment

SSL instalado... ¿estamos realmente seguros?

  1. 1. ¿Estamos realmente seguros? Cristián Rojas Especialista en Seguridad de Software
  2. 2. Vulnerabilidades en suites de cifrado
  3. 3. Suites de cifrado Servidor RSA-RC4-SHA Algoritmo de intercambio de llave Cliente Algoritmo de encriptación Algoritmo MAC
  4. 4. Llave de sesión
  5. 5. EXP-RC2-CBC-MD5 EDH-RSA-DES-CBC-SHA AECDH-NULL-SHA
  6. 6. Mitigación admin@secureserver ~$ openssl ciphers -v 'AES !EXP !RC2 !MD5 !DES !aNULL !eNULL' String de configuración ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_ciphers "AES !EXP !RC2 !MD5 !DES !aNULL !eNULL";
  7. 7. Forward Secrecy
  8. 8. La sesión es segura, pero... Transmisiones anteriores de la sesión INCLUYENDO negociación de llave
  9. 9. Implementando Forward Secrecy DHE DHE DHE +210%* ??? ECDHE * +27% * Indica diferencias en tiempo de respuesta respecto a RSA Fuente: Vincent Bernat, “SSL/TLS & Perfect Forward Secrecy”
  10. 10. Autoridades Certificadoras (CA)
  11. 11. Eligiendo una CA ● ● ● ● Postura frente a la seguridad Enfoque de negocios Herramientas de manejo de certificados Soporte de clientes
  12. 12. SSL is not fucked. CA's are. Autoridad Certificadora
  13. 13. Certificate Pinning restserver1.startechconf.com restserver2.startechconf.com restserver3.startechconf.com
  14. 14. Recomendaciones para el servidor
  15. 15. Ojo con la cadena de certificados CA-1 Certificado servidor Certificado CA intermedia Root CA Certificado Raíz CA CA-1 Root CA Cadena de confianza verificada
  16. 16. TLSv1.2 TLSv1.1 TLSv1.0 SSLv3 SSLv2 Usar protocolos de TLSv1.0 hacia arriba
  17. 17. Proveer una buena lista de suites de cifrado ● ● ● ● Usar algoritmos de encriptación fuertes (128 bits o más) No usar EXPORT ni algoritmos obsoletos Usar ECDHE/DHE para implementar F0rward Secrecy Dar preferencia a la lista de suites de cifrado del servidor
  18. 18. Recomendaciones para la aplicación
  19. 19. Encriptarlo todo ● ● ● Asegurar las cookies (mediante el flag Secure) Usar HTTP Strict Transport Security (HSTS) en lo posible Asegurarse de no usar contenido mezclado (ej. HTML encriptado, pero CSS y JS sin encriptar)
  20. 20. Deshabilitar cache de contenidos sensibles ● ● La cache queda en el disco duro sin encriptar Ejemplos: – Datos de perfil – Cartolas – Mensajes personales
  21. 21. Poner atención a otros aspectos de seguridad ;) Fuente: OWASP Top 10 2013 – https:/ /www.owasp.org
  22. 22. Herramientas y links ● ● ● Qualys SSL Test: https:/ /www.ssllabs.com/ssltest/ Ivan Ristic, “OpenSSL Cookbook”: http:/ /goo.gl/vYAYHS Josh Bleecher Snyder, “Why app developers should care about SSL pinning”: http:/ /goo.gl/fTcLm
  23. 23. Muchas gracias y manténganse seguros ;) http:/ /injcristianrojas.github.io injcristianrojas@gmail.com @InjenieroBarsa

×