La actualización del software y del firmware mediante la OTA (actualización por aire) ha aumentado en los sectores de los dispositivos portátiles, la industria y la automoción para la plataforma integrada con el tiempo. Una vez que el producto está en el mundo real, el firmware o la actualización del software relacionada con la corrección de errores, correcciones de seguridad, o la actualización de características es necesaria para la mejora del dispositivo y mantenerlo actualizado con el último software.

OTA es una tecnología para actualizar el software o el firmware de forma remota.

En el caso de un vehículo, el firmware o software se actualiza de forma inalámbrica utilizando un dispositivo de telecomunicaciones, a través de una puerta de enlace dentro del coche a la ECU cuya presencia es cada vez mayor en el vehículo moderno.

¿Cuál es la necesidad de OTA (Over-the-Air Update) para el vehículo?

En la industria del automóvil, el vehículo se ha vuelto cada vez más inteligente e inteligente. En la actualidad, los vehículos están controlados principalmente por un software en lugar de por componentes mecánicos tradicionales. Hace una década, si había necesidad de actualizar el software, el vehículo era remolcado a la estación de servicio y los vehículos se conectaban al sistema/ordenador para una actualización. OTA resuelve el problema de la fiabilidad de cada actualización que solía estar presente antes, en segundo lugar la dependencia de la estación de servicio, llevando el vehículo a la estación, el costo de la actualización del software se convierte en muy bajo, y sin mucha molestia para el cliente y así como la estación de servicio. Por último, pero no menos importante, la actualización de seguridad a tiempo para cada vehículo es importante y se hace con facilidadEl enfoque de la actualización OTA para los teléfonos móviles y los vehículos son diferentes, la actualización OTA del vehículo es más compleja y estricta en comparación con el dispositivo de mano, la actualización de software inadecuada puede causar daño a la vida del usuario también. Las Unidades de Control Electrónico (ECU) se han convertido en el principal componente del vehículo hoy en día, la ECU ha sustituido a todos los componentes mecánicos de la dirección. En general, las ECUs están interconectadas por una o más redes y comparten información que permite complejas interacciones y regulaciones. Por ejemplo, en los sistemas avanzados de asistencia al conductor (ADAS), el aumento de las capacidades funcionales viene acompañado de una mayor complejidad del sistema, lo que hace que sea más probable que se produzcan errores de software que puedan tener implicaciones para la seguridad de todo el vehículo. Las actualizaciones y mejoras periódicas del software permiten garantizar la corrección, eficacia y fiabilidad de los sistemas a lo largo de toda la vida útil del vehículo. Este blog describe principalmente la solución de extremo a extremo que puede desplegarse para soportar las actualizaciones de software OTA en el sector de la automoción. En la sección anterior, hemos hablado de la OTA y entendemos que la actualización OTA en el sector de la automoción tiene grandes retos en términos de seguridad mientras se actualiza el software por aire. Si los atacantes se hacen con el control del vehículo, uno podría acabar en una situación de peligro.

  • La transmisión del motor puede encenderse/apagarse
  • Los pasajeros o los conductores pueden quedar encerrados dentro del coche
  • Hacer sonar el claxon continuamente
  • Controlar el sistema de dirección
  • Sistema de frenado del coche
  • Acelerar el coche más allá de la regulación de la carretera.
  • Controlar el sistema de navegación, audio o infoentretenimiento
  • Falsa alarma en el habitáculo

Veamos cómo se produce la actualización OTA en el vehículo. Resumen: El método de actualización remota OTA de los vehículos es rápido, rentable, y permite la actualización del software que se ejecuta en sus ECUs a través del aire, y los usuarios del coche pueden actualizar el software en cualquier lugar sin tener que ir al centro de servicio o taller de reparación. Además, los fabricantes de equipos originales pueden diagnosticar el coche basándose en los datos recibidos por vía aérea desde el coche

Figura 1: Visión general de la actualización OTA

OTA segura en el sistema de automoción: La actualización OTA segura es el factor más importante mientras se actualiza el firmware o el software para la ECU. Hay muchos desafíos para lograr una actualización OTA segura. Hay muchas técnicas propuestas e implementadas en la industria para lograr las actualizaciones OTA seguras. Vamos a discutir algunas de ellas y explicar la técnica más común utilizada en la industria del automóvil. Vamos a dividir toda la arquitectura de extremo a extremo en tres componentes y cuál es su propósito. Servidor Backend

  • Crear las imágenes actualizadas/Recoger las imágenes de los diferentes Tier-1
  • Proveer las imágenes de actualización de firmware y software para flashear en el dispositivo
  • Podría necesitar soportar la arquitectura cliente-servidor, si la unidad principal solicita la actualización.

Canal de comunicación

  • Proporcionar un mecanismo seguro
  • Proporcionar una red segura para que la imagen o los datos no sean manipulados.

Unidad principal

  • Podría ser necesario activar la actualización del software (cliente)
  • Asegurarse de que se instalan las imágenes correctas
  • Menos tiempo de inactividad mientras se actualizan las imágenes
  • Se produce un retroceso en caso de fallo

Servidor backend: El servidor backend es el principal responsable de la creación de las imágenes de firmware y software que deben desplegarse en las unidades de los vehículos. El servidor backend trata de recoger las imágenes que necesitan ser desplegadas de los diferentes proveedores de Tier-1 y las empaqueta en una sola imagen para todas las ECU. Este servidor de respaldo puede basarse en el sistema basado en Yocto (código abierto) o en la arquitectura de soporte de terceros. Canal de comunicación: La parte más desafiante del componente es cuando los datos/imágenes están expuestos a la n/w y son fáciles de manipular por los atacantes. Existen muchas técnicas, soluciones de código abierto y de terceros para la actualización segura de la unidad principal, la más utilizada es Uptane. Uptane es el primer marco de seguridad integral que guía la implementación de sistemas de actualización OTA a nivel de diseño. Unidad principal (vehículos en sí): Las unidades principales se componen de muchas ECU, algunas de ellas de alta velocidad, otras de menor velocidad, y también de diferentes tipos de ECU, TCU (unidad de control telemático), pasarelas, cada componente tiene un papel que desempeñar en la actualización OTA. La unidad principal también tiene que asegurarse de que está lista para conectarse al backend para obtener el firmware y el software actualizados. O que ella misma tenga la capacidad de activarse para solicitar la actualización. Actualización OTA utilizando Uptane El marco de actualización (TUF) está diseñado para crear un sistema de seguridad para proteger a los usuarios de los repositorios de software de los ataques de seguridad. Ha sido diseñado, teniendo en cuenta que el servidor backend puede no ser seguro, o la clave utilizada para la criptografía puede ser robada. Por lo tanto, lo que hace es crear un sistema distribuido, donde la dependencia de un sistema en particular no está allí, y en caso de que el hilo del atacante, todos los sistemas no pueden ser hackeados tan fácilmente al mismo tiempo. El marco de actualización (TUF) ha dividido las funciones en cuatro partes (raíz de confianza, marcas de tiempo, instantáneas, objetivos) Uptane se basa en el marco de actualización (TUF), que está distribuido (servidor de tiempo, directorio y repositorio de imágenes, manifiestos, ECUs primarias/secundarias, verificación total y parcial.

Figura 2: Visión general del servidor backend de Uptane

: Contendrá las imágenes (los datos que necesitan ser actualizados a la ECU) con metadatos (hashes criptográficos, tamaño del archivo) Repositorio de imágenes: El repositorio de imágenes utiliza una clave offline para firmar los metadatos de todas las actualizaciones disponibles para la ECU. Actualiza periódicamente (por ejemplo, semanalmente, mensualmente) los metadatos sobre las imágenes disponiblesUtiliza las herramientas de línea de comandos de Uptane para generar los metadatosUtiliza el umbral de claves sin conexión (por ejemplo, Yubikey, HSM, etc. de uso frecuente) para firmar los metadatos

Figura 3: Repositorio de imágenes

Repositorio de directorios: Repositorio de directorio utilizó la clave en línea para firmar los metadatos que se utilizarán para instalar en ECU en el vehículo. Determina qué imágenes deben instalarse en qué ECU, crea metadatos diferentes para los distintos vehículos y accede a los datos del inventario para obtener detalles sobre el vehículo. Normalmente se utiliza para indicar a un vehículo qué actualizaciones debe instalar, en función de lo que tenga

  • Puede utilizarse para hacer una lista negra instantánea de actualizaciones
  • Utiliza la API de Uptane para generar metadatos firmados
  • Utiliza una base de datos de inventario para leer y escribir información sobre las ECUs (por ejemplo, claves públicas, lo que se instaló anteriormente, etc.)

Figura 4: Repositorio de directorios

Así, la clave aquí es que es, antes de la instalación, necesita confirmar que la instrucción del directorio y el repositorio de imágenes coincide.

Figura 5: Intercambio de información del vehículo y del extremo OEM

Servidor de tiempo: Cuando la ECU primaria envía la lista de tokens para cada ECUS, al servidor de tiempo, el servidor de tiempo devuelve un mensaje firmado que contiene la lista de tokens y la hora actual Unidad de cabeza (el propio vehículo): En la unidad de cabeza del vehículo, tenemos un tipo diferente de ECU en función de cómo se conectan internamente o el mundo exterior, lo potente en términos de velocidad, almacenamiento, etc.

  • La ECU primaria (TCU) descarga las imágenes, las verifica y luego distribuye los metadatos a las otras ECU secundarias
  • Las ECU secundarias también verifican la imagen antes de actualizar las imágenes.
  • Realiza la verificación total y parcial

Figura 6: Comunicación entre ECUs

Canal de comunicación

Flujo completo de comunicación desde la unidad principal hasta el servidor Backend.

Figura 7: Canal de comunicación

¿Qué se necesita para desplegar el Uptane?

  • El OEM configura y mantiene
    • Repositorio de directores
    • Repositorio de imágenes
    • Servidor de tiempo (opcional)
  • Las imágenes son firmadas por
    • El proveedor, o el OEM, ¡o ambos!
  • Los ECUs deben hacer o bien
    • Verificación completa, o bien
    • Verificación parcial
  • Pueden seguir usando su TLS existente, etc. transporte
    • Si el transporte / almacenamiento en caché comprometido, poco riesgo de seguridad
  • Desafíos en la actualización OTA

    • El automóvil es una arquitectura más compleja con un número creciente de ECU, la actualización de los diferentes tipos de ECU en sí mismo se convierten en un reto
    • La seguridad de los datos a través del aire está en alto riesgo.
    • La actualización del firmware y el software se realiza utilizando recursos mínimos como el ancho de banda de la red, el almacenamiento y la computación.
    • ¿Es posible actualizar no sólo la aplicación sino también el controlador/software principal del dispositivo?
    • El mecanismo de reversión de la actualización del software
    • No se acepta un mayor tiempo de inactividad mientras se actualiza el software o el firmware.
    • El tamaño de los bloques de software
    • Cómo se produce la OTA sin afectar al sistema actual.

    Conclusión

    En el mundo de la automoción con el tiempo la actualización del software aumentará para asegurarse de que está al día con el tiempo. Los vehículos necesitan actualizarse de forma segura. Uptane puede ser una de las soluciones prometedoras para actualizar el software en el aire.

    Lectura adicional

    • Habilitar la autonomía SAE L3-L5 con la fusión de sensores: Enfoques y desafíos
    • Concepto de seguridad para la conducción automatizada
    • Guía para portar el algoritmo de reconocimiento de señales de tráfico en tiempo real en el SoC TDA2x de Texas Instruments