Copie d’un Mifare 1K type Vigik

Les cartes Mifare 1K sont encore largement utilisées, même si de nombreuses failles de sécurité depuis 2007.Des outils pour exploiter ces failles de façon automatique existent et sont même packagés dans Debian 10. Nous allons utiliser utiliser un Raspberry Pi sous Raspbian 10 (buster) et un lecteur SCL3711 (voir l’article Clonage d’un badge de parking).

Installation des packages

Lancement des attaques

En résumé il y a 2 types d’attaques:

  • Une qui permet de découvrir une clé en en connaissant aucune, cette attaque est plutôt lente (mfcuk)
  • Une qui permet de découvrir des clés en en connaissant déjà une, cette attaque est plus rapide que la précédente mais elle nécessite de connaître une clé (mfoc)

Du coup on combine les deux attaques, mfcuk pour obtenir une première clé, sur un seul secteur (le 15 au hasard):

L’attaque a duré presque 33 minutes, pour une clé. Nous avons trouvé la clé A et la clé B du secteur 15 (les deux clés ont la même valeur). ‘484558414354‘ en hexadécimal, ce qui en ASCII donne ‘HEXACT‘ qui est le nom d’un fabricant de matériel Vigik)

En possession d’une première clé nous lançons la deuxième attaque pour obtenir les autres clés et un dump du badge:

Nous allons utiliser le programme mfdread (qui nous récupérons depuis github) pour lire le contenu du dump.

Écriture sur un badge vierge

Une simple recherche de « uid changeable » sur amazon ou ebay vous donnera de nombreux articles qui vous permettront d’écrire une copie de votre badge.

Les badges vierges sont normallement fournis avec les clés par défaut ‘ffffffffffff’. Il vous est conseillé de conserver un dump du badge vierge afin de pouvoir remettre votre badge à 0 ultérieurement.

Il suffit d’utiliser la commande suivante pour écrire notre dump sur une carte vierge:

Notre carte a bien changé d’UID:

CONSERVEZ BIEN LE FICHIER DUMP QUE VOUS AVEZ ECRIT… Il vous servira à remttre à le badge à 0 une fois vos expériementations terminées (le fichier vigik.dmp est utilisé pour lire les clés de tous les blocs afin de pouvoir écrire le badge):

Est-ce si simple?

Les anciens badges utilisaient des puces avec des failles, certains de ces failles ont été corrigées depuis.

Les nouvelles centrales disposent de systèmes de protection contre les badges clonés, la protection la plus simple étant de modifier le contenu du badge à chaque passage, ainsi si après avoir clôné un badge vous utilisez ce clône seul ce clône sera utilisable par la suite et plus le badge initial.

Par ailleurs les clônes chinois sont détectables, une commande ‘magique’ permet d’écrire le premier bloc (celui qui contient l’UID), les badges normaux répondent par une erreur à cette commande. Il existe des badges dont l’UID n’est modifiable qu’une seule fois, il ne répondent plus à la commande ‘magique’ par la suite et sont donc plus difficilement détectables.

 

 

 

 

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.