La idea de usar una aplicación para controlar remotamente tu coche suena interesante. ¿Y si hace frío? Arrancas el motor mientras sigues en la cama y, al salir de la casa, el coche ya estará caliente. Si, por el contrario, hace calor, puedes arrancarlo para activar el aire acondicionado. Y ya no tendrás que recordar dónde te estacionaste, siempre podrás localizarlo mediante las coordenadas GPS de la aplicación.
Suena tentador y, por eso, cada vez más coches son compatibles con el control mediante aplicaciones móviles, pero ¿es seguro? Los expertos de Kaspersky Lab llevaron a cabo un estudio en dos fases para comprender este aspecto particular de la seguridad.
Investigando la seguridad de las aplicaciones de los coches conectados
La primera fase se llevó a cabo a finales del 2016 y, en la conferencia RSA de febrero del 2017, los analistas Mikhail Kuzin y Viktor Chebyshev presentaron un informe llamado Mobile apps and stealing a connected car (es español, usando aplicaciones móviles para robar coches conectados). Los expertos analizaron las aplicaciones para Android que permitían a los usuarios controlar sus coches conectados: abrir las puertas, arrancar el motor, ubicar el coche en un mapa, ver la información del salpicadero, etc.
Nuestros expertos analizaron nueve aplicaciones móviles de una larga lista de fabricantes y pusieron a prueba su protección. Su objetivo era evaluar si estas aplicaciones estaban protegidas contra tres tipos de ataques que usan las aplicaciones maliciosas: obtener el acceso root del dispositivo, colocar una capa con una ventana falsa sobre la interfaz de la aplicación e introducir código malicioso en la aplicación legítima del coche conectado.
Pero, primero, comprendamos por qué son peligrosos estos ataques.
Posibles vectores de ataque
Rooteo
En el modo de funcionamiento estándar, todas las aplicaciones Android almacenan datos, incluidos los nombres de usuario, las contraseñas y otro tipo de información, en partes aisladas de la memoria a las que otras aplicaciones no pueden acceder. Hacer root rompe este mecanismo de seguridad, ya que las aplicaciones pueden acceder a la información almacenada por otras aplicaciones y robarla.
Muchos tipos de malware se aprovechan de ello. Sobre un 30 % del malware más común para Android puede usar vulnerabilidades del SO para hacer root a los dispositivos. Además, muchos usuarios se lo ponen fácil a los virus porque son ellos mismos los que hacen root a sus dispositivos, algo que no recomendamos a no ser que estés 100 % seguro de que sabes cómo proteger tu smartphone o tableta con permisos root.
Superposición de la interfaz de la aplicación
Este truco funciona con mucha facilidad. El malware rastrea las aplicaciones cuando el usuario las abre y, en cuanto este abre una aplicación que reconoce, superpone una ventana en la interfaz con un gran parecido (o idéntica) a la de la aplicación en cuestión. El proceso es instantáneo, por lo que el usuario no llega a darse cuenta de nada malicioso.
Luego, cuando el usuario introduce la información en la ventana falsa, pensando que está interactuando con una aplicación de confianza, el malware roba los nombres de usuario, las contraseñas, los números de las tarjetas de crédito y demás información que sea de interés para los hackers.
Este truco es típico en los troyanos de aplicaciones bancarias, pero no solo se limitan a ellas, pues sus creadores ahora recopilan información de un gran número de aplicaciones en las que los usuarios introducen los números de sus tarjetas de crédito u otro tipo de información interesante para ellos.
La lista de aplicaciones imitadas es muy larga: varios sistemas de pago y aplicaciones populares de mensajería, aplicaciones para comprar billetes de avión y reservar hoteles, la tienda Google Play y Android Pay, aplicaciones con fines de pago, entre otras. Hace poco, los creadores de uno de estos troyanos empezaron a robar información de aplicaciones que ofrecen servicios de taxi.
Inserción de malware
Los hackers también pueden usar una aplicación legítima, aprender cómo funciona, introducir código malicioso en ella preservando las funciones originales y difundirla mediante Google Play u otros canales (en particular, anuncios maliciosos de Google AdSense).
Para prevenir el uso de este truco, los desarrolladores de aplicaciones tienen que estar seguros de que usan ingeniería inversa para introducir código malicioso requiera mucho tiempo y, así, no les resulte beneficioso. En un mundo ideal, los desarrolladores de aplicaciones que manejan información sensible usarían técnicas conocidas para reforzar la seguridad de las mismas desde la etapa de desarrollo, pero, por desgracia, en el mundo real no lo hacen siempre.
La amenaza principal
Mediante los métodos mencionados, las aplicaciones maliciosas pueden robar nombres de usuario, contraseñas y códigos PIN, así como el número único de identificación del vehículo (VIN), lo único necesario para autentificarse en la aplicación.
Una vez que los delincuentes obtienen dicha información, lo único que deben hacer es instalar la aplicación correspondiente en su propio smartphone y podrán abrir las puertas (todas las aplicaciones tienen esta característica) y arrancar el motor (no todas las aplicaciones lo permiten, pero es muy común) o robar el coche y hacer un seguimiento de los movimientos del usuario.
La amenaza ha pasado de la teoría a la práctica. En el foro Darknet hay anuncios para vender y comprar información real sobre los datos de los usuarios de aplicaciones de coches conectados y su precio es alto (bastante más de lo que se suele pagar por la información de tarjetas de crédito robadas).
Los ciberdelincuentes responden con rapidez a las nuevas oportunidades de ganar dinero, por lo que solo es cuestión de tiempo que se extienda este tipo de malware que ataca las aplicaciones de los coches conectados.
Primera parte: 9 aplicaciones de coches conectados, 0 con protección contra el malware
Cuando a principios de 2017 se publicó la primera parte de la investigación, los expertos habían comprobado 9 aplicaciones de coches conectados para Android de los mayores fabricantes y descubrieron que ninguna estaba protegida contra las amenazas mencionadas anteriormente.
De nuevo, todas las aplicaciones que estudiamos eran vulnerables a los ataques más comunes.
Los expertos de Kaspersky Lab se pusieron en contacto con los fabricantes de coches y les informaron de los problemas antes de publicar los resultados.
Segunda parte: 13 aplicaciones para coches conectados, 1 con protección contra (algún) malware
Siempre es interesante ver cómo se desarrollan los acontecimientos, por ello, Mikhail Kuzin presentó hace unos días la segunda parte del informe en el IAA, el salón del automóvil de Frankfurt.
El experto añadió otras cuatro aplicaciones a la lista y las examinó todas, poniendo a prueba, en total, 13 programas. Solo estaba protegida una de las nuevas aplicaciones (y solo contra uno de los tres tipos de ataque; en cuanto detectaba que se había hecho root el teléfono, dejaba de funcionar).
Y, lo que es peor: la nueva revisión mostraba que las primeras nueve aplicaciones seguían siendo vulnerables. Los desarrolladores no han hecho nada por solucionar el problema en todos estos meses. Es más, algunas de estas aplicaciones no se habían actualizado.
Por desgracia, los fabricantes, a pesar de su conocimiento y talento en el diseño de coches, todavía no cuentan con la experiencia necesaria para implementar la ciberseguridad de manera adecuada.
No son los únicos. Este problema es típico de los fabricantes de otros dispositivos conectados inteligentes. Sin embargo, con los coches, el problema es más urgente y serio, pues su hackeo puede causar pérdidas de miles de dólares o, incluso, arriesgar la vida de personas.
Por fortuna, los expertos en ciberseguridad no tienen por qué trabajar in-house ni tampoco hay por qué cometer los mismos errores. Nos alegra trabajar con los fabricantes para ayudarles a resolver los problemas con sus aplicaciones y demás instrumentos digitales.
Si te preocupa que los malos puedan acceder a tu smartphone, deberías instalar una protección de confianza para detectar y bloquear el malware antes de que intercepte información importante.