MISC Hors-série N°
Numéro
2

Cartes à puce : découvrez leurs fonctionnalités et leur limites

Temporalité
Novembre/Décembre 2008
Image v3
Cartes à puce : découvrez leurs fonctionnalités et leur limites
Article mis en avant

Résumé

Le geste est devenu tellement coutumier que nous n'y prêtons même plus attention : nous nous présentons face à un distributeur de billets, introduisons notre carte bancaire dans le lecteur, tapons notre code PIN, et les billets nous tombent dans la main tandis que notre compte bancaire est automatiquement débité. La même carte nous permet d'ailleurs de régler la note d’un restaurant, d'effectuer un achat dans une grande surface, de prendre de l'essence, tandis qu'une autre d'apparence similaire nous permet de nous connecter à l'ordinateur de notre entreprise et qu'une troisième – quoique d'un format un peu différent – protège le cœur de notre téléphone portable. Ce petit objet qui ne pèse que quelques grammes a acquis une telle importance dans nos vies que sa perte s'apparente presque à une catastrophe. Et cette minuscule carte à puce, dont le prix de revient est aujourd'hui ridiculement bas, met pourtant en œuvre une technologie très évoluée, fruit de plusieurs décennies de développement et d'idées ingénieuses.

Dans ce numéro...


Qui a jamais participé à un évènement historique ne peut qu’être surpris à le voir relaté dans des articles de journaux, des livres ou des émissions diverses. Il apparaît presque que leurs auteurs ont vécu une toute autre expérience, parfois et peut-être souvent même incompatible avec sa propre impression.En 2005, j’ai eu l’honneur de recevoir le prestigieux trophée du visionnaire du magazine Card Technology, à l’époque la référence en matière de publications dans le monde des cartes à puces. Dans un long article, le journaliste Dan Balaban a fourni une histoire assez exacte de la carte à puce Java et de mon implication. Mais, naturellement, je ne pouvais pas à l’époque lui dire ce que je vais maintenant raconter, car il était trop tôt. Comme j’ai toujours été curieux de savoir comment l’Histoire sonne, écrite par ses auteurs, j’ai été très heureux quand il m’a été demandé d’écrire cet article.
Plus de 4 milliards de cartes à puce ont été livrées dans le monde en 2007, pas loin de 5 milliards devraient l’être en 2008.
L'idée de paiement sans argent liquide n'est pas récente : « Chaque fois qu'un Gonda désirait quelque chose de nouveau, des vêtements, des objets, il payait avec sa clé. Il pliait le majeur, enfonçait sa clé dans un emplacement prévu à cet effet et son compte, à l'ordinateur central, était aussitôt diminué de la valeur de la marchandise ou du service demandé. » [1]. Depuis plus de vingt ans, la carte à puce est au cœur du système bancaire. Elle fait l'objet de toutes les attentions de la part des banques et des utilisateurs, mais aussi, voire encore plus, de la part des pirates. La carte à puce en tant que coffre-fort électronique impénétrable était censée apporter le niveau de sécurité élevé requis pour les applications bancaires. Mais il semble que deux lois de base aient été oubliées par les banques, à savoir que le niveau de sécurité d'un système est caractérisé par son maillon le plus faible et qu'un système sécurisé ne résiste pas éternellement aux attaques. Nous allons tenter dans cet article de décrire le rôle de la carte à puce dans le système bancaire français. Nous détaillerons d'abord le premier protocole qui était encore en vigueur il y a quelques années. Nous verrons ensuite les failles de sécurité que ce protocole présentait et comment elles ont été exploitées par les pirates avec notamment les « YesCard ». Enfin, nous étudierons les principales évolutions de sécurité liées en particulier à ces attaques.
La carte SIM (ou Subscriber Identity Module, mot à mot le module d’identité d’un abonné) est le type de carte à puce le plus vendu de par le monde. Environ trois milliards d’unités ont été fabriquées en 2007, soit une carte pour deux habitants de la planète. Ce produit constitue véritablement le poumon de l’industrie de la carte à puce, dont la première entreprise mondiale, Gemalto, réalise un chiffre d’affaire d’environ deux milliards d’euros.
Frénésie, le mot n'est pas trop fort pour décrire l'engouement actuel envers le sans contact. Plus question désormais de se torturer l'esprit pour comprendre le pictogramme décrivant la façon d'insérer une carte à puce dans un lecteur ; il suffit de passer sa carte à proximité de celui-ci et le tour est joué. La star de toutes ces cartes sans contact, la figure de proue du domaine, c’est la NXP Mifare Classic (une icône vendue à plus d’un milliard d'exemplaires). Dans cet article, nous présentons comment elle fut lapidée au printemps 2008, lorsque plusieurs équipes de recherche ont mis au grand jour des failles de sécurité aussi sérieuses qu’impardonnables. La star déchue entraîne dans sa débâcle des millions de systèmes de contrôle d'accès, de billetterie et de porte-monnaie électronique.
Face aux nouvelles menaces liées à l’interconnexion croissante des SI (commerce en ligne, dématérialisation, mobilité des salariés,…) et des menaces internes, l’utilisation de certificats électroniques s’impose comme étant l’une des solutions les plus sécurisées pour garantir le contrôle d’accès, la traçabilité et l’imputabilité, en d’autres termes, garantir l’identité de la personne ayant agi. Des infrastructures de gestion de clés (PKI) ont d’ailleurs été déployées dans de nombreuses grandes entreprises. Il apparaît même aujourd’hui des cartes d’identité nationales intégrant des certificats numériques (Portugal, Belgique,…).La sécurité d’un système bâti sur des certificats repose sur la protection des clés privées des autorités de certification, des serveurs et des utilisateurs. C’est au confinement de la clé privée de ces derniers que nous nous intéresserons : la carte à puce.
Les cartes à puce sont aujourd’hui considérées comme des ressources sûres du fait de leur structure interne et des validations qu’elles subissent tout au long de leur cycle de vie. Il est donc possible de les utiliser comme éléments de base pour sécuriser différents types d’environnements : accès physiques à des locaux, transactions bancaires, systèmes embarqués, etc. Dans cet article, nous expliquons comment utiliser les cartes (U)SIM Java des téléphones mobiles afin d’apporter de la sécurité, en termes de confidentialité des données et des communications, dans le fonctionnement des applications développées pour ces matériels. Nous présentons les différentes technologies qui interviennent (Java Card, (U)SIM, Java ME) ainsi que la façon de les combiner. Nous terminons par un exemple d’application qui utilise tous les éléments présentés.
La technologie Java Card fournit une machine virtuelle qui joue le rôle de système d'exploitation pour cartes à puce en apportant sécurité et indépendance vis à vis du matériel. Ainsi, des développeurs indépendants peuvent concevoir et déployer dans des cartes à puce toute une variété de produits et de services sécurisés, dans la poche de leurs utilisateurs. Nous explorons ici l'essence de cette technologie.
Les informations que l'on peut trouver ici et là quant au développement d'applications mettant en œuvre des cartes à puce JavaCard programmables sont bien souvent parcellaires. Nous exposons dans cet article les différentes étapes nécessaires à l'assemblage complet d'un kit de développement logiciel JavaCard générique, à savoir n'étant lié à aucun modèle de carte Java en particulier, à partir de logiciels librement téléchargeables (à différencier avec des logiciels libres téléchargeables). Dans un second temps, nous le mettrons en pratique sur un exemple d'application de type HelloWorld.

Magazines précédents

Les derniers articles Premiums

Les derniers articles Premium

Donnez une autre dimension à vos logs avec Vector

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Avoir des informations précises et détaillées sur ce qu’il se passe dans une infrastructure, et sur les applications qu'elle héberge est un enjeu critique pour votre business. Cependant, ça demande du temps, temps qu'on préfère parfois se réserver pour d'autres tâches jugées plus prioritaires. Mais qu'un système plante, qu'une application perde les pédales ou qu'une faille de sécurité soit découverte et c'est la panique à bord ! Alors je vous le demande, qui voudrait rester aveugle quand l'observabilité a tout à vous offrir ?

Du graphisme dans un terminal ? Oui, avec sixel

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

On le voit de plus en plus, les outils en ligne de commandes s'étoffent peu à peu d'éléments graphiques sous la forme d'émojis UTF8. Plus qu'une simple décoration, cette pointe de « graphisme » dans un monde de texte apporte réellement un plus en termes d'expérience utilisateur et véhicule, de façon condensée, des informations utiles. Pour autant, cette façon de sortir du cadre purement textuel d'un terminal n'est en rien une nouveauté. Pour preuve, fin des années 80 DEC introduisait le VT340 supportant des graphismes en couleurs, et cette compatibilité existe toujours...

Game & Watch : utilisons judicieusement la mémoire

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Au terme de l'article précédent [1] concernant la transformation de la console Nintendo Game & Watch en plateforme de développement, nous nous sommes heurtés à un problème : les 128 Ko de flash intégrés au microcontrôleur STM32 sont une ressource précieuse, car en quantité réduite. Mais heureusement pour nous, le STM32H7B0 dispose d'une mémoire vive de taille conséquente (~ 1,2 Mo) et se trouve être connecté à une flash externe QSPI offrant autant d'espace. Pour pouvoir développer des codes plus étoffés, nous devons apprendre à utiliser ces deux ressources.

Body