none
Skype vs TMG RRS feed

  • Debate general

  • Hola A todos,

     

    Titulé al debate Skype vs TMG porque sé que esto es una lucha de casi una década.

    Pues bien, ahora que MS compró Skype espero que logren modificar el protocolo para que pueda ser más administrable a nivel enterprise, quizás no lo sepan, pero Skype es una herramienta masivamente utilizada en las empresas de Latinoamérica para reducir costos de telefonía, y seguramente en el mundo entero.

    Ahora bien, creo que estoy atrás de este asunto desde ISA Server 2004, siempre ha sido una pesadilla Permitir ó Negar Skype, en primera instancia porque es un software P2P. Tomé una traza de un intento de conexión de Skype y los resultados son atemorizantes, Skype intentó conectarse utilizando puertos aleatorios TCP y UDP y las IPs de destino también son aleatorias. Es decir, la unica forma de permitir Skype (con Https-Inspection habilitado) es seguir estos pasos:

     

    1. Fist of all, I want my TMG to check HTTPS => HTTPS Inspection=On
    2. Create protocol that open outbound traffic
       =>TCP(outbound)=1-65535
       =>UDP(send receive)=1-65535
    3. Create firewall rule for this protocol from Internal To Internet network
    4. Install Forefront TMG Client (it's part of installation files) on local computer, and allow its support on TMG server.
    5. To restrict skype from using other rules (holes in other rules), add its signature which will prevent such behavior.
    6. Try to connect to skype network.

     

    Muy bien, ya Skype funciona, se conecta, excelente! Y puedo utilizar la firma para que las demás reglas no permitan  Skype, Genial!

    Ahora, tenemos una regla que básicamente permite que cualquier software utilizando cualquier puerto TCP ó UDP acceda a internet libremente, gigante hueco de seguridad, debido a que la firma se utiliza en las otras reglas para que Skype no pase por ellas.

    El control de navegación sigue en pié gracias a las otras reglas y a la inspección de tráfico en capa de aplicación, sin embargo, al utilizar cualquier software (que no sea un navegador con el proxy configurado), que utilice cualquier puerto TCP ó UDP, tiene libertad aboluta.

    TMG permite utilizar firmas para bloquear el tráfico, pero no encuentro una forma de incluir en esta regla algo como:

    Permite TCP y UDP (cualquier puerto) unicamente al tráfico con esta firma.

    No veo esta posibilidad.

     

    Tampoco veo la posibilidad de crear una regla que:

    Permita el tráfico al "client application path" C:\Program Files\Skype\Phone\Skype.exe unicamente

    ó

    Permita el tráfico al "Client Agent" Skype.exe:3:6.1 unicamente


    ¿Alguien puede ayudarme a cerrar este hueco de seguridad?

    Hay varias condiciones que deben cumplirse:

    - Skype tiene que funcionar

    - Debo poder seleccionar qué usuarios tienen acceso a Skype y cuáles usuarios no.

    - Debo optimizar la seguridad y sólo permitir a Skype, unicamente a Skype, en esa regla.

     

    Mi infraestructura?

    - TMG 2010 Standard

    - W2K8 R2 Standard

    - TMG no es nuestra puerta de enlace, unicamente nuestro proxy, y solo lo utilizamos para control de navegación y conexiones "outbound"

    - Todos los usuarios tienen el cliente de TMG instalado

     

    Si alguien desea la traza que tomé con gusto se la hago llegar a su correo.

     

    Espero que alguien pueda ayudar, no es solo por mí, creanme, habemos miles de IT Pros (aunque claramente TMG no es mi fuerte) en este lío buscando información sobre este tema.

     

    Mil gracias.


    godog
    • Editado godog_co viernes, 25 de noviembre de 2011 13:31 Redacción
    • Tipo cambiado godog_co viernes, 2 de diciembre de 2011 22:48 Perspective
    viernes, 25 de noviembre de 2011 13:27

Todas las respuestas

  • Hola Godog

    Inicialmente debo comentar que algunas veces no es un problema de TMG el que una determinada aplicación pueda pasar atravez de el o no, ya desafortunadamente no siempre se programa pensando en un proxy o firewall, sin importar que tan grande o pequeño sea el proyecto. donde

    Entrando en materia, creo que efectivamente abrir todos los puertos que mencionas no es una solucion acertada, en cuanto a Skype hay una articulo muy interesante: https://support.skype.com/es/faq/FA148/Que-puertos-debo-abrir-para-poder-usar-Skype donde nos explica como configurar el proxy, o inclusive como obligarlo a usar un "pool" de puertos predeterminados... Dicho sea de paso si no pudiera salir por algun puerto del 1024 en adelante usará el 80 o 443 (http o https) para salir, asi que revisa el documento y nos comentas como te va con las pruebas...

    Saludos,


    Jimcesse
    Mi Blog: http://jimcesse.wordpress.com/
    
    viernes, 2 de diciembre de 2011 22:33
    Moderador
  • Excelente, espero que logre reducir el rango de puertos y asi hacerlo mas administrable-

     

    Definitivamente no quisiera tener que tocar el puerto 443 ni el 80 debido a que esto se presta para que otro tráfico ademas de Skype pase por ellos.

     

    Voy a hacer las pruebas.

     

    Mil gracias,

     

    Saludos,


    goDog
    viernes, 2 de diciembre de 2011 22:50
  • Hola Jimcesse,

    Es cierto y entiendo que no sea un problema de TMG, sin embargo creo que esto apunta a una falla de flexibilidad del producto.

    Muchos otros productos de firewall logran controlar sin problemas a Skype, con métodos como los que mencioné en la pregunta incial (detectando el .exe o permitiendo la firma).

    Me parece que ya TMG hace más de la mitad del trabajo que es detectar detalles específicos del tráfico (debido a que en los logs se lee claramente Skype.exe, su firma y otros muchos detalles del tráfico generado por Skype) ahora solo falta poder crear reglas que se apoyen en estas detecciones para bloquear ó permitir tráfico, de nada sirve que TMG detecte un millon de detalles del tráfico si funcionalmente no se puede hacer casi nada con esa información.

     

    Estuve revisando pero básicamente es lo mismo.

    Lo que se puede configurar en Skype es el puerto utilizado para conexiones entrantes, y realmente el 1024 no molesta. Son las conexiones de salida las que me preocupan.

    Gracias a ese artículo logré reducir el rango de puertos, ahora están configurados desde el 1024 hasta el 36335 (TCP y UDP), es bastante más seguro porque la mayoría de los puertos mas importantes están por debajo del 1024, sin embargo aún sigue siendo inseguro. Y tiene que ser TCP y UDP, no puedo quitar ninguno de los dos, porque se presentan fallas de varios tipos.

     

    Mil gracias por tu participación, dejaré el foro abierto a ver si tú o alguien mas tiene comentarios. Como verás cambié el tipo de publicación de Pregunta a Debate.

     

    PD: Excelente tu Blog.

     

    Saludos,

     

     


    goDog
    lunes, 5 de diciembre de 2011 15:09
  • Hola goDog

    Gracias por lo del blog, es algo que hago con mucha pasion, pensando en que a alguien le pueda servir de algo mis experiencias :)

    Volviendo al tema de Skype, si deshabilitas la regla que has creado con los puertos que mencionas y haces una captura del trafico en tiempo real que trafico te genera !? Puedes subir los resultados en txt a https://skydrive.live.com/ !?

    Saludos,


    Jimcesse
    Mi Blog: http://jimcesse.wordpress.com/
    
    martes, 6 de diciembre de 2011 18:52
    Moderador
  • Hola Jimcesse,

    Actualmente no puedo deshabilitar esa regla porque de eso depende la operación de Skype en la empresa, y es constantemente utilizado.

    Sin embargo publiqué una captura del tráfico donde podrás ver claramente todos los intentos de conexión que Skype hace solo para iniciar sesión. esta captura la tomé el mismo día en que publiqué este debate/pregunta y como verás TMG estaba negando el tráfico debido a que en ese momento la regla estaba deshabilitada, por lo tanto Skype no se conectaba.

    Pasé los resultados de la captura a Excel para facilitar su lectura.

    Puedes acceder al archivo a través de este link:

     Captura de tráfico TMG vs Skype

    Ahí podrás darte cuenta de esto (y muchas características más):

     

    - Skype utiliza puertos TCP y UDP aleatorios entre el 1024 y el 65535

    - No hay URLs de destino, sólo IPs

    - TMG logra perfectamente detectar que el tráfico proviene de skype.exe

     

    Por favor avísame si tienes algun problema abriendo el archivo, es primera vez que uso SkyDrive.

    Mil gracias por tu participación.

    Saludos,

     

     

     

     

     


    goDog

    • Editado godog_co martes, 6 de diciembre de 2011 21:04
    martes, 6 de diciembre de 2011 20:54