Blog ENI : Toute la veille numérique !
-25€ dès 75€ sur les livres en ligne, vidéos... avec le code FUSEE25. J'en profite !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici

Hacking du véhicule connecté

Introduction : vers le véhicule autonome

À partir de la fin du XIXe et du début du XXe siècle et la création des premières automobiles "modernes" que l’on connaît, le secteur automobile va être une source de recherches et d’innovations constantes : amélioration des performances de vitesse et de consommation, développement de nouveaux systèmes de sécurité embarqués (ceintures de sécurité, ABS...), nouvelles motorisations (diesel, essence, GPL, bioéthanol, flex-fuel, hybride, 100 % électrique)...

À la fin du XXe siècle, une tendance (une mode ?) dénommée le "tuning" est apparue ayant pour but de personnaliser (avec plus ou moins de succès) et/ou de rendre plus performante son automobile en la modifiant mécaniquement (retirer le "bridage" du constructeur). Nous reviendrons sur ce point plus loin dans ce chapitre, car elle est l’une des deux motivations du hacking de l’automobile.

Au début du XXIe siècle, l’ère des véhicules connectés débute et celle des véhicules autonomes devient envisageable grâce au développement de nombreuses technologies :

  • Les aides à la conduite telles que : régulateur de vitesse, détecteurs de franchissement de ligne, correcteur de trajectoire, radars et caméras de recul, freinage automatique d’urgence, aide au stationnement, système automatique d’appel d’urgence (e-call ou emergency call via une carte SIM intégrée et le GPS).

  • La standardisation des réseaux embarqués dans l’automobile (réseaux CAN, LIN, FlexRay...).

  • Le développement des réseaux sans fil (GSM 4G-5G, Wi-Fi, Bluetooth).

Véhicule connecté et véhicule autonome

Un véhicule connecté est un véhicule qui dispose de systèmes de communication embarqués sans fil échangeant avec son environnement, mais pas seulement.

Ainsi, la figure ci-dessous présente le concept de base du véhicule connecté comprenant, entre autres, les éléments suivants :

  • Des capteurs de sécurité.

  • Une caméra sur le bouclier avant.

  • Des systèmes embarqués informatisés pour le diagnostic et le divertissement (ce dernier est nommé "infotainment").

  • Un système de connexion avec les appareils nomades (portables, smartphones, tablettes). 

images/Figure1.png

Présentation du véhicule connecté (source : Broadcom 2013)

Le véhicule autonome, quant à lui, est un véhicule conçu de manière à pouvoir rouler partiellement ou entièrement sans l’intervention d’un conducteur.

On distingue, pour le moment, cinq niveaux d’autonomie :

  • Niveau 1 : le conducteur ne reçoit qu’une aide partielle (amplification d’une manœuvre d’urgence, alerte sur la présence d’un danger...) et est responsable de son véhicule.

  • Niveau 2 : le véhicule gère automatiquement les distances et son centrage sur la voie. Le conducteur supervise toutes les manœuvres, il peut lâcher les pédales mais il conserve ses mains sur le volant en toutes circonstances.

  • Niveau 3 : le conducteur peut déléguer la conduite au véhicule dans certaines circonstances et donc lâcher temporairement le volant.

  • Niveau 4 : le conducteur n’a plus à superviser la conduite, mais il peut reprendre la conduite à tout moment. Le véhicule s’occupe de tout pendant le trajet.

  • Niveau 5 :...

Services d’un véhicule connecté/autonome

Que ce soit pour un véhicule connecté ou un véhicule autonome, on distingue trois nouveaux concepts de services rendus par ces véhicules :

  • Concept du "Save Time and Save Money". Comme son nom l’indique, il s’agit de gagner du temps (et donc de réduire le temps passé à conduire son véhicule) à l’aide des nombreux services embarqués au sein du véhicule via son système d’infotainment. Par exemple, avec la recherche des parkings ayant des places disponibles et des stations services à proximité.

  • Concept du "Be Safe" via le système automatique d’appel d’urgence (e-call ou emergency-call, obligatoire sur les véhicules neufs en Europe depuis 2018 avec le règlement 305/2013) ou d’assistance (b-call ou breakdown call), mais également, en cas de vol du véhicule, pour sa géolocalisation.

  • Concept du "Enjoy Life" pendant un trajet via le système de divertissement qui affiche et/ou joue le contenu des appareils nomades (musique, réseaux sociaux favoris...). Ce concept va se développer avec les futurs véhicules autonomes de niveau 3, 4 et 5.

Le véhicule connecté, une vaste surface d’attaque

Quand un attaquant étudie un véhicule connecté (ou autonome de niveau 1 et 2) au niveau de sa surface d’attaque, il va d’abord regarder quels échanges de données le véhicule ciblé effectue avec son environnement et se documenter au maximum sur ces systèmes (d’une façon similaire à celle de l’information gathering) :

  • Quels signaux sont reçus/envoyés ?

  • Quelle est la technologie utilisée ?

  • Est-ce de la courte, moyenne ou longue portée ?

  • Si le véhicule est hybride/électrique, utilise-t-il une borne de recharge ?

Puis l’attaquant va examiner son intérieur :

  • Y a-t-il une prise USB ?

  • Où se situe la prise de diagnostic ?

  • ...

images/Figure2.png

Principaux vecteurs d’attaque d’un véhicule connecté

La figure ci-dessus présente les principaux vecteurs d’attaque. Du point de vue "externe" au véhicule, on peut noter le système Wi-Fi, le Bluetooth, le système GSM, le système de verrouillage/déverrouillage centralisé actif (RKE - Remote Keyless Entry) ou passif (PKES - Passive Keyless Entry and Start) ou encore le système de surveillance de pression des pneus (TPMS - Tire Pressure Monitoring System, obligatoire sur tous les véhicules neufs en Europe depuis 2014).

Du point de vue interne, on peut citer principalement l’USB et la prise de diagnostic (le connecteur OBD2 - On-Board Diagnostics) qui donne accès au réseau CAN du véhicule et à ses calculateurs (ECU - Electronic Control Unit).

Ainsi, certaines techniques d’attaque utilisées dans d’autres domaines (et vues dans d’autres chapitres de ce livre) pourront être réutilisées, avec des modifications...

Motivations du hacking du véhicule connecté

Les attaques ont deux motivations principales :

  • L’activation et/ou la modification d’options du véhicule : cette motivation se rapproche du tuning de la fin du XXe siècle, mais ici uniquement du point de vue informatique. Ainsi, on peut citer par exemple la modification du fond d’écran de la console de navigation, l’installation de nouvelles applications (ou d’applications malveillantes) au niveau du système d’infotainment (cf. figure suivante) ou encore la modification des paramètres du calculateur moteur pour améliorer ses performances (encore dénommée chiptuning ou remapping).

images/Figure3.png

Exemple de hacking de l’infotainment issu de la société israélienne Argus Cyber Security

  • Le vol : cette motivation englobe le vol du contenu du véhicule (GPS indépendant, smartphones, biens de valeurs...) ou le vol du véhicule. Ainsi, les attaques concerneront le détournement du système de verrouillage (via une attaque de type jamming, via une attaque de type rolljam...) puis le contournement du système de démarrage (via des injections dans le réseau CAN ou attaque "backdoor", via une attaque à relais...) et du système de localisation ou bien encore en obligeant le conducteur à s’arrêter en "simulant" des pannes ou de faux diagnostics par des injections précises (allumage du voyant pneu dégonflé ou du voyant défaut moteur, par exemple).

Une autre question que les constructeurs automobiles et les États se posent quand les véhicules autonomes de niveau 4 et 5 seront développés puis mis en service est la suivante : sera-t-il possible de prendre le contrôle à distance de ces véhicules sans l’accord de...

Les systèmes internes du véhicule connecté

Un véhicule connecté (ou autonome), du point de vue informatique, c’est un ensemble d’ordinateurs/calculateurs connectés ensemble et qui communiquent via plusieurs réseaux embarqués.

images/Figure4.png

Exemple de fonctions et donc d’ECU dans un véhicule connecté

Les ordinateurs/calculateurs seront nommés ici ECU, acronyme de Electronic Control Unit (on trouve également le terme de ECM - Electronic Control Module). Ils servent à contrôler tous les équipements du véhicule, du moteur aux lumières. Les ECU sont mis en place dans les véhicules à partir de la fin des années 1970 - début 1980.

Un véhicule connecté est composé d’un grand nombre de fonctions et donc d’ECU, comme le montre la figure ci-dessus. Leur nombre dépend directement du nombre de fonctions embarquées par le constructeur et donc de la gamme du véhicule (haut de gamme ou bas de gamme). En 2016, on parlait d’un minimum de 70-80 ECU au sein d’un véhicule bas de gamme et de plus de 150 ECU pour un véhicule haut de gamme ou pour un véhicule hybride.

Chaque constructeur possède ses propres architectures de véhicules, et au sein d’une même gamme d’un constructeur, suivant, par exemple la motorisation (essence, diesel ou hybride) et pour le même niveau de finition et pour la même année de fabrication, l’architecture changera radicalement.

Les ECU sont regroupés ("typés") selon leurs fonctions. Les dénominations, en trigrammes, dépendent des constructeurs, mais on trouve principalement les suivantes :

  • ECM : Engine Control Module ou PCM pour Powertrain Control Module.

  • TCM : Transmission Control Module.

  • SCM : Suspension Control...

Attaque physique de l’ECU : le chiptuning ou le remapping

Le "chiptuning" ou "remapping" est la version informatisée du tuning de la fin du XXe siècle et vise à modifier les paramètres du véhicule. Cette modification concerne principalement le changement de la cartographie d’origine de l’ECM, via un port spécifique, afin d’améliorer les performances et le rendement moteur mais elle peut être également utilisée pour la réinitialisation des clés de démarrage dont les données sont enregistrées dans la mémoire de l’ECU.

Ce hacking se déroule en plusieurs étapes :

  • Extraction physique, ouverture et branchement de l’alimentation et du port de l’ECU au matériel adéquat.

  • Extraction complète (dump) des données d’une mémoire ou de l’ensemble des mémoires de l’ECU dans un unique fichier.

  • Lecture, analyse et interprétation, modification des données puis calcul de l’intégrité du fichier.

  • Réimplantation des données dans l’ECU puis réimplantation "physique".

  • Tests de bon fonctionnement.

ECU et ports de communication du MCU

Les ECU utilisent un microcontrôleur (MCU) pour le traitement de leurs tâches en temps réel. Les MCU, à la différence des CPU (microprocesseurs), ont une mémoire flash embarquée dans la puce, pour stocker et exécuter son programme. Ce mode de stockage du programme signifie que le MCU a une période de démarrage très courte et exécute du code très rapidement. La seule limite pratique à l’utilisation d’une mémoire embarquée est que la mémoire totale disponible est finie.

Les CPU n’ont pas les mêmes...

Attaque backdoor : l’injection dans le réseau CAN

À la différence de l’attaque physique qui nécessite l’extraction et l’ouverture de l’ECU et l’extraction de l’EEPROM, l’attaque backdoor utilise le réseau embarqué du véhicule et son connecteur de diagnostic sans avoir à démonter de pièces importantes (sauf éventuellement quelques caches plastiques).

Les objectifs de l’attaque backdoor intègrent les objectifs du chiptuning (c’est-à-dire l’optimisation moteur et le remapping), mais ils sont plus globaux puisque cette attaque permet, théoriquement, d’accéder à tous les systèmes du véhicule : allumage de voyants divers, déverrouillage des portes en roulant, usurpation du tachymètre, démarrage du moteur, récupération de données GPS, développement de nouvelles fonctionnalités...

Ce hacking se déroule en plusieurs étapes :

  • Connexion au système de diagnostic du véhicule à l’aide d’un matériel adapté via le connecteur OBD2.

  • Sniffing des trames du bus CAN et enregistrement sous forme de fichiers de logs (dump) à l’aide d’outils logiciels adéquats.

  • Suivant l’objectif, analyse des logs et rejeu (reverse engineering) afin de déterminer les signaux intéressants et leur encodage.

  • Génération d’une à plusieurs trames (le payload) puis injection de ces trames sur le bus CAN du véhicule ciblé.

Présentation de l’OBD

L’OBD est l’acronyme anglais pour On-Board Diagnostics, ou diagnostics embarqués en français. L’OBD est un système obligatoire d’auto-diagnostic du véhicule et de signalement de ses défauts...

Autres attaques du véhicule connecté

Application mal sécurisée : le cas Nissan Leaf de 2016

La Leaf est une berline compacte 100 % électrique lancée en 2010 par Nissan. Entre 2010 et 2014, il s’est vendu environ 150 000 véhicules dans le monde et la Leaf a été le véhicule électrique le plus vendu en Europe en 2014. Le prix du modèle de base (avec des batteries de 24 kWh) était de 23 390 euros en 2016. La Leaf a également une dimension "connectée", car elle est accompagnée d’une application "compagnon" pour smartphones Android et iOS. La première version de cette application, nommée Nissan Connect EV, communiquait avec le véhicule et permettait notamment de visualiser le niveau de charge de son bloc de batteries, d’analyser les performances de conduite (niveau d’accélération et de freinage) ainsi que de démarrer à distance le système de chauffage/climatisation, véhicule à l’arrêt.

images/Figure67.png

Nissan Leaf, modèle 2010, avec son application Nissan Connect EV

En janvier 2016, Troy Hunt (https://www.troyhunt.com), expert en sécurité informatique, effectue des essais sur l’application et la Leaf d’un ami norvégien. Il utilise sur son smartphone l’application Fiddler, qui est un proxy permettant d’intercepter, d’analyser et même de modifier à la volée toutes les requêtes et échanges entre un smartphone et un serveur web (il fonctionne comme WebScarab), cela afin d’analyser le trafic issu de Nissan Connect EV. L’ensemble de ses essais et résultats sont disponibles sur son site dont l’URL est la suivante : https://www.troyhunt.com/controlling-vehicle-features-of-nissan/?m=1

Ainsi, quand...