24 votos

¿Qué datos sincronizados de Android están encriptados?

Con el lanzamiento de la plug-in de firesheep para firefox se ha vuelto trivial que la navegación en las redes Wi-Fi abiertas sea secuestrada por terceros.

Android ofrece la conveniente opción de auto-sincronización. Sin embargo, me temo que mis datos se sincronizarán automáticamente mientras esté conectado a una red Wi-Fi abierta en una cafetería o centro comercial.

¿Todos los datos se sincronizan automáticamente con Android mediante SSL o un mecanismo de cifrado similar? ¿Algún dato auto-sincronizado está desencriptado y transmitido en claro para que todos lo escuchen?

Actualización : COMPLETAMENTE INSEGURO!!!! Ver abajo !!!!

0 votos

La revista alemana Heise tiene un gran artículo sobre esta cuestión. Está en alemán, pero se puede utilizar un servicio de traducción: heise

0 votos

Parece que, por fin, Google va a cuidar los datos de sus usuarios: uni-ulm.de/in/mi/mitarbeiter/koenings/catching-authtokens.html

13voto

IceHeat Puntos 1930

Nota: respondiendo a mi propia pregunta como nadie lo sabía.

Hice una captura de paquete después de seleccionar Menu -> Accounts & Sync -> Auto-sync (también accesible a través del widget "Power Control"). ¿Qué descubrí?

A mi horror (solicitudes de http del teléfono mostradas abajo):

GET /proxy/calendar/feeds/myaccount%40gmail.com HTTP/1.1
Accept-Encoding: gzip
Authorization: GoogleLogin auth=_hidden_
Host: android.clients.google.com
Connection: Keep-Alive
User-Agent: Android-GData-Calendar/1.4 (vision FRF91); gzip

y

GET /proxy/contacts/groups/myaccount@gmail.com/base2_property-android?showdeleted=true&orderby=lastmodified&updated-min=2010-12-01T08%3A49%3A00.561Z&sortorder=ascending&max-results=10000&requirealldeleted=true HTTP/1.1
Accept-Encoding: gzip
Authorization: GoogleLogin auth=_hidden_
GData-Version: 3.0
Host: android.clients.google.com
Connection: Keep-Alive
User-Agent: Android-GData-Contacts/1.3 (vision FRF91); gzip

Mi contactos y calendario están siendo transmitidos sin cifrar ! Actualmente no sincronizo Gmail, así que tampoco podría decir si está desencriptado.

También la aplicación de la bolsa de valores (que debe ser un servicio porque no tengo el widget mostrado o la aplicación activa):

POST /dgw?imei=TEST&apptype=finance&src=HTC01 HTTP/1.1
User-Agent: curl/7.19.0 (i586-pc-mingw32msvc) libcurl/7.19.0 zlib/1.2.3
Content-Type: text/xml
Content-Length: 338
Host: api.htc.go.yahoo.com
Connection: Keep-Alive
Expect: 100-Continue

<?xml version="1.0" encoding="UTF-8"?>
<request devtype="HTC_Model" deployver="HTCFinanceWidget 0.1" app="HTCFinanceWidget" appver="0.1.0" api="finance" apiver="1.0.1" acknotification="0000">
<query id="0" timestamp="0" type="getquotes">
<list><symbol>VOD.L</symbol><symbol>BARC.L</symbol></list></query>
</request>

Completamente solicitud no codificada de comillas de acciones: sólo piensa, podrías sentarte en Starbucks en el centro financiero de tu ciudad y husmear qué comillas eran importantes para todos los usuarios de teléfonos inteligentes a tu alrededor

Otros elementos que no estaban encriptados:

  • solicitud de http a htc.accuweather.com
  • tiempo solicitud a time-nw.nist.gov:13 (ni siquiera usa NTP)

Acerca de la sólo Los datos que están encriptados en mi teléfono son las cuentas de correo que configuré con la aplicación K-9 (porque todas mis cuentas de correo usan SSL - y afortunadamente las cuentas de gmail son, por defecto, SSL; y yahoo! mail soporta imap usando SSL también). Pero parece que ninguno de la auto-sincronización de los datos del teléfono fuera de la caja está encriptado.

Esto es en un HTC Deseo Z con Froyo 2.2 instalado. Lección: no usar el teléfono en una red inalámbrica abierta sin tunelización encriptada VPN !!!

Nota, captura de paquete tomada usando tshark en la interfaz ppp0 en el nodo virtual que ejecuta Debian conectado a un teléfono Android a través de OpenSwan (IPSEC) xl2tpd (L2TP).

1 votos

Eso es preocupante. No veo que haya cookies que vayan y vengan por ahí, ¿también se envían de forma transparente?

0 votos

El auth= La cadena contenía lo que parecía ser similar a una cookie, sin embargo, la borré antes de publicarla aquí por seguridad.

2 votos

¿Sigue siendo un problema actual en Android 2.3.1?

4voto

dgw Puntos 274

Resultados capturados en un LG Optimus V (VM670), Android 2.2.1, stock, rooteado, comprado en marzo de 2011.

Hasta hoy, las únicas peticiones no encriptadas que he podido encontrar en una pcap tomada durante una resonancia completa han sido:

Álbumes web de Picasa

GET /data/feed/api/user/<username>?imgmax=1024&max-results=1000&thumbsize=144u,1024u
    &visibility=visible&kind=album HTTP/1.1
GData-Version: 2
Accept-Encoding: gzip
Authorization: GoogleLogin auth=<snipped>
If-None-Match: <snipped; don't know if it's sensitive info>
Host: picasaweb.google.com
Connection: Keep-Alive
User-Agent: Cooliris-GData/1.0; gzip

Eso es todo.

Picasa fue el único servicio que encontré sincronizado sin encriptar. Facebook pidió un par de imágenes de perfil (pero no pasó ninguna información de la cuenta); Skype pidió anuncios; y TooYoou tomó una nueva imagen de bandera. Ninguno de esos se relaciona con la sincronización, en realidad.

Parece que la seguridad de la sincronización de Google se ha reforzado bastante. Desactivar la sincronización de los Álbumes web de Picasa y todos sus datos de Google deben ser sincronizados en forma encriptada.

Mercado

Esto me molestó un poco:

GET /market/download/Download?userId=<snipped>&deviceId=<snipped>
    &downloadId=-4466427529916183822&assetId=2535581388071814327 HTTP/1.1
Cookie: MarketDA=<snipped>
Host: android.clients.google.com
Connection: Keep-Alive
User-Agent: AndroidDownloadManager

El retorno de esto es un 302 Movido Temporalmente que apunta a una URL de descarga altamente compleja:

HTTP/1.1 302 Moved Temporarily
Cache-control: no-cache
Location: http://o-o.preferred.iad09g05.v5.lscache6.c.android.clients.google.com
          /market/GetBinary/com.wemobs.android.diskspace/1?expire=1322383029&ipbits=0
          &ip=0.0.0.0&sparams=expire,ipbits,ip,q:,oc:<snipped>
          &signature=<snipped>.<snipped>&key=am2
Pragma: no-cache
Content-Type: text/html; charset=UTF-8
Date: Fri, 25 Nov 2011 08:37:09 GMT
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
Server: GSE
Transfer-Encoding: chunked

El administrador de descargas de Android se da la vuelta y solicita la ubicación de la descarga, pasando el MarketDA galleta de nuevo.

No sé si hay algún peligro de seguridad por la forma en que Market descarga los APK. Lo peor que puedo imaginar es que las descargas de APK no encriptadas abren la posibilidad de intercepción y reemplazo con un paquete malicioso, pero estoy seguro de que Android tiene controles de firma para evitar eso.

0 votos

Me alegro de que desde mi descubrimiento inicial otros se tomen esto en serio ahora. Gracias. Sentí que estaba solo en el desierto cuando publiqué la pregunta/respuesta inicial. En realidad, no he vuelto a hacer ninguna prueba desde el post original y me he mantenido en prácticas más seguras, pero me alegro de que otros estén siguiendo este tema.

1 votos

A veces me miran raro porque hablo de seguridad como si fuera algo normal. Y tres días después de publicar esto, me hice con una oferta del Cyber Monday de un nuevo Motorola Triumph. Los problemas del servicio de atención al cliente retrasaron su llegada hasta el miércoles pasado, pero rápidamente descubrí que tiene problemas importantes con las redes protegidas por EAP. Mi universidad utiliza EAP. Así que me alegro de haber investigado. Puede que haya más, ya que aún no he probado Currents. ;)

0 votos

Sólo quiero animarte: pareces una buena persona que se preocupa lo suficiente por la seguridad.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X