Mimo Baby Hack

Victor Casares
3 min readMay 10, 2018

--

Parte de nuestro trabajo en ISG LATAM es investigar nuevos productos y aplicaciones, esta vez nos decidimos por Mimo Baby. Un producto que monitorea la posición de un bebe, detecta si esta despierto y cuál es su temperatura actual entre otras cosas. El modo de funcionamiento es el siguiente:

La tortuga, envía información a través de BLE (Bluetooth Low Energy) al Lilypad y este se encarga de subir esa información a una nube IoT, desde la cual el Smartphone obtendrá los datos correspondientes.

El mismo vendor explica este funcionamiento de forma gráfica:

Uno de los problemas que encontramos es que la aplicación no realiza una validación adecuada de los permisos al momento de enviar la información desde el Lilypad (IP: 10.42.0.107) hacia la nube IoT (3.x.x.3). En una captura de Wireshark podemos ver que el Lilypad realiza un simple GET a la nueve IoT pasando los datos recibidos desde la Tortuga por BLE.

Analizando los paquetes no vimos ningún tipo de autenticación en los mismos por lo cual, cualquier persona podría enviar paquetes a la nube IoT, conociendo el formato del payload, enviando y alterando dentro del mismo valores que correspondan a la posición o temperatura de un bebe. Estos valores llegarían hasta la nube IoT y luego serían descargados de forma automática por el Smartphone.

Para realizar una simple prueba de concepto, cargamos dentro de nuestro querido Burpsuite diferentes "payloads" que alteran información sobre el estado de una tortuga (bebe). A continuación se puede ver un video de la prueba de concepto, recuerden que no es necesario estar autenticado para realizar el envío de los paquetes.. :)

Por otro lado, sabemos que una tortuga solo puede ser registrada por un usuario, pero… los ID de las tortuga son predecibles y la aplicación permite el envío de multiples request en pocos segundos, por lo cual sería posible registrar todas aquellas tortugas que no hayan sido registradas anteriormente, inclusive, las nuevas tortugas que serán vendidas en un futuro, esta debilidad causaría una denegación de servicio en los usuarios que deseen usar el producto, si es que la tortuga ya fue registrada por un "individuo malicioso", ya que, como mencionamos anteriormente una misma tortuga no puede registrarse 2 veces. La imagen a continuación muestra lo expuesto anteriormente:

Otra de las vulnerabilidades que nos gustaría comentarles es, la posibilidad de realizar un ataque de hombre del medio a través de BLE, debido a la débil configuración de los dispositivos, que no usan ningún mecanismo para cifrar la comunicación, es posible realizar un ataque de hombre del medio y posteriormente realizar ataques de Replay, que se verían reflejados en la aplicación móvil. A continuación dejamos un enlace como prueba de concepto:

Estas y otras vulnerabilidades fueron informadas al vendor mucho antes de realizar la publicación, pero nunca tuvimos retorno. Sin duda la seguridad de los dispositivos IoT es bastante baja en la mayoría de los casos.. Desde aquí nuestro aporte para ir mejorando…

--

--