Hoy en día, es bastante habitual tener un dispositivo que esté siempre a la escucha en casa, sobre todo con la proliferación de la línea de dispositivos Echo de Amazon y la serie Google Home. Aunque son piezas de tecnología increíblemente útiles, no están exentas de problemas de privacidad. Tienen micrófonos siempre activos y una conexión a Internet, lo que para algunas personas supone una invasión demasiado grande de la privacidad como para que estén en casa. El investigador de seguridad Matt Kunze ha demostrado que esos temores pueden estar justificados, ya que pudo convertir su Google Home Mini en lo que, en esencia, se podría describir como una especie de escucha telefónica.
Si bien esta vulnerabilidad fue descubierta y probada en un Google Home Mini, Kunze dice que supone que el ataque funcionó de manera similar en otros modelos de altavoces inteligentes de Google.
Ingeniería inversa del Google Home Mini
Vincular una cuenta a un dispositivo Google Home te da mucho control sobre él, ya que las "rutinas" del dispositivo pueden ejecutar comandos de forma remota. Las rutinas son útiles para predefinir funciones en función de condiciones específicas, pero se pueden utilizar de forma abusiva si se puede acceder al dispositivo de forma remota y controlarlo. Un ejemplo de rutina sería decir "Hola Google, buenos días", y el dispositivo enciende las luces y te informa del tiempo que hará ese día.
Kunze se propuso descubrir si era posible que un atacante vinculara su propia cuenta de Google al Google Home de alguien. Esto le permitiría, en esencia, aprovechar el control que se obtiene al vincular una cuenta a un dispositivo y utilizarlo para ejecutar comandos de forma remota en la red de alguien.
Haciendo uso de herramientas como el proxy man-in-the-middle (mitmproxy) yFrida, pudo observar el tráfico entre la aplicación Google Home en un teléfono inteligente y el dispositivo Google Home. A partir de ahí, descubrió que se podía vincular una cuenta de Google al dispositivo obteniendo su información a través de una API local y luego enviando una solicitud a los servidores de Google con información para vincularla. Kunze escribió un script en Python que toma las credenciales de Google y una dirección IP y luego vincula la cuenta de Google al dispositivo en la dirección IP dada.
Una vez que tenía el control sobre el dispositivo en cuestión, podía crear cualquier rutina y activarla en un dispositivo vinculado. Podía invocar al Asistente para llamar a un número de teléfono, lo que podía hacer en cualquier momento. Para que el ataque fuera lo más sigiloso posible, Kunze también activó el "modo nocturno", que reduce el volumen máximo y el brillo del LED. El volumen de la música no se ve afectado en absoluto, lo que hace que sea menos probable que el usuario lo note.
Sin embargo, la cosa empeora, ya que ni siquiera es necesario estar en la misma red Wi-Fi para que este ataque funcione: solo se necesita proximidad al dispositivo. Si envía paquetes de desautenticación a un dispositivo Google Home, este piensa que la red se ha caído y crea una red Wi-Fi para que pueda conectarse a ella nuevamente y reconfigurarla para una nueva red Wi-Fi. Los marcos de desautenticación (que son un tipo de marco de administración) se pueden enviar rastreando la dirección IP y es difícil protegerse contra ellos, ya que las redes WPA2 no cifran los marcos de administración.
Sin embargo, de la misma manera que puedes abusar de la API local del dispositivo Google Home y vincularlo a una cuenta de Google al estar en la misma red Wi-Fi, puedes hacer lo mismo una vez que te conectes a él cuando esté en modo de configuración.
Escuchar remotamente el micrófono de Google Home
Kunze escribió y probó una prueba de concepto detallada de cómo se podría usar un Google Home Mini para espiar a alguien.
- Crea una cuenta de Google "atacante".
- Acérquese de forma inalámbrica a Google Home.
- Comience a enviar paquetes de desautenticación a Google Home.
- Conéctese a la red de configuración de Google Home.
- Ejecute el script de Python para vincular el dispositivo a la cuenta de Google del atacante.
- Deje de enviar paquetes de desautenticación y espere a que el dispositivo se conecte a Internet.
- Ahora puedes ejecutar comandos en el dispositivo Google Home, incluso hacer que llame a tu número de teléfono.
Un atacante también puede hacer que el dispositivo envíe solicitudes HTTP arbitrarias dentro de la red del propietario. Esto aumenta la superficie de ataque, ya que un atacante podría intentar interactuar con otros dispositivos de la red, incluido el enrutador.
Google ha solucionado el problema
El lado positivo es que, después de que Kunze informara de esto el 8 de enero de 2021, Google finalmente lo solucionó. Ya no se puede vincular una cuenta a un dispositivo Google Home sin una invitación de la cuenta que ya está vinculada a él, y ya no se puede llamar a un número de teléfono de forma remota a través de una rutina. Además, en los dispositivos con pantalla, la red que el dispositivo crea para la configuración está protegida por WPA2 y requiere una contraseña para unirse.
Aunque esta vulnerabilidad recién se ha revelado, no es imposible que alguien más la haya descubierto y haya hecho un uso indebido de ella. Si te preocupan los dispositivos que siempre están escuchando, esta es una justificación para ello. Incluso si se solucionaesteproblema en particular, eso no quiere decir que no haya más vulnerabilidades en el futuro.
Fuente:Matt Kunze