Le vol de voitures modernes à l’aide de la radio logicielle 

À l’achat d’un véhicule récent, l’option “sans contact” permet à la fois d’ouvrir, de fermer et de démarrer un véhicule sans se préoccuper d’avoir en main les clés. Cependant, la généralisation de cette option d’ouverture entraîne une multiplication des vols de véhicule du fait de l’émergence des enjeux de cybersécurité concernant les radios logicielles, permettant ainsi l’analyse et la manipulation d’ondes radiofréquences et de rejouer ou de mettre en avant les signaux responsables de l’intégrité du véhicule. Mais avant d’auditer la sécurité du système d’ouverture « sans contact » d’une voiture, il convient en premier lieu de s’intéresser au fonctionnement de ce système. 

Comment fonctionne une clé de voiture ? 

Les clés de voitures permettent de télécommander le véhicule via la transmission d’ondes radiofréquences aux calculateurs ECU (Electronic Control Units) de la voiture. Ce système, portant le nom de Remote Keyless System, se décline en deux fonctionnalités :  

  • Le déverrouillage des portières, on parle alors de RKE (Remote Keyless Entry) 
  • Le démarrage du véhicule, soit RKI (Remote Keyless Ignition) 

Il existe trois différentes catégories de RKE, comme le montre ce schéma :

  • RKE à sens unique : la clé de voiture envoie la commande pour verrouiller ou déverrouiller la voiture, celle-ci vérifie si le code envoyé doit être accepté. 
  • RKE à double sens : la clé envoie la commande, la voiture renvoie un challenge à la clé, la clé répond au challenge. 
  • RKE passif aussi appelé Passive Key Entry (PKE) : c’est le système moderne d’ouverture sans appui du propriétaire du véhicule. En effet, le véhicule interroge la clé avec un challenge quand l’utilisateur s’approche de la poignée. La clé répond ensuite au véhicule qui s’ouvre alors. 

Remarque : une même clé peut avoir à la fois le fonctionnement PKE et celui d’un autre RKE. 

Comment les trames radio sont-elles formées ? 

Chaque constructeur utilise une technologie qui définit le chiffrement utilisé ainsi que le format des trames radios. Les premières technologies des années 1990-2000 (HITAG2, Megamos, DST40) couvrent encore une majorité de véhicules malgré l’existence d’attaque par cryptanalyse pour chacun d’entre eux. 

Le tableau ci-dessous, obtenu par reverse-engineering, a permis d’identifier le format des paquets utilisés par un transpondeur HITAG2 :

Nom Longueur (bits) Description 
SYNC 16 Synchronisation (0x0001) 
UID 32 Identifiant unique de la clé 
BTN Identifiant du bouton pressé par l’utilisateur 
CNTRL 10 Bits de poids faibles du compteur RKE 
KS 32 Keystream 
CHK checksum 

Nous pouvons distinguer trois différentes parties pour un paquet radio :  

  • Un préambule pour s’assurer de la synchronisation lors de la réception 
  • Les données : des ID (voiture, clé), commande appuyée (ouverture, fermeture, etc.), compteur (pour le code tournant), et le code (contenant une partie de la clé de chiffrement comme pour le schéma ci-dessus ou dans le cas du PKE, un champ contenant la réponse chiffrée au challenge envoyé par la voiture)
  • Une somme de contrôle

La transmission ou la réception des trames radios est ensuite assurée par la radio logicielle en suivant cette chaîne

Quelles attaques permettent d’ouvrir une voiture ? 

L’attaque par brouillage et rejeu 

Du fait que la plupart des clés de voitures émettent des codes tournants (qui sont modifiés à chaque appui de la clé), le simple rejeu d’un ancien code ne peut en général pas se montrer efficace. Il est cependant possible de contourner le mécanisme de code tournant en empêchant la bonne réception du signal par la voiture. Les attaques par brouillage et rejeu ont alors fait leurs preuves contre les systèmes utilisant le RKE à sens unique.  

  • Un attaquant va émettre en continu des ondes radio à une fréquence suffisamment proche de celle utilisée par la clé de voiture dans le but de perturber son fonctionnement. En parallèle, il faut enregistrer le signal émis par la clé. 
    • L’utilisateur appuie une première fois sur le bouton de déverrouillage, la voiture ne s’ouvre pas puisque l’attaquant a brouillé ce premier signal. 
    • L’attaquant continue de brouiller, l’utilisateur appuie à nouveau en générant le second signal. L’attaquant rejoue le signal n°1 et garde le signal n°2 qui reste valide pour déverrouiller ultérieurement. Ce scénario, nécessitant peu de matériel (~30€) a été mis en avant par Samy Kamkar1

La fréquence du signal émis par les clés de voiture se trouve généralement autour de 433 MHz pour le RKE à sens unique. Les constructeurs automobiles en voulant assurer en priorité le fonctionnement du déverrouillage à l’intégrité du véhicule, ont laissé une plage de fréquences de réception assez grande pour qu’un signal, délivrant la bonne information, soit accepté s’il est dans la fenêtre. L’attaque par brouillage et rejeu exploite cette fenêtre de réception comme le montre ce spectre FFT2

On peut alors filtrer l’enregistrement pour soustraire le signal brouillant du signal de la voiture afin d’obtenir le code de la victime. Cette opération peut être réalisée facilement grâce aux traitements numériques des radios logicielles. 

L’attaque par relais de signal 

Dans le cas du PKE, il est possible de duper la voiture en utilisant un dispositif radio émetteur/récepteur qui peut relayer les échanges successifs entre la clé et la voiture. On se place dans un scénario où l’attaquant peut relayer les signaux d’une clé qui se situe dans l’entrée de maison ou dans le sac du propriétaire qui s’éloigne. Ce schéma3 illustre le fonctionnement de cette attaque : 

PKE_relay_attack 

L’attaque par cryptanalyse 

Enfin, des agents de l’ANSSI4 ont montré qu’il était possible de forger une nouvelle clé HITAG2 après avoir capturé 7 à 8 trames radio de la clé et plus simplement d’ouvrir/fermer la voiture avec 2 à 3 trames capturées. 

Quelles précautions faut-il adopter ? 

Lors d’un appui sur la clé :  

  • S’assurer que le véhicule soit correctement fermé ou ouvert  
  • Si l’appui n’a pas abouti, (dé)verrouiller manuellement la voiture 

Pour les systèmes modernes sans appui, il existe diverses contre-mesures à l’attaque relais :  

  • Acheter un étui anti-RFID pour clé de voiture pour isoler la clé des radiofréquences relayées (cela risque d’empêcher l’ouverture sans clé).
  • Activer le mode sommeil de la clé (s’il est disponible) afin d’activer la fonctionnalité “sans-contact” seulement en cas de mouvement de la clé.  
  • Désactiver le (dé)verrouillage via le mode “sans-contact”. 

Sources : 

1 : https://samy.pl/defcon2015/2015-defcon.pdf  

2 : https://samy.pl/defcon2015/2015-defcon.pdf  

3 : https://web.stanford.edu/class/ee26n/Assignments/Assignment5.html 

4 : https://www.sstic.org/2017/presentation/from_academia_to_real_world_a_practical_guide_to_hitag-2_rke_system_analysis/  

Focus sur la cybersécurité à Kereval 

Chez Kereval, la cybersécurité est une expertise que nous mettons au service de nos clients sur divers projets et thématiques. Nos équipes de spécialistes travaillent sans relâche pour anticiper et contrer les nouvelles menaces, en appliquant des méthodes rigoureuses d’analyse des vulnérabilités et de test des dispositifs de sécurité. 

Nos services incluent : 

  • Audit de sécurité : Identification des failles potentielles. 
  • Tests d’intrusion sur mesure : Simulations d’attaques réelles pour évaluer la robustesse des dispositifs de sécurité. 
  • Formation et sensibilisation : Sessions de formation pour les professionnels du secteur afin de renforcer la sécurité dès la conception des systèmes. 

Découvrir nos offres d’emploi : 
https://www.kereval.com/carriere/ 

  

À lire également