Publicaciones recomendadas

Publicado

Resolviendo un problema de consumo de datos "fantasma" en mi iPhone: Ad-ware

Pongo este articulo porque es muy bueno y de interes para todos, fuente

http://www.securitybydefault.com/2012/08/resolviendo-un-problema-de-consumo-de.html

Mi nombre es Manuel, mi apodo de toda la vida es Eagle desde niño, aunque casi siempre está cogido por otro cuando me registro :), y me encanta afrontar problemas y resolverlos. La curiosidad mató al gato, pero afortunadamente no soy un gato...

Este artículo nace a raíz de un problema con el que me encontré hace un par de días y para transmitiros cómo lo resolví.

Vamos directamente a exponer el caso.

Mi iPhone se pone a consumir datos él solito, tanto por Wifi como por 3G

Trafico.jpg

Resulta que últimamente venía notando que el teléfono consumía demasiados datos (me llegó un aviso de la operadora de que había consumido 200Mb, mi tarifa del mes) y la batería duraba menos de lo normal. Como soy muy pejiguero para esas cosas, me descargué un programa de consumo de datos para intentar averiguar cuándo y cuánto estaba consumiendo.

Hay que aclarar que tengo el iPhone con jailbreak hecho, pero con pocos programas de Cydia instalados, apenas unos 15 tweaks (modificaciones del sistema), casi todos gratuitos y algunos comprados. Bien, me instalé DataMonitor, que es un programa muy completo (aunque no te dice qué programas consumen qué datos, pero te da estadísticas muy interesantes, por minuto incluso). Es el programa que veis en la foto.

Con él pude averiguar que estaba consumiendo muchos megas de subida y bajada. En concreto, en los primeros días de agosto ya llevaba 150Mb de mi tarifa de 200Mb. Una burrada, porque no había bajado ni subido nada con 3G salvo el correo (sin adjuntos). Mi consumo normal es de 50-100Mb al mes.

Además, este programa permite ver el uso de la CPU, que resultaba que por momentos se ponía al 100% durante varios minutos, ralentizando el móvil.

Muy bien, está claro que hay algún problema y hay que encontrar la solución... no me voy a quedar sin tarifa de datos a los 10 días porque sí. ¿Qué podía hacer? Opción 1: reinstalar todo el sistema, por si estaba tocado. Eso no me aseguraba no volver a tener el problema. No soy ningún experto en seguridad, pero sí que soy curioso y soy ingeniero informático, algo podré hacer con todo lo que me enseñaron, años ha.

Me sonaba eso de analizar el tráfico entrante y saliente. ¿Pero de un iPhone? ¿Cómo lo hago?

Usando herramientas de Seguridad

Ettercap.jpg

Pues nada, san Google a nosotros y listo. Al poco tiempo ya averigüé que lo mejor era usar Wireshark para la captura de todo lo que se moviese.

Problema: mi PC estaba por cable y el iPhone por Wifi, así que, para abreviar, ya que en muchos sitios explican todo esto muy bien, necesitaba hacer un envenenamiento ARP para poder capturar el tráfico dirigido desde el Router-Wifi al iPhone (básicamente, engañar al iPhone y al Router para que toda la información pasara previamente por mi PC, un ataque man in the middle).

Solución: Ettercap. Lo hay para Windows y para Linux, pero resulta que en Windows 7 no debe funcionar muy bien, porque se cierra inesperadamente. Así que nuevo problema, que solucioné usando una máquina virtual de Windows XP, pero no sé por qué, no aparecía el tráfico del iPhone, aún haciendo el envenenamiento.

Total, al final me bajé una VMware de BackTrack 5, que decían era lo mejor para evitar problemas y, efectivamente, pude capturar todo el tráfico del iPhone por fin.

Ha pasado un día con todo esto. Soy novato como hacker, qué le vamos a hacer... :)

Capturando paquetes para analizar

Wireshark.jpg

Bueno, pues ya estamos en el siguiente día y me voy a poner a dar palos de ciego a ver si veo algo que me llame la atención entre todo el pifostio de información que sale en Wireshark.

Como novato que soy, no me entero de nada al principio. Pero bueno, lo importante es que tras mucha búsqueda y lectura de manuales (unas dos horas) consigo descubrir tres cosas fundamentales: cómo capturar con filtros, cómo hacer filtros sobre lo capturado (no es lo mismo) y como usar la opción "TCP Stream" para ver el paquete "completo" y no solo una trama.

En mis primeras capturas veía 30.000 paquetes en poco tiempo porque no filtraba las capturas. Aprendí que con host XXX.XXX.XXX.XXX puedo capturar solo los paquetes dirigidos/enviados a la IP correspondiente (la del iPhone).

Una vez con el tráfico único del iPhone y viendo con DataManager que los datos seguían subiendo sin yo tocar nada, me puse a buscar cadenas http, para ver si había llamadas a sitios raros... y vaya si había. Descubrí una bonita opción en el menú de Statistics que se llama "HTTP -> Request" en donde, si no pones filtro, te saca todas las URL llamadas y ésto fue lo que encontré:

HTTPRequets.jpg

Todas esas urls que aparecen son páginas de contaje de clicks, estadísticas de uso, publicidad, etc. Y como veis en el total de contaje, son 3.723 clics en 5 minutos de capturas.

Ya con el susto en el cuerpo de un posible virus o proceso, cuanto menos, irregular, me puse a pensar: ¿qué leches de programa puede estar haciendo un proceso en segundo plano que visite todas estas webs, si no existe la multitarea real en el iOS, salvo para procesos del sistema habilitados por Apple?

La respuesta parecía lógica: solo alguna aplicación de Cydia podría hacer algo similar, ya que no tienen las limitaciones que iOS impone. ¿Pero cuál? Hombre, yo tenía pocas, pero aún así saber cuál podría ser se me antojaba bastante complicado.

No obstante, como presumo de tener buena memoria para los detalles, recapitulé un mes para ver qué había instalado de Cydia recientemente: eso acotaba las posibilidades a cinco programas. ¿Por qué un mes, diréis, y no dos? Hacía un mes más o menos que empecé a notar el consumo excesivo.

Bueno, finalmente me centré en analizar con más detalle el contenido de cada una de estas URL, ya que no eran muchas. Buscaba algo que me llamara la atención... y al cabo de apenas 30 minutos lo encontré.

Descubriendo el motivo

Nobitazzz.jpg

Estaba viendo las cadenas http y me llamó mucho la atención esta en concreto:

Hay un referer en esa cadena (un "nombre de cuenta"). Uno que además me sonaba conocido. Google es nuestro amigo. Busqué Nobitazzz en Google y oh sorpresa... es el creador de nueve aplicaciones gratuitas de Cydia, entre ellas una que yo me instalé hacía tres semanas que permitía tener las nuevas opciones de iOS6 en iOS5. Se llama "iOS 6 Photos Menu", para enviar las fotos del carrete a Facebook y demás directamente sin ir a la aplicación concreta. El nombre me sonaba de verlo al instalar la aplicación de Cydia.

Veamos qué más nos dice Google de Nobitazzz... que tiene un buen posicionamiento web, con muchas visitas diarias (fuente: http://www.statscrop.com/www/nobitazzz.com)

Ahora casi todo cobraba sentido. El tío aumenta su PageRank haciéndose autovisitas desde todos los dispositivos iOS que tengan instaladas sus aplicaciones "gratuitas".

Ya me estaba poniendo nervioso. Sigo analizando un poco más todas las apariciones de Nobitazzz en el log de Wireshark y me doy cuenta de que todas hacen referencia a la página de ptp4ever.net

Entonces se me ocurre ir a la página, a ver qué es y qué servicio dan y, ahora sí, averiguo el motivo final de todo esto: esta página PAGA por visitas y mostrado de banners publicitarios. Curiosamente tiene una sección donde figuran los Top 10 que más dinero han ganado. Creo que encontraré a alguien conocido...

PTP4Ever.jpg

Vaya, vaya, vaya. Resulta que nuestro amigo es el tercero que más dinero ha ganado. No me creo lo que veo: ¡¡los usuarios de sus aplicaciones somos una granja de clics para su cuenta!

Conclusiones

Por fin descubrí de qué iba todo esto: sus aplicaciones gratuitas van haciendo llamadas a varios sitios que pagan por click o por ver banners, banners que los usuarios no ven nunca porque todo esto ocurre con el móvil bloqueado y en segundo plano. Es un timo en toda regla, a los usuarios y a los publicistas.

A los usuarios porque nos roban consumo de datos y CPU (por tanto batería), y a los publicistas porque están pagando por clics que nadie ve.

Lógicamente desinstalé la aplicación de este tío ipsofacto pero, quién me asegura que eso elimina este "proceso" del sistema. Ahora puedo seguir analizando mi tráfico en los próximos días, a ver si vuelve a la normalidad (que parece que sí) o reinstalar todo el iOS, con las consiguientes molestias de volver a meter toda mi configuración de Cydia (no me gusta iOS sin Cydia, pero ese es ya otro tema).

Lo que está claro es que paso de instalar cosas que apenas usaré. Solo lo imprescindible de Cydia para mí. Y ahora está claro cuán peligroso es instalar aplicaciones de Cydia, que no pasan ningún control por parte de nadie. ¿Quién te asegura que en vez de este "sencillo" sistema no te meten un keylogger, o monitorizan tu actividad, o cualquier otra cosa?

Yo sin Cydia no quiero iOS, así que seguiré arriesgándome a tenerlo, pero está claro que a partir de ahora meteré aplicaciones bien conocidas y con mucha reputación, como puede ser Springtomize o LockInfo, que además son de pago y no baratas precísamente.

Espero que os haya gustado este mi primer artículo de seguridad. Todo esto que he contado tan rápido me ha tenido bastante ansioso estos dos-tres días que he estado investigando. El "por qué" siempre te acaba llamando.

Saludos.

Posdata

Tras haber escrito el artículo me puse en contacto con los administradores de Cydia para comentarles el caso y, muy amablemente, se comunicaron con el desarrollador y con Saurik para resolver el problema. El desarrollador confesó estar empleando ese sistema de publicidad encubierta y ha dicho que no lo volverá a emplear más. Caso resuelto.

Unirse a la conversación

Puedes publicar ahora y registrarte más tarde. Si tienes una cuenta, conecta ahora para publicar con tu cuenta.

Guest
Responder a esta discusión...

×   Pegar como texto enriquecido.   Pegar como texto sin formato

  Sólo se permiten 75 emoji.

×   Tu enlace se ha incrustado automáticamente..   Mostrar como un enlace en su lugar

×   Se ha restaurado el contenido anterior.   Limpiar editor

×   No se pueden pegar imágenes directamente. Carga o inserta imágenes desde la URL.

  • Explorando recientemente   0 miembros

    • No hay usuarios registrados viendo esta página.