Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

2014-03 - RootedCon 2014 - Secure Communication System

1.734 visualizaciones

Publicado el

Charla sobre sistemas de comunicaciones seguros ofrecida en la RootedCon 2014 por @linuxmaniac y @pepeluxx

Publicado en: Tecnología
  • Sé el primero en comentar

2014-03 - RootedCon 2014 - Secure Communication System

  1. 1. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March Secure Communication System
  2. 2. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 2 ¿ Quiénes somos ? José Luis Verdeguer Ingeniero Técnico de Sistemas Informáticos por la UA Máster en Desarrollo y Prog. de Aplicaciones y Serv. Web Director de Sistemas en Zoon Suite (operador de VoIP) Autor del libro Hacking y Seguridad VoIP (de 0xWORD) Víctor Seva Mantenedor de Debian (VoIP/Lua team) Desarrollador del proyecto Kamailio Ingeniero de Software en Sipwise Kamailio Award (2012) - empaquetado para Debian @pepelu xx @linuxmani ac
  3. 3. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 3 - Escuchas telefónicas - Sistemas de espionaje - Diferentes soluciones - Propuestas ¿ De qué va esta charla ?
  4. 4. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 4 Escuchas telefónicas Eavesdropping
  5. 5. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 5 Escuchas telefónicas
  6. 6. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 6
  7. 7. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 7 Escuchas telefónicas
  8. 8. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 8 Escuchas telefónicas
  9. 9. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 9 Escuchas telefónicas
  10. 10. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 10 Sistemas de espionaje ECHELO N
  11. 11. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 11 Sistemas de espionaje
  12. 12. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 12 Sistemas de espionaje Carnivore: encargado de capturar la información Packeteer: convierte los paquetes interceptados en textos coherentes Coolminer: analiza los datos obtenidos DRAGON WARE
  13. 13. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 13 DRAGON WARE Sistemas de espionaje
  14. 14. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 14 Sistemas de espionaje NARUSINSIGH T
  15. 15. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 15 Sistemas de espionaje
  16. 16. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 16 Sistemas de espionaje
  17. 17. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 17 Sistemas de espionaje SITE L
  18. 18. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 18 Sistemas de espionaje
  19. 19. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 19 Sistemas de espionaje
  20. 20. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 20 ¿ Es posible establecer una comunicación de voz segura ? “no se puede tener un 100% de seguridad y también un 100% de privacidad y ningún inconveniente” Barack Obama
  21. 21. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 21 ¿ Qué soluciones encontramos en el mercado ?
  22. 22. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 22 Soluciones: hardware Cryptophone - Diferentes tipos de terminales - Proporciona llamadas cifradas de extremo a extremo Problemas … - Altos costes (1.500€ / terminal) - Necesidad de un terminal por interlocutor
  23. 23. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 23 Soluciones: software Zfone - Fundado por Phil Zimmermann - Basado en tecnología de VoIP - Usa ZRTP para las comunicaciones - Disponible en Windows, MAC OS y Linux
  24. 24. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 24 Soluciones: software RedPhone - Creado por Moxie Marlinspike - Basado en tecnología de VoIP - Usa ZRTP para las comunicaciones Inconvenientes … - Registra tu nº de teléfono en el sistema (validación por SMS) - Funciona sólo con Android - Sólo disponible en ciertos países
  25. 25. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 25 Soluciones: software RedPhone -Teóricamente, el servidor no tiene acceso a las claves -No tendrá acceso a las conversaciones -Pero sabrá: · Tu número de teléfono · Tu ubicación geográfica · A quién has llamado · Cuándo · Duración de la llamada
  26. 26. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 26 Soluciones: software
  27. 27. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 27 Soluciones: software SilentCircle Servicios cifrados: - Envío de documentos: DOC, PDF, XLS, imágenes, … - Llamadas telefónicas, videoconferencias, … Servicio de pago dirigido a: - Particulares - Empresas - Gobiernos
  28. 28. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 28 ¿ Son seguras nuestras comunicaciones ? Skype permite cifrar las comunicaciones, pero …
  29. 29. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 29 ¿ Y Whatsapp ? ¿ Es seguro ? ¿ Son seguras nuestras comunicaciones ?
  30. 30. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 30 ¿ Qué podemos hacer ? La única forma de controlar nuestras comunicaciones es mediante un sistema propio: - Sin telcos involucrados - Sin intervención de terceros En definitiva: - Nuestro propio sistema de comunicaciones
  31. 31. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 31 Nuestro proyecto
  32. 32. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 32 Nuestro proyecto Para ello usaremos Debian con: Kamailio + Mediaproxy-ng -Kamailio: Proxy SIP para la señalización -Mediaproxy-ng: Proxy RTP para la sesión media - NAT: problemas one-audio - Uso como relay -Medidas para incrementar la seguridad: • Uso de TLS para la señalización • Forzado de SRTP para el media • configuración en cliente
  33. 33. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 33 Un poco de teoría sobre VoIP … Protocolo SIP(RFC 3261): * unicast / multicast *audio, video, IM, presence Fases en una comunicación de voz: - Fase 1: Signaling (establecer, modificar, cancelar sesión) - Fase 2: Media Session (transmisión de audio)
  34. 34. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 34 Fases en una comunicación SIP Fase 1: Signaling - Comunicación TCP, UDP o SCTP - Posibilidad de cifrado (TLS) -Sintaxis similar al HTTP - Headers, Body - Request / Response - Auth Digest - REGISTER, INVITE, CANCEL, …
  35. 35. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 35 Fases en una comunicación SIP Fase 1: Signaling - Ejemplo de registro, sin cifrado
  36. 36. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 36 Fase 1: Signaling - Ejemplo de registro, con cifrado TLS ofrece seguridad en la capa de transporte Fases en una comunicación SIP
  37. 37. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 37 Fases en una comunicación SIP Fase 2: Media Session - Comunicación RTP (UDP) —> RFC-3350 - Posibilidad de cifrado SRTP —> RFC-3711 - Posibilidad de cifrado ZRTP —> RFC-6189
  38. 38. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 38 Fases en una comunicación SIP Fase 2: Media Session SRTP (RFC-3711) - Soporta el algoritmo AES (Advanced Encryption Standard) - Confidencialidad mediante el cifrado del RTP. - Integridad añadiendo MAC (Message Authentication Code). - MKI (Master Key Identifier) para simplificar el intercambio de claves.
  39. 39. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 39 Fase 2: Media Session ZRTP (RFC-6189) -Describe el establecimiento de un intercambio Diffie-Hellman de claves para el SRTP -Creado por Phil Zimmermann (autor de PGP) -Negocia el intercambio de claves entre dos puntos -Generadas por cada comunicación. Previenen ataques mitm -Comprobación visual del SAS (Short Authentication String) Fases en una comunicación SIP
  40. 40. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 40 Nuestro proyecto
  41. 41. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 41 Nuestro proyecto URL: http://www.securecall.org - Señalización por TLS - Comunicaciones siempre cifradas por SRTP - El usuario es un nick (no se necesita un número de teléfono) - Contraseñas robustas generadas aleatoriamente - Bloqueo automático ante ataques - Detección de escáners SIP - Posibilidad de usar teléfonos IP físicos, móviles o softphones
  42. 42. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 42 Nuestro proyecto URL: http://www.securecall.org -El servidor es un simple proxy (Kamailio + Mediaproxy-ng) -Todo el proyecto implementado con Software Libre - No se almacenan datos personales - No existe ningún registro de llamadas - Es totalmente gratuito
  43. 43. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 43 Nuestro proyecto
  44. 44. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 44 Nuestro proyecto
  45. 45. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 45 Nuestro proyecto DEMO Funcionamiento de nuestro sistema de comunicaciones cifrado
  46. 46. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 46 Mola, ¿ eh ?
  47. 47. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 47 ¿ De verdad pensáis que es seguro ?
  48. 48. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 48 ¿ Qué ha ocurrido ?
  49. 49. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 49 ¿ Qué ha ocurrido ? - En un principio el servidor sólo actuaba como proxy y desviaba el tráfico de audio de un terminal a otro (RELAY). - Había un único canal de comunicación entre los dos interlocutores. Emisor <— CANAL CIFRADO —> Receptor - En el segundo caso, se desvía el tráfico a otro servidor. - Se establecen 2 canales cifrados de comunicación. Emisor <— CANAL 1 CIFRADO —> Servidor Servidor <— CANAL 2 CIFRADO —> Receptor
  50. 50. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 50 Conclusión El único sistema seguro es aquel que controlamos al 100% … Y aún así no podemos estar confiados Por eso, hemos creado una Máquina Virtual con nuestro ’Secure Communication System’ para que cualquiera pueda descargarlo y montar su propio sistema cifrado de comunicaciones.
  51. 51. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 51 ¡ Ahora sí que mola !
  52. 52. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 52 Máquina Virtual -Descarga https://securecall.org/securecall_mysql.bz2 -Requisitos # apt-get install libvirt-bin virt-manager qemu-kvm # adduser USER libvirt libvirt-qemu
  53. 53. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 53 -Modificaciones para hacerla funcionar: # cat /etc/kamailio/README *Para usar la VM tras una NAT hay que redirigir los puertos 5061/tcp y el 30000-50000/udp a la máquina virtual. *Para usar una máquina pública y no la VM, lo mejor es instalar los paquetes y copiar las configuraciones de kamailio. Máquina Virtual
  54. 54. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 54 Curiosidades Ataques recibidos en el transcurso del proyecto (desde Julio/2013 hasta Enero/2014)
  55. 55. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 55 Curiosidades Histórico de ataques
  56. 56. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March Curiosidades 56 Histórico de ataques: por países
  57. 57. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March Curiosidades 57 Histórico de ataques: por IPs (o por “cansinos”)
  58. 58. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 58 Conclusiones finales En esta charla se ha pretendido demostrar que: -Ningún sistema es seguro (por muy bien que nos lo vendan) -Podemos esforzarnos en que las comunicaciones viajen cifradas y un tercero no pueda interceptarlas pero, ¿qué hay del proveedor de servicios? -Si quieres algo fiable, créalo tú mismo … aún así nunca tendrás una garantía del 100%
  59. 59. Rooted CON 2014 6-7-8 Marzo // 6-7-8 March 59 José Luis Verdeguer aka Pepelux @pepeluxx Víctor Seva aka Linuxmaniac @linuxmaniac

×