martes, diciembre 01, 2015

Google se lleva tu tráfico HTTP a pasear por Suiza

Hace tiempo que ya os hablé de SPDY, el protocolo que ha impulsado Google para eregirse en el "garante" de facto de la privacidad mundial del tráfico HTTP de los clientes sin que muchos de estos sean conscientes de esto. La idea, como ya os conté en el artículo es tan sencilla como que todo el tráfico que se genera en el cliente de navegación se cifra y se envía por defecto a uno de los servidores de Google para que este sea después el que lo encamine hacia el servidor web al que se quiere conectar un usuario.

Figura 1: Google se lleva tu tráfico HTTP a pasear por Suiza

Para que podáis entenderlo fácilmente. Supongamos que yo estoy en mi ciudad de Móstoles y me quiero conectar vía HTTP a un servidor que se encuentra en Móstoles. Si lo hago desde un terminal Android con el cliente Chrome por defecto, todo mi tráfico se irá previamente a pasear por los servidores de Google y luego regresará otra vez a Móstoles vía HTTP.

Figura 2: Con SPDY el tráfico HTTP de tu navegador se va a Google sí o sí

Si quieres probar este comportamiento en un terminal Android es muy sencillo. Basta con que navegues a cualquier servicio de comprobación de dirección IP que funcione vía HTTP y compruebes cuál es la dirección pública que estás utilizando. Como se puede ver en esta captura, la dirección IP que tenemos es una 66.249.81.159.

Figura 3: Chrome 46 en Android pasando el tráfico por la dirección 66.249.81.159

Si ahora vamos a ver en qué ubicación física se encuentra esta dirección, vemos que está en Suiza. Es allí donde Google ha puesto algunos de sus servidores SPDY para Europa. Ya sabéis que hay restricciones serias para llevarse el tráfico fuera de Europa a la ligera debido a las protecciones legales, así que Google los ha instalado en su centro de datos que tiene en el país suizo. Parece una metáfora. Igual que muchos se llevan a este país alpino su dinero, Google se lleva otra cosa muy valiosa, tus datos.

Figura 4: Salimos por una dirección IP sita en Suiza

Por supuesto, esto se ha configurado por defecto en las últimas versiones de Android, por lo que si un usuario quiere dejar de enviarle sin saberlo todo su tráfico HTTP a Google, incluidos todos los datos que se envían en formularios, como datos personales, datos de navegación, e incluso las credenciales que se pudieran usar vía HTTP, debe entrar en una página de configuración de Chrome://flags y deshabilitar SPDY.

Figura 5: SPDY deshabilitado en Chrome 46 sobre Android

Una vez que hayas deshabilitado el uso de SPDY, puedes repetir el experimento. Conéctate otra vez a comprobar tu dirección IP de navegación y obtendrás la dirección real de tu ISP. En este caso la dirección IP de una conexión en Telefónica.

Figura 6: El tráfico HTTP ya no pasa por los servidores de Google en Suiza

Como se puede comprobar, ahora el tráfico sí que está saliendo de Madrid, que es la ubicación desde la que se ha hecho esta prueba, y por tanto todo el contenido HTTP generado desde el terminal Android con este navegador Chrome 46 no está siendo enviado a los servidores de Google en Suiza.

Figura 7: Tráfico enviado directamente de nuestra ubicación orginal

Este cambio lo impone Google como Opt-out, es decir, que son los usuarios los que deben deshabilitarlo y si no está activado. Así que, igual que cuando decidió con el Google Car llevarse todo el tráfico WiFi sin cifrar que pudiera capturar haciendo WarDriving, ahora se lleva todo el tráfico HTTP sin cifrar a sus CPDs, sin haber hecho mucho ruido, sin que casi nadie se haya dado cuenta y, por ahora, por el momento, no piensa dejar que el usuario pueda elegir otro servidor SPDY Proxy al que entregar su confianza.  Si has visto mucho tráfico en tus servidores web llegando desde Suiza, ya sabes el porqué.

¿Es este un comportamiento que se espera en un mundo de Neutralidad Digital o se podría ver como un abuso de posición dominante de la que misma que se quejaba Google hace no tantos años cuando decía eso de Don´t Be Evil?

Saludos Malignos!

19 comentarios:

  1. Hola,

    En la versión de Chrome 46.0.2490.79 de mi Nexus 5 no aparece ese flag. Además, la IP y la localización es la que tengo.

    Lo habrá quitado Google?

    Salu2

    ResponderEliminar
  2. No es por usar spdy, es por tener activado el economizador de datos: https://support.google.com/chrome/answer/2392284?hl=es-419 no se si ahora viene activado por defecto, pero cuando yo lo activé voluntariamente te explicaban perfectamente lo que hace. Que es precisamente conectarse usando spdy a sus servidores proxy para que te envíen una versión comprimida y optimizada de la web.

    ResponderEliminar
  3. En el Chrome de mi N5 tampoco aparece la opción, ¿estarás utilizando la beta?
    Y coincido con el comentario anterior, Chrome usa el proxy de Google si tienes el economizador de datos activado (que no es la opción predeterminada). Con el economizador desactivado tu ip es la que te asigna tu operador.

    ResponderEliminar
  4. Recuerdo que SPDY no es un protocolo estandar, sino una propuesta de Google.
    Hace poco se publicó la versión definitiva de HTTP/2 que incluye alguna de las características de SPDY, pero que no requiere ni de Google ni de ningún proxy.

    ¿Eso no podría considerarse un ataque man in midle? ¿Que hará Google con los datos de los formularios, historial de navegación,...?

    ResponderEliminar
  5. una pequeña reflexión, no debería google preguntarnos si queremos el servicio tan bonito?

    ResponderEliminar
  6. Como bien dicen ese servicio se usa para gastar menos datos desde el móvil usando versiones comprimidas de las web. A ver si os informáis un poco mejor antes de difamar sobre Google.

    ResponderEliminar
  7. Hola, como ya le dije a un profesor de un master, la información y los datos son los diamantes actuales. Rusia y Suiza lo han sabido muy bien obligando a que todos los datos se mantengan en el país y no puedan ser tratados/procesados por equipos de otras partes del mundo con un salario y coste por trabajador más bajo. Para cuando en España una ley que proteja tanto a la información como los ingenieros españoles?

    ResponderEliminar
  8. Como ya dije en el artículo que va enlazado al principio de este artículo, con la excusa de la "aceleración" se llevan con un Opt-Out el tráfico HTTP. Los que no lo tenéis activado es porque o el sistema operativo es antiguo o Google no ha activado aún esa opción en tu país.

    Saludos!

    ResponderEliminar
  9. Muy interesante Chema , gracias...

    ResponderEliminar
  10. Vamos a ver, "Data saver" esta desactivado por defecto: Reducir el uso de datos con "Reducir datos" de Chrome, es un Opt-in, y te explican que no pasan por ese proxy las páginas https ni las ventanas de incognito, y que eres tú el que la tienes que activar. Tienes mas información en Proxy de compresión de datos de Chrome para administradores de red, operadores y proveedores de servicios de Internet (ISP).

    ¿Es un peligro?, puede, al menos puedes optar a usarlo o no. No como algunos proxys "transparentes" de algunos operadores como el infame proxy de Telefónica de hace ya unos cuantos años.

    ResponderEliminar
  11. @General Failure, 1) Google está activándolo por defecto por rachas como Opt-Out 2) Solo es HTTP porque el tráfico HTTPs no lo pueden romper 3) Las páginas en modo incógnito tienen otra configuración... por ahora.

    Saludos!

    ResponderEliminar
  12. @Maligno, no se, puede que tu tengas alguna información extra, no lo niego, pero de momento en un post de ayer anunciando que mejoraban el "data saver" te comentan que para disfrutarlo que vayas a las opciones y actives tú expresamente el Economizador de datos, da la impresión de que es un Opt-out, ¿no?. Y que empiezan la distribución por India e Indonesia.

    Lo que viene a decir es que Chrome 47, el actual Chrome beta, se promociona a estable, y que la gente que esta usando Chrome estable se va a ir actualizando progresivamente de la actual 46 a la 47.

    Como nota, para google hacer un proxy transparente para ssl sería trivial, google es una autoridad certificadora (Google Internet Authority G2) certificada por GeoTrust y confiada en todos sitios, con eso puede generar certificados "falsos" prácticamente de forma transparente, solo cambiaría la autoridad que lo emite (obviamente) y la huella. Tan solo HPKP (HTTP Public Key Pinning) te podría proteger.

    Lo sé porque he implementando un firewall con "ssl deep inspection" y es justo lo que hace, y no se da cuenta nadie. Es muy fácil de detectar si sabes que buscar (los certificados EV pasan a ser "normales" por ejemplo), o si miras los detalles de un certificado y te fijas en la cadena verás siempre el mismo origen.

    Saludos.

    ResponderEliminar
  13. @General Failure, lo está poniendo Opt-Out poco a poco, y no creo que a Google se le ocurre hacer una impersonización de certificados SSL de forma transparente.

    Saludos!

    ResponderEliminar
  14. @Maligno, dices que Google lo está poniendo Opt-Out poco a poco, ¿puedes ampliar un poco tu afirmación? No dudo que probablemente el objetivo de Google sea instaurar como modelo por defecto el economizador de datos y por ende su proxy pero, ¿dónde has detectado que se haya dado esa activación por defecto del economizador?

    Saludos

    ResponderEliminar
  15. @Maligno yo también estoy muy interesado en datos que muestren que se ahora lo activen por defecto, ¿por favor, puedes compartir las fuentes o los datos?

    Saludos.

    ResponderEliminar
  16. A mi tampoco me da la ip de Suiza sino la mia real y la sitúa en mi ciudad, como dicen los compañeros yo tampoco tengo ese Flag.

    Navego con la ultima version en ujn Galaxy S6 con la versión mas actual de Android.

    ResponderEliminar
  17. Yo tengo un BQ con Android 5.0.2 y Chrome 46.0.2490.76 y tampoco me viene el flag ni activado por defecto el economizador de datos, lo activé para probarlo y en cualesmiip.com me indican que navego a través del proxy de google y mi ip real.

    Saludos!

    ResponderEliminar
  18. Mucho cuidado, porque aunque has corregido tu captura en la que se muestra la IP publica desde la que hiciste la prueba, al entrar a traves de feedly esta la imagen antigua y ha quedado tu hostname al descubierto.

    Un saludo y mi enhorabuena por el blog.

    ResponderEliminar
  19. Una pregunta seguro muy tonta, podría utilizarse el proxy para saltarse los geobloqueos en vídeos?

    ResponderEliminar