Vous êtes sur le site public du Cert-IST
Les virus RFID

Date :03 Avril 2006

Publication: Article

Ce mois-ci, des chercheurs néerlandais ont présenté leurs travaux sur des attaques virales pouvant s’appliquer à la technologie RFID. Ces travaux (qui ont été primés à la conférence IEEE PerCom 2006 à Pise) ont été largement repris dans la presse spécialisée, car c'est la première fois que le monde RFID est confronté à ce type de menace.

Les commentaires à propos de cette découverte sont mitigés : catastrophe annoncée pour les uns (parce que la technologie RFID est appelée à prendre une place majeure dans la société de l'information), ou "non événement" pour les autres (car la technique d'attaque utilisée n'a rien d'innovant). Nous profitons de cette occasion pour faire un point sur technologie RFID et nous présentons notre analyse sur les travaux de l'équipe néerlandaise.
 

1/ La technologie RFID


La RFID ("Radio Frequency Identification", ou "radio-identification" en français) est une technologie qui permet d'identifier à distance tous les objets porteurs d'un "marqueur RFID". Le marqueur (on parle de "tag" en anglais) peut se présenter sous la forme d'une étiquette adhésive (apposée sur un colis) ou même d'un implant (placé sous la peau d'un animal). Il est constitué d'un circuit électronique (une "puce"), qui a la caractéristique de ne pas être alimenté, et d'une antenne. Lorsque le marqueur passe dans un champ radio approprié, ce champ lui apporte l'énergie nécessaire à l'alimentation du circuit électronique. Ce dernier génère alors un signal détecté par le lecteur RFID qui a émis le champ radio.

La RFID est donc une technologie d'identification sans contact (par opposition aux systèmes où un badge doit être apposé sur un lecteur). La distance entre le lecteur et le marqueur RFID dépend de l'onde radio utilisée : dans le cas le plus courant cette distance est de quelques centimètres, mais elle peut atteindre jusqu'à 6 mètres si l'onde est un signal UHF ("Ultra-Haute Fréquence").

Nota : Dans cet article, nous ne parlons que des marqueurs RFID "passifs". Il existe aussi des marqueurs plus évolués ("semi-actifs" ou "actifs") qui décuplent les possibilités du dispositif "passif" en équipant les marqueurs de batteries autonomes.

L'utilisation principale de la RFID est l'identification simple des objets. Elle se positionne ici typiquement comme un successeur du code barre, et l'on pourrait imaginer que si tous les articles d'un supermarché étaient porteurs d'un marqueur RFID, le passage en caisse pourrait se résumer à faire passer le chariot devant un lecteur RFID .... Cette image illustre bien le potentiel qu'a cette technologie (mais malheureusement cette approche simpliste n'est pas réaliste car les marqueurs RFID entassés dans le chariot vont se brouiller mutuellement).

La RFID a de multiples autres usages. En voici quelques exemples :

  • La traçabilité des équipements tout au long de la chaîne de production,
  • Le contrôle d'accès par badge "main libre",
  • Le marquage et la localisation des bagages aéroportuaires,
  • La gestion automatisée des emprunts dans une bibliothèque,
  • Le marquage d'animaux, ou même dans certains cas d'humains (l'encyclopédie wikipédia indique que la ville de Mexico a implanté 170 de ces tags RFID sur ses officiers de police afin de contrôler l'accès aux bases de données et aussi dans le but de mettre en œuvre des moyens de localisation en cas de kidnapping)
  • Etc…

Enfin, le passeport biométrique (imposé par les USA à partir d'octobre 2006 à tous les visiteurs voulant être exemptés de visa, et en cours de déploiement en France) utilise la technologie RFID. Bien évidemment, les apports de la RFID en terme de taçabilité soulève aussi de nombreuses questions par rapport aux abus possibles (cyber-surveillance). La CNIL a d'ailleurs émis en février 2004 des recommandations vis-à-vis des systèmes RFID.
 

2/ Les enjeux mondiaux de la RFID

La technologie RFID existe depuis longtemps (les principes utilisés remontent à la seconde guerre mondiale), mais elle a connu un véritable "boom" ces dernières années. Le fait que des géants tels que le "DoD" (Département de la Défense des USA) ou "Wal-mart" (géant de la distribution) aient rendu obligatoire pour leurs sous-traitants le marquage RFID des fournitures a probablement dopé ce marché. On estime qu'il pourrait y avoir 10 à 20 milliards d'objets "RFIDéisés" à l'horizon 2008.

Aujourd'hui cependant la normalisation de cette technologie est encore balbutiante. Les protocoles de dialogue entre lecteurs et marqueurs, les longueurs des ondes radio utilisées, ou les informations portées par les marqueurs sont trois sujets sur lesquels l'offre est très variable, et pas vraiment normalisée. En fait aujourd'hui, si le nombre d'applications RFID se multiplie, les applications déployées restent encore fortement basées sur des solutions propriétaires.

Une solution semble cependant vouloir s'imposer sur ce marché : elle est défendue par le consortium "EPCglobal Inc" (http://www.epcglobalinc.org/). Ce consortium propose en effet une solution pour :

  • Attribuer un numéro RFID unique à tous les objets du monde (un EPC : "Electronic Product Code", qui est un numéro de série stocké sur 96 bits)
  • Mettre en place les infrastructures mondiales permettant le suivi des objets porteurs d'un code EPC : le "EPCglobal Network"

Ce réseau "EPCglobal" (actuellement en phase pilote) se matérialisera par la mise en place sur Internet d'un service appelé "ONS" (Object Numbering System) qui reproduit dans le monde RFID le système hiérarchique de nommage DNS qui existe pour les noms de domaines Internet. "EPCglobal" a d'ailleurs confié la gestion de "EPCglobal Network" à la société américaine VeriSign (qui est aussi un acteur majeur du monde DNS).

Il est clair que les enjeux économiques sont ici colossaux. Les enjeux stratégiques sous-jacents le sont également. La forte implication des USA dans ce schéma est bien sûr manifeste.


3/ Les virus RFID

Aujourd'hui, les applications RFID peuvent être modélisées de la façon suivante :

  • Lorsqu'un marqueur RFID passe devant un lecteur RFID, un identifiant RFID est lu sur ce marqueur, et est injecté dans l'application RFID.
  • L'application utilise l'identifiant RFID pour retrouver dans une base de données l'objet concerné.
  • Un traitement est déclenché sur cet objet.

 
C'est la seconde étape qui intéresse les chercheurs néerlandais. En effet, si aucun contrôle n'est fait sur l'identifiant RFID avant que celui-ci soit injecté dans l'application, toute une série d'attaques classiques sont possibles :

  • Débordement mémoire : Un identifiant de type EPC fait typiquement 96 bits, mais un marqueur RFID classique peut contenir jusqu'à 1000 bits. Si l'on fabrique des marqueurs RFID malicieux (le matériel nécessaire n'est pas très difficile à trouver), on peut donc tenter d'envoyer des données plus longues que ce que l'application attend. Si aucune précaution n'est prise par l'application, un débordement mémoire peut alors se produire est permettre l'exécution de code arbitraire.
  • Injection SQL : Les données RFID sont quasiment toujours utilisées pour interroger une base de données. Si aucun contrôle n'est fait sur ces données, des commandes SQL malicieuses peuvent y être insérées. Ici encore, le fait qu'un marqueur RFID puisse contenir jusqu'à 1000 bits (c'est-à-dire plus d'une centaine de caractères) rend tout à fait faisable ce genre d'attaque.
  • Attaque "XSS" (Cross-Site Scripting). Si les données RFID sont stockées en base de données, puis réutilisées dans une interface web, alors l'injection de code HTML dans ces données rend possibles les attaques de type "XSS" (exécution de code HTML au moment où ces données sont consultées par l'administrateur de l'application RFID).

On le voit, les techniques d'attaques utilisées par les chercheurs néerlandais sur les applications RFID sont extrêmement classiques, et résultent toutes d'un manque de contrôle et de filtrage des données lues sur le marqueur RFID. Néanmoins, l'application de ces techniques au monde RFID nous paraît une nouveauté, et est un signal d'alarme salutaire, qui montre que dans ce monde là aussi, les principes de sécurisation connus ailleurs sont applicables : les données reçues de l'extérieur doivent être systématiquement considérées comme potentiellement hostiles, et doivent être contrôlées avant d'être utilisées. On pourrait en effet considérer un marqueur RFID comme inoffensif, parce que :

  • il est petit,
  • et qu'il s'agit d'un équipement passif.

De plus, ce secteur technologique évolue très rapidement, et le besoin de sécurité n'est pas forcement identifié comme un besoin significatif. Tous ces éléments font que la menace identifiée par cette étude nous semble crédible, et que la mise en garde sera probablement salutaire pour la communauté RFID.

Le dernier aspect de l'étude est l'utilisation de ce type de vulnérabilité pour réaliser un virus ou un ver informatique. Sur cet aspect l'étude nous paraît plus discutable. Si l'on considère qu'un virus est un code maléfique qui infecte une application, alors "oui", le virus RFID peut exister. Par contre ce virus est loin d'être universel : il sera capable de s'attaquer simplement à une application RFID particulière (car sa mise en œuvre est très liée à l'application considérée). Sur l'aspect "ver", l'étude explique qu'une fois un système RFID infecté, il pourrait être possible d'inoculer l'infection sur les marqueurs que ce système génère. A partir d'un marqueur RFID infecté unique, il se produirait alors une multiplication des marqueurs infectés pouvant propager l'infection sur tous les systèmes RFID du système d'information considéré. Un des exemples pris est celui d'un système de gestion des bagages aéroportuaires pour lequel l'infection se répandrait d'aéroport en aéroport. Il s'agit ici d'un risque théorique, car les systèmes RFID actuels sont très hétérogènes et le risque qu'une anomalie "universelle" existe (touchant des applications RFID aéroportuaires dans le monde) est très faible. Par contre, la multiplication en chaîne des marqueurs RFID infectés est tout à fait possible, et elle provoquerait alors un effet "boule de neige" immobilisant rapidement tous les bagages de l'aéroport infecté (jusqu'à ce que toutes les étiquettes RFID infectées aient été remplaçées).

Pour plus d'information :