“Los piratas informáticos pueden espiar cada pulsación de tecla de los teléfonos inteligentes Honor, OPPO, Samsung, Vivo y Xiaomi a través de Internet” –titulares alarmantes como este han estado circulando en los medios de comunicación durante las últimas semanas.
Su origen fue un estudio bastante importante sobre las vulnerabilidades en el cifrado del tráfico del teclado. Los atacantes que pueden observar el tráfico de red, por ejemplo, a través de un router doméstico infectado, pueden interceptar cada pulsación de tecla y descubrir todas tus contraseñas y secretos.
Pero no te apresures a cambiar tu Android por un iPhone todavía: esto solo afecta a la entrada del idioma chino mediante el sistema Pinyin, y solo si la función de “predicción en la nube” está activada. Sin embargo, pensamos que valdría la pena investigar la situación con otros idiomas y teclados de otros fabricantes.
Por qué muchos teclados Pinyin son vulnerables a las escuchas
El sistema de escritura Pinyin, también conocido como alfabeto fonético chino, ayuda a los usuarios a escribir palabras chinas usando diacríticos y el alfabeto latino. Es el sistema oficial de romanización del idioma chino, adoptado por la ONU entre otros.
Dibujar caracteres chinos en un teléfono inteligente es bastante incómodo, por lo que el método de entrada Pinyin es muy popular y lo utilizan más de mil millones de personas, según algunas estimaciones. A diferencia de muchos otros idiomas, la predicción de palabras en chino, especialmente en Pinyin, es difícil de implementar directamente en un teléfono inteligente: es una tarea compleja desde el punto de vista informático.
Por eso, casi todos los teclados (o, para ser más exactos, métodos de entrada [IME]) utilizan la “predicción en la nube”, lo que significa que envían de forma instantánea los caracteres Pinyin introducidos por el usuario a un servidor y reciben a cambio sugerencias de palabras completas. A veces se puede desactivar la función “nube”, pero esto reduce la velocidad y la calidad de la entrada en chino.
Por supuesto, los desarrolladores del teclado pueden acceder a todos los caracteres que escribas gracias al sistema de “predicción en la nube”. Y eso no es todo. El intercambio de datos de carácter por carácter requiere un cifrado especial, que muchos desarrolladores no implementan correctamente. Como resultado, los intrusos pueden descifrar fácilmente todas las pulsaciones de teclas y las predicciones correspondientes.
Puedes encontrar detalles sobre cada uno de los errores que se detectaron en la fuente original, pero en general, de los nueve teclados analizados, solo el IME Pinyin de los teléfonos inteligentes Huawei había implementado correctamente el cifrado TLS y había resistido los ataques.
Se descubrió que los IME de Baidu, Honor, iFlytek, OPPO, Samsung, Tencent, Vivo y Xiaomi eran vulnerables en distintas medidas, y que el teclado Pinyin estándar de Honor (Baidu 3.1) y el Pinyin de QQ no se actualizaban incluso después de que los investigadores se pusieran en contacto con los desarrolladores.
Se recomienda a los usuarios de Pinyin que actualicen su IME a la última versión y, si no hay actualizaciones disponibles, que descarguen otro IME Pinyin.
¿Envían otros teclados pulsaciones de teclas?
No existe una necesidad técnica directa para ello. En la mayoría de los idiomas, las terminaciones de palabras y frases pueden predecirse de forma directa en el dispositivo, por lo que los teclados más populares no requieren la transferencia de datos carácter por carácter. No obstante, los datos sobre el texto introducido pueden enviarse al servidor para la sincronización del diccionario personal entre dispositivos, para el aprendizaje automático o para otros fines no relacionados directamente con la función principal del teclado, como el análisis publicitario.
Ya sea que quieras que esos datos se almacenen en los servidores de Google y Microsoft, es una cuestión de elección personal, pero es poco probable que alguien esté interesado en compartirlos con personas desconocidas. Al menos uno de estos incidentes se hizo público en 2016: se descubrió que el teclado SwiftKey predecía direcciones de correo electrónico y otras entradas personales del diccionario de otros usuarios. Después del incidente, Microsoft desactivó temporalmente el servicio de sincronización, supuestamente para solucionar los errores. Si no quieres que tu diccionario personal se almacene en los servidores de Microsoft, no crees una cuenta de SwiftKey y, si ya tienes una, desactívala y elimina los datos almacenados en la nube siguiendo estas instrucciones.
No ha habido otros casos conocidos de filtración de texto mecanografiado. Sin embargo, la investigación ha demostrado que los teclados más populares supervisan activamente los metadatos mientras escribes.
Por ejemplo, Gboard de Google y SwiftKey de Microsoft envían datos sobre cada palabra introducida: idioma, longitud de la palabra, la hora exacta de entrada y la aplicación en la que se introdujo la palabra.
SwiftKey también envía estadísticas sobre el ahorro de esfuerzo: cuántas palabras se han escrito completas, cuántas se han predicho automáticamente y cuántas se han deslizado.
Si tenemos en cuenta que ambos teclados envían a la “central” el ID publicitario único del usuario, esto supone una gran oportunidad para la elaboración de perfiles. Por ejemplo, es posible determinar los usuarios que mantienen correspondencia entre sí en cualquier servicio de mensajería instantánea.
Si creas una cuenta de SwiftKey y no desactivas la opción “Help Microsoft improve”, entonces, según la política de privacidad, “pequeñas muestras” del texto escrito pueden enviarse al servidor. Se desconoce cómo funciona y el tamaño de estas “pequeñas muestras”.
Google permite desactivar la opción “Share Usage Statistics” en Gboard, lo que reduce de forma considerable la cantidad de información que se transmite: ya no se incluye la longitud de las palabras ni las aplicaciones en las que se ha utilizado el teclado.
En términos de criptografía, el intercambio de datos en Gboard y SwiftKey no generó ninguna preocupación entre los investigadores, ya que ambas aplicaciones se basan en la implementación de TLS estándar en el sistema operativo y son resistentes a los ataques criptográficos comunes. Por lo tanto, es poco probable que se intercepte el tráfico en estas aplicaciones.
Además de Gboard y SwiftKey, los autores también analizaron la popular aplicación AnySoftKeyboard. El teclado está a la altura de su reputación como teclado de los fanáticos de la privacidad, ya que no envía ningún tipo de telemetría a los servidores.
¿Es posible que las contraseñas y otros datos confidenciales se filtren desde un teléfono inteligente?
Una aplicación no tiene que ser un teclado para interceptar datos confidenciales. Por ejemplo, TikTok supervisa todos los datos que se copian en el portapapeles, aunque esta función no es necesaria para una red social. El malware en Android a menudo activa las funciones de accesibilidad y los derechos de administrador en los teléfonos inteligentes para capturar datos de los campos de entrada y directamente de los archivos de las aplicaciones “interesantes”.
Por otro lado, un teclado de Android puede “filtrar” no solo el texto escrito. Por ejemplo, el teclado AI.Type causó una filtración de datos de 31 millones de usuarios. Por alguna razón, recolectaba datos como números de teléfono, geolocalizaciones exactas e incluso el contenido de las agendas de direcciones.
Cómo protegerte del espionaje del teclado y de los campos de entrada
- Siempre que sea posible, usa un teclado que no envíe datos innecesarios al servidor. Antes de instalar una nueva aplicación de teclado, busca información sobre ella en Internet: si ha habido algún escándalo asociado a ella, aparecerá inmediatamente.
- Si te interesa más la comodidad del teclado que su privacidad (no juzgamos, el teclado es importante), revisa la configuración y desactiva las opciones de sincronización y transferencia de estadísticas siempre que sea posible. Estas funciones pueden ocultarse bajo distintos nombres, como “Cuenta”, “Nube”, “Ayúdenos a mejorar” e incluso “Donaciones de audio”.
- Comprueba los Permisos de Android que necesita el teclado y elimina los que no necesite. Definitivamente, el acceso a los contactos o a la cámara no es necesario para un teclado.
- Instala aplicaciones solo de fuentes fiables, comprueba la reputación de la aplicación y, de nuevo, no le des permisos excesivos.
- Utiliza una protección integral para todos tus teléfonos inteligentes Android e iOS, como Kaspersky Premium.