20 septiembre 2016

15 segundos


Este articulo no pretende ser de carácter técnico, ni novedoso, todos los detalles de comunicación con los vehículos están más que accesibles en Internet y cualquiera puede documentarse para conocerlos. Solo es una prueba de concepto que muestra, que la seguridad en el software y hardware en la automoción sigue igual que a finales de los 90 cuando realicé mi primer acercamiento a las comunicaciones entre dispositivos en la Automoción.

Este tema daría para mucha, mucha más literatura, para los que ya se han introducido en este mundo encontrarán a faltar detalles técnicos, pero sólo se ha simplificado en diagonal el concepto de Inseguridad que existe en esta tecnología. Existe mucha documentación fácil de obtener y con todo tipo de detalles, interfaces, y software para iniciarse en este campo.

Los sistemas de hardware y software para aplicaciones de automoción son cada vez más complejos, el que existan multiples fabricantes dificulta la coordinación sobre todo a nivel de normativas de seguridad y buenas prácticas.
En los últimos años han aparecido normas de automoción como la  ISO 26262, que se publicó en noviembre de 2011, y que ofrece a todos los fabricantes un mecanismo común para medir y documentar la seguridad de un sistema de automoción. 
Fue creada específicamente para la producción de automóviles, la norma ISO 26262 proporciona una serie de pasos para gestionar la seguridad funcional y regular el desarrollo de productos a nivel de sistema, hardware, desde el desarrollo conceptual hasta el final de su vida útil.
La realidad, es que a pesar de que gracias a Hackers como por ejemplo Charlie Miller que se dedican a reportar problemas de seguridad, los fabricantes  empiezan a ser sensibles al respecto, pero sensibilidad no es suficiente. Desde al menos 1999-2003 es posible realizar este tipo de ataques, cierto es, que en aquellos tiempos no estaban los vehículos conectados a Internet, pero sí se podía acceder a las unidades de control como ahora, en aquel entonces usaba un portatil y mediante RS232 accedía a la red del vehículo pudiendo interactuar con él como veremos más adelante. 

Imagen cable que usaba en 2002, todavía en uso.

Todos los fabricantes de vehículos tienen desarrollado un Hardware/Software especifico para diagnosticar sus vehículos, todos los concesionarios y talleres disponen de este hardware para poder acceder a todas las unidades de control, bien para simplemente diagnosticar fallos en el sistema, o por ejemplo programar un juego de llaves nuevas, ajustar valores, probar elementos, realizar chequeos, eliminar los indicadores de la revisión del aceite, borrar averías, activar o desactivar funciones. En el "underground", las mafias de exportación de vehículos emplean estas técnicas para reducir kilómetros en los cuadros de instrumentos y cosas menos ilegales como re-programar la unidad de control del motor para ganar unos caballos de potencia extra, jugando con los márgenes de rendimiento que se guarda el fabricante.

En el siguiente vídeo sólo veremos como es posible acceder a la electrónica del coche aprovechando un descuido del usuario del vehículo, que permitirá al atacante, colocar nuestro "troyano" que posteriormente  dará acceso al coche y sus todas sus funcionalidades.
Colocar el "bicho" en el vehículo para controlarlo de forma remota. (pequeño dispositivo que mediante bluetooth nos permitirá tener acceso a las unidades de forma remota).
La tecnología ha permitido reducir el tamaño y eliminar el cable para acceder al coche)

Imagen 1. Dispositivo a colocar en el vehículo.

Imagen 2. PinOut conector de diagnosis.


Imagen 3 Conector de diagnosis ubicado en el vehículo dónde conectaremos nuestro dispositivo.

En las siguientes 2 imágenes veremos la ubicación del conector en dos fabricantes





En las siguientes imágenes veréis el conector "con" y "sin" nuestra "garrapata" en uno de los coches en los que he realizado las pruebas..




Cada unidad de control tiene su identificador y sus peticiones específicas, con sus respuestas, es bastante cuadrado y fácil de ver cuando te pones en ello.

Pero cambia mucho dependiendo del fabricante, no todos usan el mismo protocolo. El acceso a la unidad de control de Motor sí que se ha estandarizado bastante, y es muy fácil acceder a los parámetros a tiempo real de cualquier motor fabricado desde mediados de los 90.

Con un simple interface que podéis montaros vosotros mismos como este, podréis iniciar las primeras conversaciones con vuestro coche que funcionarán bajo el protocolo ISO 9141-2 que principalmente es usado por  la mayoría de fabricantes Asiáticos y Europeos y os permitirá acceder a la unidad electrónica de vuestro motor.


Interface ISO41




Fragmento de parámetros leídos a tiempo real de la unidad de control de un motor gasolina de BMW

Detalles de la trama
Para el resto de unidades de control como Airbags, ABS, Multimedia, Cierre centralizado, Cuadro de Instrumentos, Dirección, Climatización, Navegación, Sensores Parking etc, en la mayoría de fabricantes de utiliza el protocolo CAN BUS

Podréis iniciaros por ejemplo con este adaptador  USB Can BUS que cuesta unos 25$.

USB can BUS adapter

Ejemplo de CAN DATA FRAME


En el video anterior vemos como hemos accedido al cluster (cuadro de instrumentos), lanzando una cadena de comandos secuenciales para actuar en todos los elementos del cuadro.

En el siguiente vídeo vamos a ver como accedemos a otra unidad de control encargada de la activación y desactivación del control de Tracción, un elemento de seguridad  que evita muchos accidentes, a pesar de tener algunos modelos un botón de activación/desactivación se podría realizar un ataque persistente para tenerlo desactivado siempre.




En el siguiente vídeo se puede ver como se accede a la unidad de control de la climatización del un coche..



Para obtener el resultado que hemos visto en los vídeos anteriores, inicialmente capturamos las peticiones legítimas del Hardware oficial del fabricante, para posteriormente poder reproducir las peticiones y obtener los mismos resultados está vez de forma remota mediante bluetooth.

La seguridad en la automoción "moderna" no ha madurado a pesar de haber cumplido sobradamente la mayoría de edad, como todas las tecnologías, hay que ponerlas a prueba para detectar problemas de seguridad que ayuden a mejorarlas. Además, con la tendencia al alza de conectar el vehículo a internet en los modelos más recientes, aumentan los vectores de ataque y cada vez hay más unidades de control para las nuevas funcionalidades, cámaras, sensores de aparcamiento, frenada automática, los Auto-Pilots ,etc...

Queda demostrado de nuevo lo fácil que es acceder a las redes de comunicación interna de los coches.

Como la mayoría de las tecnologías, también se pueden usar para hacer el mal, y no hablaríamos de perdidas de datos, potencialmente estaríamos hablando de perdidas de vidas humanas, como decía al principio.

La seguridad implementada por defecto en la automoción, necesita un empujón, deben de igualarse los avances tecnológicos implementados en los coches con la seguridad que requieren.

Desde mi punto de vista no debería de ser tan fácil acceder a estas unidades de control, se han fabricado dispositivos de conexión OBD de todos los formatos y para todas las marcas de automóviles, basta con buscar por ejemplo en Aliexpress por OBD y veréis como por menos de 5 Euros hay dispositivos OBD que a través de bluetooth te van a permitir acceder a la unidad de control de motor para poder leer estados, parámetros, posibles averías, e incluso permite la interacción de poder borrar las averías y los "Service Checks" de los cambios de aceite.

Los hay más avanzados y con funciones más específicas como el clonar mandos y reprogramar llaves OBD KEY programmers  o KITS muy específicos que te permitirían arrancar coches de alta gama evadiendo todas las medidas de seguridad.

La triste situación actual, es qué, con unos pocos euros y con solo saber leer, puedes acceder a tu coche y establecer una conversación fluida con él. Y no importa cuanto te gastes en tu coche, es más probable que mientras más de alta gama sea, más posibilidades tengas de ser hackeado.

Vigila tu conector OBD, al menos, como las entradas USB de tu ordenador personal.

Os imagináis un "Rubber Ducky"  pero en este caso "RubberOBD"?

Un "bicho" autónomo, con las instrucciones ya aprendidas de casa, para que por ejemplo active el ABS cuando el sensor de giro detecte que estas en una curva.... Ficción?? realidad????

O por ejemplo también, aprovechando que los vehículos empiezan a incorporar frenada de emergencia al detectar objetos en la trayectoria del coche, el PatoOBD  podría frenar el vehículo enviando por CANBUS el comando suplantado que activa la frenada, incluso podría hacerse cuando el vehículo circule a una velocidad determinada, el PatoOBD estaría leyendo los datos referentes a la velocidad del vehículo, y cuando alcance la velocidad X, nuestro PatoOBD inyecta el comando de activación de la frenada de emergencia, Menudo susto!!!!


Cierto es que en la vida real, es muy poco probable que te coloquen un dispositivo de este tipo sin que te des cuenta, pero no falta mucho para que los fabricantes quieran entrar en la red de sus vehículos de forma remota, bien  para  realizar actualizaciones o para recoger estadísticas de uso, y todos sabemos que si el fabricante es capaz de hacerlo, también los malos podrán.

Estamos en los inicios de la era de los coches conectados, a pesar de que el porcentaje es muy bajo todavía, en unos años van a dar mucho que hablar..

Todo está por hacer, si su ciclo de vida evoluciona como el resto de tecnologías, se irán parcheando los problemas según se detecten, tal y como funciona casi todo lo tecnológico hoy en día.

Ya es bastante tarde para empezar desde 0.

15 segundos es el título de la entrada por este vídeo que seguro ya visteis en su momento.
El vídeo no tiene mucha visibilidad ya que el coche tiene el volante a la derecha, pero 'los malos' acceden al conector de diagnosis, colocan el interface, y posiblemente después desactivan la alarma para posteriormente acceder al inmobilizador del vehículo para programarle otras llaves. ( con sólo el "transponder" bastaría) una vez abierto el coche se lo llevan en escasos 15 segundos evadiendo todas las medidas de seguridad de en este caso un flamante Audi RS4. (80.000-90.000 Euros)

Este es un ejempo de como aprovechan los malos las debilidades existentes en la industria de la automoción.




Keep Hacking!!!!


Info de Interés

Leer más...

12 septiembre 2016

Regalamos 5 entradas para #Dragonjarcon 2016




La última vez que estuve en Colombia, fue en 2015, justamente para participar en un  evento organizado por Jaime Restrepo, de la comunidad Dragonjar: El DragonjarCON. En esa ocasión fue en la encantadora ciudad de Manizales, en el que tuve el placer de impartir un taller de Seguridad en Entornos Corporativos y la charla "Cooking an APT in the paranoid way".  

De hecho, y como suele ser habitual en las conferencias a las que he asistido en Latinoamérica, os conté aquí cómo fue la experiencia

Esta semana, el 17 y 18 de Septiembre, tendrá lugar la tercera edición de este evento, esta vez en Bogotá, al hotel NH Royal Metrotel Bogotá, en el que será sin duda todo un éxito.

Contarán con grandes ponentes y amigos, como Hugo Bayona, Mateo Martínez, Jose Pino, Álvaro Andrade, Sheila Berta, Alejandro Hernández, Jocsan Laguna, Rafael Bucio, el propio Jaime Restrepo.... y además como representación española va Pedro Candel!

Puedes registrarte en el mismo en la página del evento: https://www.dragonjarcon.org/

Este año no podré asistir a este evento Desde Security By Default, así como en otras ediciones, queremos colaborar con el evento regalando 5 entradas para el acceso al mismo. 

Para ello, sólo deberás dejarnos un comentario indicando por qué te mereces una entrada completamente gratuita para asistir a este fantástico evento. Seleccionaré las respuestas más creativas de entre las que dejéis. La fecha máxima para participar es el viernes 16 de Septiembre a las 23:59 en horario peninsular español (GMT+1)


Recuerda hacer mención a tu twitter o correo electrónico para que en caso que seas uno de los seleccionados, puedan comunicarse contigo.

Como bases del concurso, que sepáis que SOLO regalamos la entrada al evento.  No está incluido el viaje a Bogotá, ni la comida, ni los gastos de lo que hagas por allí. Por ello, te pediría que si participas en el concurso, es porque o vives en Colombia o te planteas viajar por tu cuenta a disfrutar del evento. La entrada es personal e intransferible, por lo que se la daremos al titular de la cuenta twitter/correo que dejes en tu comentario.

Espero vuestra participación!
  


Leer más...