Wardriving con el iPhone

Recientemente me he apuntado a una de tantas modas: el iPhone. Lo cual ha despertado en mi un mayor interés en las tecnologías inalámbricas más lejos que el uso “en casa”.
Así que hoy voy a contar mi experiencia online con el iPhone a pie de calle.
Comprendiendo la necesidad:
El iPhone dispone de conectividad a redes y un buen conjunto de aplicaciones como para sacarle probecho mucho más lejos del correo electrónico y los mapas o sincronizar las tareas del calendario de google. Y si esto no fuera suficiente también permite obtener aplicaciones de terceros que le añaden nuevas funcionalidades, como pudiera ser descargar agregadores RSS, modificar tu blog offline y sincronizarlo, conectar a messenger, a skype o controlar remotamente tu PC.
Cuando te planteas darle un uso real a esta conectividad debes de plantearte si utilizarás un plan de datos de tu operador de telefonía móvil u otras tecnologías como las redes wifi 11b y 11g.
Yo ya había utilizado wifi antes de tener este teléfono, pero en otra escala. No es lo mismo la aplicación que le des dentro de tu casa o cuando llevas algo tan limitado como una PSP que cuando llevas un iPhone.
Una vez llegado a este punto y con la “nueva necesidad” de conectar en cualquier parte, cualquier usuario de iPhone podría plantearse ¿donde está ese “cualquier parte”? El wardriving es parte de la solución (ya hablaremos de otras soluciones).
¿Qué es Wardriving?
Según Wikipedia: “Se llama wardriving a la búsqueda de redes inalámbricas Wi-Fi desde un vehículo en movimiento. Implica usar un coche o camioneta y un ordenador equipado con Wi-Fi, como un portátil o una PDA, para detectar las redes. Esta actividad es parecida al uso de un escáner para radio.”
Sin embargo en estas circunstancias ya no es necesario cargar con todo ese equipo, puesto que el propio iPhone tendrá toda la funcionalidad que indica esa definición (bueno, el iPhone no incluye coche). Es decir un único iPhone y un par de aplicaciones es posible localizar las redes que necesitaremos para acceder a internet para realizar llamadas VoIP mediante skype, enviar correos electrónicos, …
¿Con qué software localizo esos puntos de acceso?
Preferiblemente evitaremos utilizar la propia aplicación incluida en el teléfono. Aun que en un apuro podría ser una solución, esta aplicación sólo muestra redes con mucha covertura.
Existen muchas aplicaciones en el AppStore con este objetivo. Aun que la gran mayoría son bases de datos (unas online y otras offline) que contienen listados predefinidos con posiciones para el GPS. Pero eso no es lo que buscamos:
Tras probar varias de las aplicaciones que se encuentran en el AppStore me he quedado con WifiTrak (0,79€), WiFiFoFum (2,39€) y para los jailbreakeados: StumblerPlus (Gratis en Cydia). También has de tener en cuenta que existen (o existieron) otras aplicaciones que han sido eliminadas del AppStore por acceder al API privado de Apple como pudiera ser la gratuita WiFind
Cada uno tiene sus ventajas e inconvenientes:
WifiTrak genera un listado de puntos de acceso (tanto abiertos como protegidos) y te da la opción de conectarte o de ignorarlos.

WiFiFoFum no permite conectarse, pero si va guardando un listado de puntos de acceso con sus coordenadas obtenidas del GPS permitiendote ver dichas posiciones en el GPS o enviarlas por correo electrónico. También permite filtrar los puntos de acceso en función de la encriptación, calidad de la señal o precisión del GPS. El gran defecto, está en que WiFiFoFum envía los datos que has recolectado a su servidor para enviarselos a tu teléfono tratados antes de mostratelos en el mapa.

StumblerPlus es el único de los 3 que no funciona de forma automática. Por lo que necesitarás pulsar “scan” manualmente y guardar también manualmente los que consideres oportunos. Entre los puntos de acceso guardados podremos consultar su ubicación en el mapa (pero necesitaremos conexión a internet para ver tal ubicación). Este último me ha resultado curioso, por que diría que han robado y mejorado el código gpl de el ya anticuado iphone-wireless pero sin publicar los fuentes.

En general el problema está en que tendrás que “llegar a casa” o a un punto de acceso para ver las posiciones en un mapa.
¿Como compruebo si el punto de acceso funciona?
La forma más sencila: Simplemente utilízalo. Aun que también puedes probar con aplicaciones de ping, tracert, whois… Pero desde luego, hagas lo que hagas, no hagas nada que no le gustaría que hicieses al dueño del punto de acceso.
Incluso existen algunas aplicaciones en cydia para encapsular TCP sobre DNS y otros artilugios, pero el objetivo de este manual es acceder a los puntos de acceso que se encuentran abiertos voluntariamente. No para forzar nuestra entrada.
¿Algún consejo de seguridad?
Sobre todo uno: Si estás en un punto de acceso sin encriptación, cualquiera puede interceptar cualquier comunicación que hagas. Por lo que sería muy recomendable tener siempre en mente que tráfico encriptado enviarás o recibirás y cual irá en plano. Un usuario y/o contraseña sin encriptar te puede suponer muchos quebraderos de cabeza.
¿Algo en el horizonte?
Si, inicialmente había considerado la opción de hacer una aplicación similar a las 3 comentadas aquí. Pero he visto que el API orientada a scanear redes cambia continuamente (posiblemente de forma deliberada por parte de Apple) e incluso hay un API completamente nueva en la beta actual del firmware 3.0. Por lo que ni estas 3 aplicaciones funcionarán sin actualizaciones en dicho firmware. Por tanto he decidido conformarme con lo que hay y esperar y hacer “el cachito que falta” sin reinventar la rueda.
Con estas aplicaciones ya puedes localizar puntos de acceso, pero no puedes verlos en un mapa o ver la distancia que hay. Por lo que quizá haga una pequeña aplicación que convierta los logs de WiFiFoFum al formato del Bookmarks.plist de la aplicación de mapas.
En un principio se que suena fácil, pero el formato de WiFiFoFum es binario y sería deseable dar una interfaz gráfica para escoger los hotspots.
(También tengo otra idea en mente, pero de eso ya hablaremos más adelante…)


Comentarios recientes