Resumen: En los últimos años se ha observado un gran avance tecnológico y el servicio de Internet no es la excepción (en México el servicio doméstico básico es 180 veces más rápido que hace 15 años). Esto ha permitido conectar cada vez más dispositivos, surgiendo así el Internet de las cosas (IoT). De esta manera, el número de dispositivos conectados ha alcanzado una cifra aproximada de 20 mil millones, y se espera que para 2020 llegue a 50 mil millones. Esto ha generado grandes retos para mantener la seguridad y privacidad de la información ya que la mayoría de los dispositivos de IoT se centran en la conectividad y están incluyendo configuraciones por defecto donde la seguridad se ve gravemente afectada. Este artículo presenta los resultados del análisis de tráfico realizado a diversas aplicaciones para iOS, con el objetivo de informar lo fácil que puede ser capturar el tráfico, aunque se utilice el protocolo https y que aún existen muchas aplicaciones que transmiten información sin cifrar.
Palabras clave:Internet de las cosasInternet de las cosas,IoTIoT,SeguridadSeguridad,Apple WatchApple Watch,Análisis de tráficoAnálisis de tráfico.
Abstract: In recent years, a great technological advance has been observed and Internet service is not the exception (in Mexico, basic domestic service is 180 times faster than 15 years ago). This has allowed connecting more and more devices, thus arising the Internet of Things (IoT). In this way, the number of connected devices has reached around of 20 billion, and it is expected to reach 50 billion by 2020. This has generated major challenges for maintaining information security and privacy, because most IoT devices focus on connectivity and are including default settings where security is severely affected. This paper presents the results of the traffic analysis performed on various iOS apps, with the goal to inform how easy can be to capture traffic, even though using https protocol, and to show that there are still many applications that transmit information without encryption.
Keywords: Internet of Things, Security, Apple Watch, Traffic Analysis.
Computación e Informática
La Seguridad en Internet de las Cosas: Analizando el Tráfico de Información en Aplicaciones para iOS
Security in the Internet of Things: Information Traffic Analysis for iOS Apps

Recepción: 09 Septiembre 2016
Aprobación: 15 Marzo 2017
En los últimos años se ha observado un gran avance tecnológico y el servicio de Internet no es la excepción (en México el servicio doméstico básico es 180 veces más rápido que hace 15 años). Esto ha permitido conectar cada vez más dispositivos, lo cual originó que la cantidad de dispositivos conectados a Internet superara al número de habitantes en el mundo (entre 2008 y 2009), dando como resultado el término “Internet de las cosas” (IoT, por sus siglas en inglés) (Figuerola, 2014).
(Figuerola, 2014; Rahman, Daud, & Mohamad, 2016) mencionan que para el año 2020 la cantidad de dispositivos conectados en total será de 50 mil millones, mientras que (Yu, Sekar, Seshan, Agarwal, & Xu, 2015) argumentan que, para el mismo año, habrá 25 mil millones de dispositivos sólo de IoT. Este gran incremento en el número de dispositivos conlleva un gran reto para la seguridad, ya que por lo general son productos novedosos que ofrecen una funcionalidad específica y muchos fabricantes descuidan las características de seguridad, debido a la competencia por llegar primero al mercado y que su producto sea fácil de usar (Yu et al., 2015).
Un estudio realizado por HP (Hewlett-Packard, 2015) revela que un 70% de los dispositivos de IoT no cifran sus comunicaciones, el 70% permiten a un atacante identificar las cuentas de usuario válidas, el 60% de los que tienen interfaz de usuario son vulnerables a distintos ataques como secuencias de comandos en sitios cruzados (XSS). Considerando que estos dispositivos recopilan una gran cantidad de información sensible para los usuarios, esto se vuelve un gran riesgo de seguridad (Rahman et al., 2016).
El objetivo de este trabajo es realizar una serie de análisis de tráfico en aplicaciones iOS que cuentan con versión para Apple Watch, para mostrar qué tan fácil es interceptar tráfico https y que, aunque las conexiones se hagan mediante este protocolo, no se debe transmitir información sensible de los usuarios sin cifrar.
Las siguientes secciones del documento están organizadas de la siguiente manera: en la sección 2 se presenta una breve contextualización acerca de IoT; la sección 3 muestra de manera sintetizada los resultados de una revisión sistemática acerca de la seguridad en IoT; la sección 4 muestra una clasificación de los dispositivos de IoT; la sección 5 presenta los resultados de las pruebas realizas y la sección 6 presenta las conclusiones.
El Internet de las cosas (IoT) se puede definir como una red altamente interconectada de entidades heterogéneas, tales como, etiquetas, sensores, dispositivos embebidos, dispositivos portátiles, etc., que interactúan y se comunican entre sí en tiempo real (Malina, Hajny, Fujdiak, & Hosek, 2016; Zhang & Green, 2015).
IoT revolucionará la manera en que las personas y las organizaciones interactúan con el mundo físico, la interacción con dispositivos domésticos, automóviles, plantas industriales, etc., sufrirá grandes modificaciones. También permitirá que muchos servicios como salud, educación y gestión de recursos, puedan ser mejorados para comodidad del cliente (Xu, Wendt, & Potkonjak, 2014).
El rápido crecimiento de IoT está creando grandes oportunidades de negocios. Los productos y servicios asociados a IoT generarán ingresos superiores a los $300 mil millones de dólares para 2020 (Singh & Singh, 2015).
A pesar de que se pronostica un acelerado crecimiento de IoT en todas las áreas, donde se encuentra más maduro es en el ámbito de los vestibles (wearables) ya que existe una gran cantidad de productos que se han estado comercializando y evolucionando desde hace varios años (Luque, 2016).
Son muchos los dispositivos vestibles que existen actualmente: lentes, gorras, relojes, bandas, ropa, zapatos, joyas, cinturones, cascos, etc.; sin embargo, los más utilizados son los que se usan en la muñeca (Luque, 2016), y según el estudio de IDC (International Data Corporation) de marzo de 2017, el Apple Watch es el tercer lugar de los vestibles más vendidos, es por ello que para realizar estas pruebas de concepto se eligió el Apple Watch.
Después de llevar a cabo la revisión sistemática de la literatura para identificar, evaluar, interpretar y sintetizar todas las investigaciones existentes y relevantes, se obtuvo el estado actual de la seguridad en IoT, siguiendo el método de Barbara Kitchenham (Kitchenham, 2004).
Como resultado del proceso de selección de estudios, se obtuvieron 31 estudios primarios, en la Figura. 1 se muestran las fuentes y cómo se fueron filtrando hasta obtener los primarios.

El análisis de los estudios primarios permitió identificar que el principal problema de seguridad en IoT se encuentra en la fase de comunicación, convergiendo hacia temas de cifrado, de los cuales se detectaron: falta de un estándar de cifrado y descifrado, falta de algoritmos ligeros de cifrado que permitan implementarse en dispositivos con poca capacidad de procesamiento, fuga de información, pérdida de confidencialidad, comunicaciones no protegidas, rastreo de paquetes, etc., el total de estudios primarios seleccionados y el análisis completo, se pueden consultar en (Martínez, Mejía & Muñoz, 2016).
Como resultado de la revisión sistemática, en esta sección se realiza una clasificación de los dispositivos de IoT según su ámbito de aplicación. La cual se aprecia en la Tabla 1

En general el IoT está generando grandes expectativas y se espera un crecimiento acelerado en los próximos años en todos los ámbitos (Yu, Sekar, Seshan, Agarwal, & Xu, 2015). Sin embargo, el ámbito de vestibles es el que ya está consolidado y con gran cantidad de productos comercializados, en el resto de los ámbitos muchos de los productos aún se encuentran como prototipos o se han implementado en proyectos aislados. Por ello para realizar las pruebas en este caso se seleccionó un dispositivo vestible, específicamente el Apple watch, ya que según (Luque, 2016) los dispositivos que se usan en la muñeca son los que tienen mayor demanda y en el último estudio realizado por IDC en marzo de 2017, el Apple watch aparece como el tercer vestible más vendido.
Una vez identificado que el mayor riesgo de seguridad se presenta durante la transmisión de la información y que el dispositivo para pruebas sería el Apple Watch, se procedió a realizar análisis de tráfico https para aplicaciones de iOS, ya que el reloj accede a las aplicaciones que necesitan conectarse a internet, a través de estar enlazado con un iPhone como receptor.
Se seleccionaron aplicaciones oficiales de las recomendadas por la misma App Store y con una valoración de 4+, todas de la categoría fitness y salud ya que Wristly Inc., en su informe del 2015 (Wristly, Inc., 2015) reporta que el principal uso que se le está dando al Apple Watch es el de monitorear la actividad física. Las aplicaciones seleccionadas fueron: Nike+ Run Club, Runkeeper, Runtastic, Strava y Pacer.
Para realizar las pruebas se utilizó una computadora con Windows 10, un iPhone y un Apple Watch, en la Figura 2 se muestran los dispositivos y herramientas utilizadas y el flujo de comunicación entre los mismos.

En la computadora se instaló charlesproxy (XK72, 2017), esta herramienta cuenta con una versión de prueba la cual fue suficiente para las pruebas realizadas, aunque existen muchas herramientas similares como wireshark, ZAP de OWASP, fiddler, etc., se seleccionó ésta porque tiene lo necesario para cumplir el objetivo de estas pruebas, con una configuración muy sencilla y una interfaz intuitiva.
Una vez instalado el proxy en la computadora, es necesario configurar el puerto por medio del cual se van a recibir las conexiones. Para esto, solo se selecciona la opción Proxy del menú principal y luego Proxy Settings, en la ventana de configuración se escribe el puerto seleccionado, en este caso el puerto es 8181. La Figura 3 muestra un ejemplo.

Enseguida se tiene que configurar el iPhone para que haga las peticiones a través del proxy, esto se hace en Configuración -> Wi-Fi, se selecciona la red a la que está conectada la computadora donde se instaló el proxy y se agrega un proxy http manualmente, en el servidor se pone la IP de la computadora donde se está ejecutando charlesproxy, y en puerto, el que se configuró previamente. La Figura 4 muestra un ejemplo.

Para realizar conexiones https es necesario instalar el certificado de charlesproxy en el iPhone, solo es necesario entrar a la página https://www.charlesproxy.com desde el iPhone con el navegador Safari (después de haber hecho la configuración anterior y teniendo en ejecución el proxy) y automáticamente aparecerá la pantalla para realizar la instalación. En la Figura 5 se muestra la pantalla antes y después de instalar el certificado.

Por último, para capturar el tráfico https en charlesproxy es necesario seleccionar la conexión, presionar el botón derecho del mouse y activar SSL Proxying como se muestra en la Figura 6.

Las siguientes subsecciones muestran una pequeña descripción de cada aplicación seleccionada, así como los resultados obtenidos en las pruebas.
Es una aplicación desarrollada especialmente para apoyar a las personas que les gusta correr, utiliza seguimiento GPS para guardar toda la información de las sesiones de entrenamiento, se pueden establecer planes de entrenamiento personalizados, tiene conexión con redes sociales, consulta de estadísticas, entre muchas otras cosas. Tiene una valoración en la App Store de 4+ estrellas (Nike, Inc., 2017).
Al analizar el tráfico generado por esta aplicación se puede obtener información personal del usuario como: nombre, estatura, peso, fecha de nacimiento, correo electrónico, token de acceso, configuración y permisos concedidos a la aplicación, notificaciones, lista de amigos. En la Figura 7 se muestran algunos de estos datos.

Es una aplicación que sirve para registrar la actividad física mientras se practican diferentes deportes como: caminar, correr, andar en bicicleta, etc., muestra estadísticas de ritmo, distancia, tiempo y calorías quemadas, cuenta con planes detallados que ayudan a cumplir objetivos, tiene conexión con redes sociales para compartir información con los amigos, etc. Tiene valoración en la App Store de 4+ estrellas (Runkeeper, LLC, 2017).
Algunos de los datos que se lograron obtener durante las pruebas de esta aplicación fueron: nombre del usuario, token de acceso, peso, estatura, correo electrónico, configuración y permisos otorgados a la aplicación, registros de actividad (calorías quemadas, kilómetros recorridos, tiempo invertido, etc.), lista de amigos (si el amigo inició sesión con Facebook, se puede obtener su id de usuario en Facebook), además si se vincula la cuenta de Twitter con esta aplicación, también se puede ver el usuario, el token de acceso y el token secreto de Twitter. La Figura 8 muestra un poco de esta información.

Es una aplicación para hacer ejercicio y registrar actividades deportivas (correr, caminar, ciclismo, etc.) vía GPS, muestra estadísticas, se puede establecer el objetivo anual y motiva al usuario a alcanzarlo, cuenta con una clasificación que muestra quien ha corrido más en un periodo determinado, se pueden compartir los logros en Facebook y Twitter, y muchas cosas más. Tiene valoración en la App Store de 4+ estrellas (Runtastic, 2017).
Algunos de los datos que se lograron obtener durante las pruebas fueron: nombre del usuario, token de acceso, peso, estatura, correo electrónico, configuración de la aplicación, registros de actividad (calorías quemadas, distancia, coordenadas de latitud y longitud, etc.). La Figura 9 muestra un poco de información de perfil y de configuración.

Esta aplicación monitorea carreras y vueltas en bicicleta con GPS, permite compartir actividades en Facebook y Twitter, comparte fotos en Instagram, cuenta con tabla de posiciones para competir contra amigos, guarda historial de actividades, sugiere lugares populares que los usuarios usan para correr o entrenar, entre muchas cosas más. Tiene valoración en la App Store de 4+ estrellas (Strava, Inc., 2017).
El análisis del tráfico generado por esta aplicación permitió obtener algunos datos, entre los cuales están: nombre del usuario, token de acceso, correo electrónico, configuración de la aplicación, registros de actividad (fecha, distancia, duración, etc.), lista de amigos (si el amigo inició sesión con Facebook, se puede obtener su id de usuario en Facebook). La Figura 10 muestra un poco de esta información.

Aplicación diseñada para ayudar a llevar un control sobre tres de las principales mediciones de salud: actividad diaria, peso corporal y presión arterial; cuenta pasos, calorías quemadas y kilómetros recorridos en segundo plano, también cuenta con la opción para registrar actividad (caminar o correr) por medio de GPS, cuenta con un objetivo diario de pasos, guarda historial diario, permite crear o unirse a grupos, entre muchas otras cosas. Tiene valoración en la App Store de 4+ estrellas (Pacer Health, Inc., 2017).
Algunos de los datos de los usuarios a los que permitió tener acceso el análisis de tráfico de esta aplicación son: dispositivo desde el que se conecta, id del dispositivo, llave de autenticación, token de acceso, id de usuario, nombre, domicilio, año de nacimiento, grupos a los que pertenece, además la aplicación recomienda grupos de los cuales, sin formar parte de ellos, se puede obtener información como nombre del propietario y su domicilio incluso con coordenadas de latitud y longitud. En la Figura 11 se muestran algunos de estos datos.

A continuación, en la Tabla 2, se presenta de manera sintetizada una comparativa entre las aplicaciones, tomando como base la información que se pudo obtener de cada una de ellas a través del análisis del tráfico https.

Como se puede observar, estas aplicaciones transmiten una cantidad considerable de información sin cifrar que, aunque la mayoría de ésta pudiera parecer no muy comprometedora, el simple hecho de que alguien pueda acceder a los hábitos de una persona y conocer dónde vive, lugares dónde ejercitarse, cuanto tiempo en promedio dura su rutina de ejercicio, etc., es un gran riesgo, porque estos datos podrían ser útiles para delincuentes.
En este trabajo se presentaron de manera sintetizada los resultados de una revisión sistemática de literatura para conocer el estado actual de la seguridad en IoT, una vez identificado el problema de seguridad en IoT el cual es la transmisión de información sin cifrar, se decide realizar el análisis de tráfico a diversas aplicaciones oficiales de la App Store. El resultado obtenido mostró que las peticiones son solicitadas por medio del protocolo https, sin embargo, transmiten mucha información sin cifrado que es susceptible a ser interceptada ya que actualmente existe una gran variedad de aplicaciones diseñadas para capturar tráfico https.
Cabe resaltar que estas pruebas fueron realizadas únicamente para analizar el tráfico que trasmiten las aplicaciones y dar a conocer a los usuarios la información que puede ser vulnerable en caso de que se conecten a redes desconocidas e instalen certificados de procedencia dudosa. Como trabajo futuro se analizarán otras herramientas que permitan realizar pruebas similares, pero que sean totalmente transparentes para el usuario del Apple Watch.












