Los investigadores de Check Point Research (CPR), la división de Inteligencia de Amenazas de Check Point® Software Technologies Ltd. (NASDAQ: CHKP), un proveedor líder de soluciones de ciberseguridad a nivel mundial, ha identificado vulnerabilidades en el mecanismo de pago por móvil de Xiaomi. Si se deja sin parchear, un atacante podría robar las claves privadas utilizadas para firmar los paquetes de control y pago de Wechat Pay. En el peor de los casos, una aplicación Android sin privilegios podría haber creado y firmado un paquete de pago falso.
Los pagos con el móvil se han hecho muy populares y se han convertido en una forma de cobro habitual en todo el mundo. Según las últimas estadísticas del portal Statistica, en 2021 el Extremo Oriente y China representaron dos tercios de los pagos móviles del mundo. Esto supone unos 4 billones de dólares en transacciones de monederos móviles. Una cantidad tan grande de dinero atrae sin duda la atención de los ciberdelincuentes.
En concreto, las vulnerabilidades se encontraron en el Trusted Environment de Xiaomi, encargado de almacenar y gestionar información sensible como claves y contraseñas. Los dispositivos estudiados estaban equipados con chips MediaTek. CPR descubrió dos formas de atacar el código de confianza:
1. Desde una aplicación Android sin privilegios: el usuario instala una aplicación maliciosa y la lanza. La app extrae las claves y envía un paquete de pago falso para robar el dinero.
2. Si el ciberdelincuente tiene los dispositivos objetivo en sus manos: rootea el dispositivo, luego baja el entorno de confianza y después ejecuta el código para crear un paquete de pago falso sin necesidad de una aplicación.
Si el TEE es seguro, también lo son sus pagos
El entorno de ejecución de confianza (TEE) ha sido una parte integral de los dispositivos móviles durante muchos años. Su objetivo principal es procesar y almacenar información de seguridad sensible, como claves criptográficas y huellas dactilares. Dado que las firmas de los pagos móviles se llevan a cabo en el TEE, suponemos que, si el TEE es seguro, también lo son sus pagos.
El mercado asiático, representado principalmente por los smartphones basados en chips MediaTek, aún no ha sido ampliamente explorado. Nadie está examinando las aplicaciones de confianza escritas por los proveedores de dispositivos, como Xiaomi, a pesar de que la gestión de la seguridad y el núcleo de los pagos móviles están implementados allí. La investigación actual es la primera que se hace para examinar sus aplicaciones en busca de problemas de seguridad.
Las aplicaciones de confianza de Xiaomi pueden ser degradadas
Xiaomi puede incrustar y firmar sus propias aplicaciones de confianza. Los investigadores han descubierto que un atacante puede transferir una versión antigua de una aplicación de confianza al dispositivo y utilizarla para sobrescribir el archivo de la nueva aplicación. Por lo tanto, un ciberdelincuente puede eludir las correcciones de seguridad realizadas por Xiaomi o MediaTek en sus apps.
Además, se han descubierto varias vulnerabilidades en la aplicación de confianza thhadmin, responsable de la gestión de la seguridad, que podrían aprovecharse para filtrar claves almacenadas o ejecutar código en el contexto de la aplicación y, a continuación, realizar prácticamente acciones maliciosas falsificadas.
Comprometida la estructura de pago móvil integrada
Los dispositivos Xiaomi tienen un framework de pago móvil integrado llamado Tencent Soter que proporciona una API para que las aplicaciones Android de terceros integren las capacidades de pago. Su función principal es proporcionar la capacidad de verificar las transferencias de paquetes de pago entre una aplicación móvil y un servidor backend remoto, que son esencialmente la seguridad y la protección con las que todos contamos cuando realizamos pagos móviles. Según Tencent, cientos de millones de dispositivos Android son compatibles con Tencent soter. La vulnerabilidad que se ha encontrado, a la que Xiaomi ha asignado CVE-2020-14125, compromete por completo la plataforma soterrada de Tencent, permitiendo a un usuario no autorizado firmar paquetes de pago falsos.
WeChat Pay y Alipay son los dos mayores operadores del sector de los pagos digitales en China. Juntos, representan alrededor del 95% del mercado chino de pagos móviles. Cada una de estas plataformas tiene más de mil millones de usuarios. WeChat Pay está basado en el soterramiento de Tencent. Si un vendedor de aplicaciones quiere implantar su propio sistema de pago, incluido el backend que almacena las tarjetas de crédito de los usuarios, las cuentas bancarias, etc., sin estar vinculado a la aplicación WeChat, puede utilizar directamente el soter de Tencent para verificar la autenticidad de las transacciones en su servidor de backend.
Check Point Research ha colaborado con Xiaomi, que reconoció las vulnerabilidades y proporcionó correcciones para las mismas.
“Descubrimos un conjunto de vulnerabilidades que podrían permitir la falsificación de paquetes de pago o su desactivación desde una aplicación Android sin privilegios. Fuimos capaces de hackear WeChat Pay e implementamos una prueba de concepto totalmente operativa. Nuestra investigación es la primera que se hace para revisar las aplicaciones de confianza de Xiaomi en busca de problemas de seguridad. Inmediatamente comunicamos nuestros hallazgos a Xiaomi, que trabajó rápidamente para emitir una solución. Lo que queremos decir a los usuarios es que se aseguren constantemente de que sus teléfonos están actualizados con la última versión proporcionada por el fabricante. Si ni siquiera los pagos por móvil son seguros, ¿qué lo es?”, explica Slava Makkaveev, investigador de seguridad de Check Point Software.