1 / 34

Aplicaciones Seguras

Aplicaciones Seguras. Leandro Meiners 9 de Noviembre de 2011. Preparativos…. Ejecutar VirtualBox Importar la VM (File Import Appliance o Ctrl+I) Path de la imagen: /opt/BT5R1.ova Directorio para el disco rígido virtual de la imagen: /media/libre/. Temario.

berenice
Download Presentation

Aplicaciones Seguras

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Aplicaciones Seguras Leandro Meiners 9 de Noviembre de 2011

  2. Preparativos… • Ejecutar VirtualBox • Importar la VM (File Import Appliance o Ctrl+I) • Path de la imagen: /opt/BT5R1.ova • Directorio para el disco rígido virtual de la imagen: /media/libre/ Teoría de las Comunicaciones

  3. Temario • Algunas definiciones sobre seguridad • Seguridad en las distintas capas del modelo OSI • Capa Transporte: SSL/TLS • Capa Aplicación: SSH, PGP, S/MIME • Firewalls Teoría de las Comunicaciones

  4. Seguridad de la información La seguridad de la información se entiende como la preservación de las siguientes características: • Confidencialidad: Se garantiza que la información sea accesible sólo a aquellas personas autorizadas a tener acceso a la misma. • Integridad: Se salvaguarda la exactitud y totalidad de la información y los métodos de procesamiento. La integridad incluye la integridad de los datos (el contenido) y el origen de los mismos. • Disponibilidad: Se garantiza que los usuarios autorizados tengan acceso a la información y a los recursos relacionados con la misma, toda vez que lo requieran. Teoría de las Comunicaciones

  5. Teoría de las Comunicaciones

  6. Protocolos: Capas Aplicación SSH, PGP Transporte SSL/TLS Red IPSEC Enlace WEP, WPA, WPA2 Teoría de las Comunicaciones

  7. Capa de Transporte: TLS / SSL

  8. Transport Layer Security (TLS) • Versión actualizada de SSL (Secure Sockets Layer) • La última versión de SSL (Netscape) fue 3.0 • TLS se identifica como SSL v 3.1 • Similar, pero no compatible directamente. • Especificado en RFC 2246 (1999). Extendido posteriormente en RFC 3546 (2003) • Protege una sesión entre cliente y servidor. • Típicamente, HTTP (navegador y web server). • Requiere protocolo de transporte confiable. • Por ejemplo TCP. Teoría de las Comunicaciones

  9. Servicios de Seguridad • Autenticación • del servidor frente al cliente; • opcionalmente, del cliente frente al servidor. • Mediante certificados de clave pública. • Integridad • Mediante MAC y números de secuencia. • Confidencialidad • opcional • Mediante cifrado con algoritmo simétrico. Teoría de las Comunicaciones

  10. Fases de SSL • Una comunicación a través de SSL implica tres fases: • Establecimiento de la conexión y negociación de los algoritmos criptográficos que van a usarse en la comunicación, a partir del conjunto de algoritmos soportados por cada uno de los interlocutores. • Intercambio de claves, empleando algún mecanismo de clave pública y autentificación de los interlocutores a partir de sus certificados digitales. • Cifrado simétrico del tráfico. Teoría de las Comunicaciones

  11. Fases de SSL • Handshake: • Negociación de algoritmos y parámetros. • Autenticación (del servidor o mutua). • Canal seguro para compartir un secreto inicial. • Derivación de claves en cada extremo. • Integridad de todo el intercambio. • Transferencia de datos: • Usa las claves anteriormente derivadas. • Provee integridad. • Opcionalmente, provee confidencialidad. • Autentica el cierre de cada conexión. Teoría de las Comunicaciones

  12. Verificación Certificado Servidor Teoría de las Comunicaciones

  13. Autenticación del cliente Con el propósito de controlar el acceso, el servidor puede requerir la autenticación del cliente, solicitándole su certificado de clave pública y verificando que posea la clave privada. Teoría de las Comunicaciones

  14. Paréntesis: BackTrack y Wireshark • Iniciar la sesión con usuario root y contraseña toor • Iniciar la interfaz gráfica, ejecutando el comando: startx • Ejecutar Wireshark: “Applications  BackTrack InformationGathering Network Analysis Network TrafficAnalysis Wireshark”. • Configurar la captura: “Capture  Options” • Seleccionar la interface • Configurar el filtro (de requerirlo) • Seguir un flujo: con un paquete perteneciendo a la conexión TCP elegir del menú: “Analyze Follow TCP Stream” Teoría de las Comunicaciones

  15. HTTPS en BackTrack (1) • Configurar el servidor web: • Habilitar módulo de SSL: a2enmod ssl • Habilitar sitio web con SSL: a2ensite default-ssl • Con un navegador conectarse e analizar el certificado • Generar un certificado nuevo y configurarlo en el servidor: • Generar la clave privada: opensslgenrsa -des3 -out server.key 1024 • Generar el CSR: opensslreq -new -key server.key -out server.csr • Sacarle la contraseña a la clave: cp server.key server.key.org && opensslrsa -in server.key.org -out server.key • Generar el certificado autofirmado: openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt • Configurar el certificado : cp server.crt /etc/ssl/certs/ssl-cert-snakeoil.pem • Configurar la clave: cp server.key /etc/ssl/private/ssl-cert-snakeoil.key • Reiniciar el servicio: /etc/init.d/apache2 restart Teoría de las Comunicaciones

  16. HTTPS en BackTrack (2) • Con un navegador conectarse y visualizar el certificado. • Configurar Wireshark para que monitoree en la interfaz de loopback por conexiones al puerto 443/tcp (HTTPS). • Conectarse al servidor con un navegador (la URL es https://localhost) • Analizar el tráfico…. • Sugerencia: ¿Qué datos se ven de nivel de aplicación si realizamos el “Follow TCP Stream”? • Repetir el proceso monitoreando el tráfico HTTP (80/tcp), y conectándose a la URLhttp://localhost. Teoría de las Comunicaciones

  17. Capa de Aplicación: SSH

  18. SSH SSH es un protocolo para acceder a máquinas remotas a través de la red de forma segura. • Diseñado para ofrecer una alternativa segura a Telnet y FTP. • Provee las siguientes garantías de seguridad: • Autenticación: El cliente puede verificar que se está conectando al servidor al que indicó. • Confidencialidad: Los datos intercambiados se transmiten usando un cifrado robusto de 128 bits. • Integridad: Se verifica la integridad de los datos intercambiados mediante funciones criptográficas de hash. • Permite redirigir la salida de una aplicación gráfica (X11) a través del canal seguro. • Permite construir “túneles” seguros. Teoría de las Comunicaciones

  19. Fases de SSH • Una comunicación a través de SSH implica tres fases: • Establecimiento de la conexión y negociación de los algoritmos criptográficos que van a usarse en la comunicación, a partir del conjunto de algoritmos soportados por cada uno de los interlocutores. • Intercambio de claves, empleando algún mecanismo de clave pública y autentificación de los interlocutores a partir de sus certificados digitales. • Cifrado simétrico del tráfico. Teoría de las Comunicaciones

  20. Mecanismos de autenticación Teoría de las Comunicaciones

  21. Túneles SSH – Port forwarding • Proteger mi clave plana de FTP Telnet, POP3, IMAP, authSMTP, NNTP...... • Atravesar un firewall dónde sólo el servicio de SSH está permitido • Acceder a servicios TCP internos de una LAN con direcciones privadas Los túneles SSH no permiten reenviar paquetes UDP o protocolos no IP Teoría de las Comunicaciones

  22. Túneles con SSH – SOCKS (dynamic forwarding) • SOCKS es un protocolo de Internet que permite a las aplicaciones Cliente-servidor usar de manera transparente los servicios de un proxy de red. • Para emular un SOCKS server en el puerto 7070: $ ssh –D7070 <user>@server • La aplicación a ser “reenviada” debe ser SOCKS-aware, o hay que usar un “proxifier”. Teoría de las Comunicaciones

  23. SSH en BackTrack • Generar la claves del servicio: sshd-generate • Iniciar el servicio: /etc/init.d/ssh start • Configurar Wireshark para que monitoree en la interfaz de loopback por conexiones al puerto 22/tcp (SSH). • Conectarse al servidor: ssh root@localhost • Analizar el tráfico…. • Sugerencia: ¿Qué datos se ven de nivel de aplicación si realizamos el “Follow TCP Stream”? Teoría de las Comunicaciones

  24. Más Capa de Aplicación: PGP y S/MIME

  25. Seguridad en los correos electrónicos Existen dos esquemas para proveedor seguridad en los correos electrónicos: • PGP (PrettyGoodPrivacy): • Desarrollado por Phil Zimmerman en 1991. • Provee confidencialidad (cifra los correos) y autenticación (firma los correos). • La gestión de claves en PGP se basa en la confianza mutua. • S/MIME (Secure/Multipurpose Internet Mail Extension): • Utiliza certificados X509 y la infraestructura PKI. • Provee confidencialidad (cifra los correos) y autenticación (firma los correos). Teoría de las Comunicaciones

  26. FIREWALLS

  27. ¿Qué es un firewall? • Es una analogía con “Pared Cortafuego” • Es un “separador”: permite controlar el tráfico que entra/sale de la red.

  28. Tipos de Firewalls • Filtrado de Paquetes: Cada paquete que entra o sale de la red es verificado y permitido o denegado dependiendo de un conjunto de reglas definidas por el usuario. • Stateful Packet Inspection: Stateful se refiere a que pueden permitir o denegar sesionesentrantes o salientes tomando en cuenta el estado de las conexiones que el firewall maneja. • Gateways de Circuito: Proxy no-inteligente que reenvía la conexión. • Gateways de Aplicación: Proxy inteligente que “entiende” el protocolo en cuestión. Permite aplicar filtros de “capa 7”. Teoría de las Comunicaciones

  29. Ejercicio Práctico sobre Firewalls El siguiente diagrama de red pertenece a una compañía que tiene su propia página web, y desea recibir correos electrónicos destinados a su dominio. Por motivos de seguridad no desean que los usuarios de la red interna puedan navegar en Internet mediante un NAT sino mediante un proxy. Se pide: • Escribir las reglas básicas y la política de filtrado por defecto que se deben implementar en el “stateful” firewall. Documente todo lo que asume.

  30. Resolución Ejercicio sobre Firewalls Política de filtrado por defecto: DROP Asunciones: • Asumo que el servidor de mail utiliza POP3 y IMAP • Asumo que el servidor web no utiliza HTTPS • Asumo que el servidor web no necesita salir a Internet ni tampoco resolución de nombres. • Asumo que el servidor de base de datos sólo se comunica con el servidor web.

  31. FW (a.k.a. IPTABLES) en BackTrack • Listar las reglas del firewall: iptables –vnL • Permitir conexiones relacionadas y establecidas: iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT • Pemitir tráfico al servicio de SSH: iptables -A INPUT -p tcp --dport ssh -j ACCEPT • Bloqueo todo el tráfico: iptables -P INPUT DROP • Monitorear una conexión al servidor SSH: ¿qué pasa? • Monitorear una conexión al servidor web: ¿qué pasa? • Rechazar todo el tráfico: iptables -A INPUT -j REJECT • Monitorear una conexión al servidor web: ¿qué pasa? ¿hay alguna diferencia? • TIP: Si nos equivocamos, para borrar todo: iptables -F Teoría de las Comunicaciones

  32. Sobre las Herramientas…

  33. BackTrack • “BackTrack is a Linux-based penetration testing arsenal that aids security professionals in the ability to perform assessments in a purely native environment dedicated to hacking.” -- http://www.backtrack-linux.org/ • Download: • http://www.backtrack-linux.org/downloads/ • http://www-2.dc.uba.ar/materias/tc/vbox/BT5R1.ova

  34. Wireshark • “Wireshark is the world's foremost network protocol analyzer. It lets you capture and interactively browse the traffic running on a computer network. It is the de facto (and often de jure) standard across many industries and educational institutions.” -- http://www.wireshark.org/about.html • Download: http://www.wireshark.org/download.html

More Related