Tag Archives: NFC

Pour tout le reste, il y a Zwipe

C’est ce lundi 20 Octobre 2014 que le système de paiement mobile Apple Pay fera ses débuts aux États-Unis. C’est un fait, le paiement sans contact via la technologie NFC sera l’avenir, et les fabricants l’ont bien compris car ils multiplient les terminaux compatibles, tout comme Apple qui entre enfin dans la danse avec Apple Pay. Mais les cartes de paiement aussi intègrent de plus en plus cette technologie.
Et ce n’était pourtant pas gagné d’avance, lorsqu’en 2012, Renaud Lifchitz, ingénieur sécurité chez BT, a refroidit tout le monde en dévoilant le manque de sécurité de la technologie. Il est en effet facile d’intercepter des données personnelles stockées sur un support NFC car il n’existe pas réellement de vraies mesures de protection.
Avec une clé usb (mais aussi une raspberry ou avec un smartphone Android), il avait montré qu’il était possible de capter les communications émises depuis une carte située à proximité, et d’accéder à une multitude de données (nom, prénom, numéro de carte bancaire, date d’expiration, liste des 20 dernières opérations effectuées…).
Et pourtant, MasterCard a trouvé une solution avec la carte Zwipe!

Techniquement, le porteur de la carte devra placer son doigt sur le capteur biométrique tout en la passant au-dessus du terminal de paiement. Plus besoin de saisir son code puisque celui-ci sera remplacé par ses empreintes digitales,préalablement scannées et stockées uniquement dans la carte. Mieux encore, la prochaine version devrait être compatible avec tous les terminaux de paiement.

paralax-14-okt2

Notre défi réside dans notre capacité à délivrer une technologie offrant au consommateur une sécurité robuste ainsi que simplicité et confort d’utilisation. Le premier test réalisé par Zwipe constitue une étape importante et ses résultats sont très encourageants.

Ajay Bhalla, le président de la division Solutions de Sécurisation pour Entreprises chez MasterCard se veut très rassurant, mais nous savons tous que ces cartes auront aussi leur(s) faille(s), tout comme ce fut le cas avec l’apparition des YesCard dans les années 2000. Qu’en dira la CNIL d’ailleurs, qui a lancé en 2012 une expertise?

Carte RFID Mifare 1K

Attention, cet article n’a pas de vocation illégal. Il s’agit de comprendre le fonctionnement des cartes Mifare 1K.
Cette expérience nous servira dans le cadre de la création d’une ouverture de porte sécurisée par carte NFC.

Les cartes RFID Mifare 1K (13.56MHz) possèdent deux protections principales :

  • Le block 0 (zéro) est en lecture seule, seul le constructeur de la carte peut initialiser ce block.
  • Les données écrites sur les cartes sont encryptées.

Il existe cependant des solutions pour outrepasser ces protections et permettre de créer des copies exactes.
Vous pouvez cloner des cartes si vous disposez d’un lecteur/graveur de cartes tel que le Proxmark III.
Vous pouvez cloner des cartes avec un lecteur/graveur standard si vous utilisez des carte pour lesquelles l’UID peut être modifié (disposant d’une backdoor pour écrire sur le block 0), appelées plus communément « Cartes chinoises » car aucune loi ne restreint l’utilisation de ces cartes en Chine.

Dans cet article je détaillerais la procédure pour cloner une carte RFID Mifare 1k sous Linux en utilisant des « cartes chinoises ».

1. Achat d’une carte Mifare 1K Chinoise

La première étape consiste à se procurer une carte chinoise.

Rien de plus simple : posez la question a votre vendeur chinois habituel, il vous trouvera cela pour 15$ les 2.
Ces cartes disposent d’une backdoor physique permettant de modifier le contenu du block 0 (habituellement en lecture seule sur des cartes classiques).

2. Achat d’un lecteur de carte

Personnellement, j’ai opté pour un contrôleur NFC/RFID chez Adafruit. Pratique, joli, et il se marie très bien avec ma Raspberry Pi, il s’agit du PN532, comme ici (pour andré).

3. Environnement Linux

C’est que les choses se compliquent un peu..mais juste un peu.
Dans un premier temps, il faut libérer l’UART :

Verifier que la ligne est bien commentée :

 Puis modifier le fichier /boot/cmdlines.txt afin de remplacer :

par

 Vous aurez besoin de la LIBNFC et de MFOC.

LIBNCF :
Récupérer le numéro de la dernière version ici.

Installer les pré-requis :

 Récupérer les sources de la LIBNFC :

 Copier le fichier de conf correspondant à votre contrôleur dans /etc :

 Configurer et compiler la lib :

C’est parti :

 Faites un test :

 MFOC :
Récupérer le numéro de la dernière version ici.

Récupérer les sources de MFOC :

Pour la version 0.10.5, remplacer à la ligne 121 :
str_nfc_target(&s, nt, verbose);
par
str_nfc_target(&s, &nt, verbose);

Configurer et compiler MFOC :

 Faire un test. Poser une carte sur le contrôleur :

4. Dump/Cracking des cartes

Cette étape consiste à créer des « dump » des deux cartes. On dump la carte que l’ont veut copier (pour avoir la source) et on dump aussi la carte chinoise pour avoir ses clés.
Placez la carte chinoise sur votre lecteur :

 Placez la carte à copier sur votre lecteur :

5. Recopier le contenu

Nous allons maintenant copier le contenu de la carte sources sur la carte chinoise. Placez la carte chinoise votre lecteur :

 ou

6. Modification du numéro de série

La dernière étape est la plus importante. Elle consiste à modifier le numéro de série de la carte chinoise avec le numéro de série de la carte source.

Placez la carte à copier votre lecteur :

 

Mettre ce numéro de coté.

Placez la carte chinoise votre lecteur :
# nfc-mfsetuid
36d035ce

Vérifiez que le numéro de série de votre carte chinoise est identique à votre carte.

# nfc-list
Vous devriez avoir le meme numéro que la carte source.