martes, mayo 12, 2015

Gmail por defecto deja que sepan cuándo lees el correo

Ayer me topé con una desagradable circunstancia al usar Gmail con el cliente web y es que, por defecto, permite que cualquier usuario pueda saber en remoto las acciones que realizas con los correos electrónicos. Sí, por defecto el cliente web de Gmail permite que te vigile cualquier persona y pueda saber si has abierto o no el correo electrónico, a qué hora y cuántas veces. La explicación es bastante sencilla. En pro de la usabilidad y la velocidad, desde hace tiempo Gmail montó un servidor proxy para cargar automáticamente todas las imágenes. Estas imágenes se cargan desde servidores de Google una vez que se abre el correo electrónico.

Figura 1: Gmail por defecto deja que sepan cuándo lees el correo

Es decir, los servidores de Gmail van a por las imágenes incrustadas en correos electrónicos y las almacena en sus servidores para que cuando se abra el correo electrónico se carguen desde sus servidores. 

Privacidad y Doxing con la carga de imágenes desde el Proxy de Google

Esto quiere decir que los servidores de Google son los que cargan las imágenes desde sus servidores, evitando que se haga un disclosure de la dirección IP de origen del cliente al servidor del que se carga la imagen, así como el campo del User-Agent del navegador, lo que evita cualquier ataque de doxing enviando una imagen incrustada. Eso está bien.

Por otro lado, Google decide cargar en su Servidor Proxy todas las imágenes, incluso las que se sirvan por HTTPs, rompiendo cualquier canal seguro que el emisor del mensaje quisiera abrir con el cliente. Es decir, el HTTPs termina en los servidores de Google. Y lo que es peor, al cargar ellos los ficheros decidieron que, por defecto, en todas las cuentas nuevas se debieran cargar todas las imágenes incrustadas.

Figura 2: Mailtrack.io

Lo peor es que las imágenes se cargan desde servidores de Google, lo que hace muy complicado para un usuario normal darse cuenta de que realmente no es una imagen incrustada en el correo - que podría ser - y realmente es una imagen de seguimiento enlazada. 

Figura 3: Si se pide una confirmación de lectura el cliente de correo avisa

Esto es importante porque han aparecido muchos servicios tipo MailTrack.io que se dedican a aprovechar estas características para hacer tracking de cuándo un destinatario de un mensaje de correo abre o no un determinado e-mail, pudiendo saber el emisor la información sin que la mayoría de los usuarios sepa que le están vigilando cuando lee su buzón de correo, algo que todos los clientes de correo pesado siempre han avisado a sus usuarios.

Un ejemplo de vigilancia con el cliente web de Gmail

En el correo en cuestión que yo me comí, la imagen de seguimiento se puede ver cuando se accede al código fuente original del mensaje. Para ello, seleccionando el correo electrónico marcado con MailTrack.io se debe elegir en el cliente web de Gmail la opción de "Mostar Original".

Figura 4: Mostrar código original del mensaje de correo electrónico

Una vez en el código fuente, al final del mensaje se puede ver el enlace a los servidores de seguimiento de MailTrack.io con una conexión HTTPs y un nombre de imagen que realmente es el ID del mensaje de correo que se está vigilando.

Figura 5: Imagen incrustada por mailtrack para hacer el seguimiento del mensaje

Si pedimos esa imagen directamente al servidor, podemos ver que realmente es un fichero PNG invisible que se devuelve con las opciones de caché desactivadas, para intentar evitar que Google o cualquier otro servidor conserve la imagen.

Figura 6: Imagen cargada desde un servidor de MailTrack.io con no-cache bajo HTTPs

Cuando el correo se abre, realmente la petición a los servidores de MailTrack.io no se hace desde la dirección IP de la víctima, sino desde los Servidores de Proxy de Google. Para ello hemos vinculado una imagen en uno de nuestros servidores dentro de un mensaje de correo enviado a un destinatario de Gmail. Luego lo hemos abierto y aquí se puede ver la petición del cliente. Como curiosidad, sí que se utiliza el USER-Agent del cliente por si la imagen es Responsive, por lo que sí que se leakea información del cliente como el dispositivo y el navegador.

Figura 7: Petición desde los servidores proxy de Google para cargar la imagen vinculada en el correo electrónico

Una vez que los servidores de Google se descargan el contenido, en el cliente web no hay ni rastro de MailTracker.io (solo se puede ver si se muestra el código original del mensaje), ya que la imagen aparece cargada directamente desde un servidor de Google, lo que levanta pocas sospechas en el receptor del mensaje.

Figura 8: Petición de carga de la imagen en el cliente web a los servidores proxy de Google

Al mismo tiempo, la persona que ha puesto "la marca de seguimiento" al mensaje de correo electrónico va a recibir una alerta avisándole de que su mensaje de correo acaba de ser abierto. 

Configuración segura para evitar el seguimiento

Esto, además, se ha puesto de tal manera que por defecto en las cuentas de Gmail que se crean se establece la carga de imágenes de forma automática en todos los mensajes de correo, algo que puedes cambiar en las configuraciones de la cuenta.

Figura 9: Deshabilitar en Gmail Web la carga de imágenes por defecto

Por supuesto, si tienes un cliente de correo electrónico pesado, con la carga de imágenes desactivada por defecto, el truco no funciona. En todos los clientes de correo habituales - incluso en Mail de iOS que le costó - la carga de imágenes está deshabilitada por defecto.

Figura 10: Por seguridad Outlook desactiva la carga de imágenes

Para cargar las imágenes en un determinado mensaje, el usuario puede hacerlo mensaje a mensaje, una vez que confíe en el receptor, y en muchos clientes aparecen alertas de privacidad como la que se puede ver aquí.

Figura 11: Alerta de privacidad en cliente Outlook con imágenes vinculadas

Visto esto, te recomiendo que tengas cuidado con el cliente web de Gmail. Revisa tus opciones de carga de imágenes, y si te es posible, utiliza un cliente pesado que te permita configurar de forma más segura cómo quieres la carga de las imágenes en cada mensaje de correo que recibas.

Saludos Malignos!

15 comentarios:

  1. Hola:

    Muchas gracias. Elegimos por seguridad, comodidad y eficacia el correo de Gmail como sistema de mail corporativo y lo aconsejamos sistematicamente a nuestros clientes pero no sabía este agujero de seguridad que permite rastrear y hacer seguimiento. Paso a poner en prácica vuestras recomendaciones y avisar a todos. Muchas gracias por compartir esta interesante información.

    Huberto Cánovas

    ResponderEliminar
  2. Hola Chema, me gustaría saber el e-mail de contacto para cita previa en 0xword. Querría comprar un libro y pone que es necesaria cita previa.
    Me encanta el blog!!

    ResponderEliminar
  3. @Corbax, ¿cómo has llegado a interpretar que es un agujero de seguridad?

    El tracking puede ser visto como una pequeña invasión de la privacidad para aquel al que le preocupa tanto su privacidad, pero es un mecanismo muy útil en el mundo de la comunicación digital. Estoy seguro de que hay gente que prefería el tracking a tener que darle al botón de "Mostrar imágenes" en sus decorados emails recibidos, que son a día de hoy mayoría.

    ResponderEliminar
  4. Buenas,

    Hay una extensión creada por los de Panda Security para Chrome que te avisa si alguien está rastreando tu email, la instalé ayer por la tarde, lo que ocurre es que como la mayoría del tiempo uso Firefox y para firefox no esta, pero dicen que próximamente estará.

    Es esta; UglyEmailYo

    A lo que iba, todavía no lo he probado, haber si alguien que puede generar el error/bug, y haber ver que tal.

    Saludos¡

    ResponderEliminar
  5. Disculparme las ultimas lineas, no he dormido >.<

    ResponderEliminar
  6. Muy interesante artículo, como siempre. Me gustaría saber si en Hotmail pasa lo mismo o algo similar.
    Saludos.

    ResponderEliminar
  7. Qué pasa? Tú no haces huelga?

    ResponderEliminar
  8. Creo que no pillo el problema.

    El tracking mediante imágenes se ha hecho desde siempre.
    Evidentemente si no cargas las imágenes deja de ser efectivo.

    La parte que no entiendo es la de los servidores Google. Según yo creía (supongo que erroneamente) es que precisamente el hecho de que Google precargara estas imágenes destruía esta funcionalidad ya que todo lo que verían los servidores tipo MailTrack es que Google ha cargado esta imagen, no el usuario.
    Evidentemente, si Google carga la imagen en el mismo instante que el usuario la solicita, pues si que pueden seguir detectando que hemos abierto el mensaja, pero si lo hace en otro momento, Mailtrack puede creer que el correo se ha abierto cuando no es así.
    Por otra parte, la 2a vez, Google ya tiene la imagen, por tanto ya no hay mas tracking.

    Bueno, al menos eso es lo que creía. Lo puedes aclarar un poco mas por favor?

    Muchas gracias!

    ResponderEliminar
  9. Pues el remitente que lo haga no estará cumpliendo con la ley de cookies. Es ilegal hacerlo así, a la chita callando.

    ResponderEliminar
  10. @Anonimo
    Tienes razón, más bien debería haber dicho que es una intromisión en la privacidad. La misma que me molesta de WhatsApp. Y sin embargo para mi no es molestia autorizar que se muestren imágenes en cada nuevo contacto. Gracias y un saludo.

    ResponderEliminar
  11. Eso se anuncio hace meses hombre...

    ResponderEliminar
  12. Yo lo que veo es que:

    Si no hay proxy de imágenes te hace traking el publicista
    Si hay tracking: Te pueden hacer traking dirigido
    Personalmente siempre he tenido la opción de mostrar imágenes, no me molesta, más bien al contrario, hay correos que no necesitan las imágenes y te aseguras que no te trakean
    Hay usuarios que no entienden cual es el problema y te dicen, no solo que eres rarito, si no que además prefieren que no se implementen opciones para raritos.
    Hay otros usuarios que, dado que nuestra intimidad está permanentemente violada y no es respetada por nadie, y entender todos estos entresijos lo ven inviable, pues hacen lo que humildemente pueden, a sabiendas que nbo va a servir de nada.

    Yo, por mi parte, prefiero no ponerselo tan fácil, no me gusta que mi intimidad esté permanentemente violada, despreciada, desvalorizada y todos los calificativos que queráis. Pero si queréis podéis poneros la vivienda llena de webscams que emitan permanentemente, compartir vuestra ubicación de forma permanente y contar todo lo que hacéis aa través de la redes sociales, publicando todos vuestros documentos perfectamente escaneados con alta resolución, es vuestra vida, no la mia. Yo no elijo ese camino

    Saludos

    ResponderEliminar
  13. Buenos Días.. tengo una consulta, yo utilizo el administrador de correos del paquete de office, el Microsoft Outlook. Desde allí tengo configurada mi cuenta de Gmail y dentro de las configuraciones de Seguimiento tengo que no envíe nunca confirmaciones de lectura.
    Ahora bien, si me envían un correo electrónico desde una cuenta con MailTrack me están trakeando e informando que leí el correo. ¿Tengo forma de desactivar esto y que no informe que leí dicho mail?

    ResponderEliminar
  14. El hacer seguimiento a los correos electrónicos (emails) es bastante útil a nivel corporativo, el mundo de los negocios no está invadiendo la privacidad de nadie, simplemente se cerciora de que el destinatario lea el mensaje y responda al mismo. Las grandes corporaciones o empresas serías lo utilizan desde el invento del correo electrónico.

    ResponderEliminar
  15. No sé mucho de informatica pero he observado q me desaparecen correos de vueling. Reservas hechas de vuelo y últimamente un bono por cancelación de vuelos por la Covid. Me ha desaparecido de la entrada y también de elementos enviados (se lo reenvié por suerte a otra persona). Miré en papelera q no hubiese borrado. Estan todos de esa fecha menos los comentados de vueling. Curioso no?
    Me gustaría saber vuestea opinion

    ResponderEliminar