Desde WeLiveSecurity en Español seguimos cubriendo las charlas que tienen lugar en esta doceava edición de ekoparty en Buenos Aires, Argentina. Esta mañana fue el turno de Sheila Berta y Claudio Caracciolo, quienes coparon el escenario con su charla Backdoring CAN bus for remote Car Hacking.
Protocolos para el control de automóviles
El protocolo CAN (Car Area Networking) ha estado dando vueltas desde mediados de los años ochenta, cuando fue inventado por la compañía alemana Bosch con la intención de hacerlo inmune al ruido. Desde entonces, es utilizado para controlar los diferentes componentes que se incluyen en la arquitectura automotriz, entre los que, por ejemplo, se encuentran las luces o el tacómetro.
Este protocolo de comunicación define una trama que puede llegar a transportar hasta 64 KB de datos e incluye un número de identificación, que define la criticidad del mensaje transportado para el sistema según la cantidad de unos binarios que en él se encuentren. Como mencionaron los investigadores, esta resulta una característica clave, ya que permitiría ataques DoS en vehículos comprometidos.
Hoy en día, la mayoría de los fabricantes de vehículos implementan el protocolo CAN. Sin embargo, la seguridad es dejada de lado, lo cual podría permitir que se realicen ataques que afecten al comportamiento normal de los módulos operando a través suyo. Los investigadores desarrollaron un hardware que funciona como backdoor del protocolo; utiliza el conector OBD-II para inyectar tramas en el bus CAN, las cuales están preestablecidas para alterar el comportamiento de módulos específicos (tales como el control de las luces y otros sistemas), según las órdenes recibidas remotamente por un atacante.
A lo largo de la presentación, los oradores demostraron cómo, a través de la generación de un microcontrolador, era posible inyectar tramas al bus CAN a través del conector OBD-II. La comunicación se da mediante un par de cables de trenzados denominados CAN High (señal positiva) y CAN Low (señal negativa); si no se verifica que las señales sean iguales, se toma como ruido y se descarta, para evitar la interferencia. El análisis de qué cable se encuentra conectado a qué puerto del conector es el primer paso en el estudio de la implementación del protocolo.
La charla se centró en la explotación de modelos de vehículos comúnmente encontrados en Argentina, en contraposición con los nuevos modelos automáticos que abundan en otros países.
Tras analizar el envío de tramas en un escenario de prueba y error, Sheila y Claudio lograron dar con los valores necesarios para encender las luces del automóvil. Luego, utilizando un microcontrolador PIC18F2685 y un módulo SIM800L para el envío de mensajes SMS por GSM como canal de comando y control, pudieron extender el rango geográfico del ataque al hacerlo de manera remota.
¿Qué implicaciones posee esto para la seguridad de los usuarios?
La criticidad del ataque varía según la cantidad de componentes que se encuentren conectados con el bus CAN y la complejidad de las funciones que estos tengan. Los nuevos modelos de automóviles que incluyen funcionalidades de estacionamiento automático o que pueden cambiar a un modo deportivo poseen un gran número de componentes que pueden ser vulnerados una vez comprometido el bus CAN.
Incluso elementos que parecieran irrelevantes, como las luces del tablero, podrían utilizarse para indicar al conductor que el vehículo presenta problemas y, de este modo, forzarlo a detenerse. Se podrían prender los indicadores de falta de nafta, falta de aceite o motor sobrecalentado, por ejemplo, para que la persona se asuste.
Si junto al microcontrolador se incluye geolocalización, además podría forzarse la detención en algún punto estratégico para el cibercriminal.
¿Son factibles estos ataques?
Una de las mayores dificultades que encontraron los investigadores al desarrollar el escenario de compromiso es que, aunque el protocolo es un estándar en la industria automotriz, sus implementaciones varían según el fabricante e, incluso, el modelo. Con esto en mente, cualquier ataque que un cibercriminal quisiera llevar a cabo debiese ser cuidadosamente orquestado para el modelo de auto que desea comprometer.
Además, para llegar a comprender cómo es la implementación del protocolo en ese modelo de automotor en particular, es necesario contar con un vehículo de pruebas sobre el cual se pueda estudiar el efecto obtenido tras el envío de diferentes tramas. También es necesario hacerse de software y hardware específico para el análisis de señales analógicas.
En contraposición, una vez que el ciberatacante ha logrado entender el funcionamiento de la implementación y tiene en su poder el equipo requerido, solo son necesarios unos pocos minutos con el automóvil para comprometerlo, conectando el microprocesador al conector OBD-II. Muy pocos dueños de automóviles conocen dónde se encuentra este conector, por lo que les resultaría aún más difícil determinar si están sufriendo un ataque.
Numerosos canales de compromiso
A medida que los automóviles se conectan cada vez más a Internet, comprometer vehículos de manera física conectando microprocesadores no es la única alternativa. Otros medios de explotación han sido demostrados con anterioridad, como fue el caso de Nissan Leaf, vulnerado a través de la API disponible para desarrolladores móviles.
Estos se suman a las vulnerabilidades que han sido demostradas con anterioridad por los investigadores Chris Valasek y Charlie Miller en diversas ediciones de Black Hat y DEF CON, que tienen que ver con la conectividad de los vehículos inteligentes, y al caso analizado por Jaime Restrepo en la ekoparty del año pasado, aprovechándose de su dispositivo integrado.
La superficie de ataque se multiplica a pasos agigantados y posee consecuencias cada vez más graves, incluyendo daños físicos que pueden hasta costar la vida del conductor. Esto nos demanda, tanto a usuarios como a empresas, que incorporemos la ciberseguridad al conjunto de variables que analizamos al momento de crear y hacer uso de la tecnología.