Celui qui a inventé la Yes Card (2/3)
Le système de la carte bancaire avait une énorme faille, et cet ingénieur l'avait bien repérée.
Bonsoir,
Bienvenue pour la suite de cet épisode de Pwned. Si vous n’êtes pas inscrit, voici le formulaire.
Un ingénieur extrêmement talentueux a donc compris qu’il y avait une faille dans le système de la carte bancaire. Mais il n’a pas encore été jusqu’au bout de son exploration du couple carte bancaire - terminal de paiement.
Par déduction, il comprend que l'échange entre les deux objets est validé en utilisant l’algorithme RSA. RSA, c’est une référence à ses trois inventeurs, Ronald Rivest, Adi Shamir et Leonard Adleman.
Il y a de très grandes chances que des services de commerce électronique que vous utilisez soient sécurisés par cet algorithme. On parle de chiffrement asymétrique, parce qu’il y a deux clés: une clé publique distribuée, une clé privée gardée secrète.
Le RSA est basé sur un problème mathématique qu’on ne peut pas résoudre efficacement: la factorisation du produit de deux grands nombres premiers. C’est toujours le cas, en attendant l’informatique quantique, et c’était encore plus vrai il y a 25 ans.
L’ingénieur de la Seine-et-Marne qui trifouille ses terminaux bancaires sait que sur le papier, cette protection revient à se lancer dans un calcul de plusieurs siècles. Une vraie “ligne Maginot”, selon ses propres mots.
Pour contourner l’obstacle, le bidouilleur déniche tout d’abord sur internet un algorithme de factorisation. Puis il parie sur une certaine paresse des concepteurs du système. C’est la taille de la clé qui rend la recherche de ses facteurs difficile. Et si elle n’était pas si grande? Et si c’était une clé 320 bits, à la portée de calcul?
“La carte était comme une maison à protéger et l’algorithme d’authentification représentait un cadenas, résume-t-il. Lorsqu’on analyse les algorithmes employés par le groupement des cartes bancaires, on comprend qu’il a acheté de bons cadenas mais qu’il ne les a pas bien entretenus."
Le groupement cartes bancaires, c'est cette structure qui réunit les banques pour assurer l'interopérabilité des cartes bleues et garantir sa sécurité. Les cadenas devenaient peu à peu obsolètes, mais l'organisation, soupçonne l'ingénieur, les a pourtant laissé "en place en se disant qu’ils tiendraient bien encore quelques années".
Mauvais calcul. La clé est bien trop petite pour résister à l'outil de factorisation que l'ingénieur a déniché. Son ordinateur tourne pendant un mois et demi avant de cracher la solution: la fameuse clé privée secrète, celle qui va permettre de tromper le terminal de paiement.
Personne n'avait visiblement imaginé au groupement des cartes bancaires que quelqu'un arriverait à extraire, identifier et casser l’algorithme à partir d’un simple terminal de paiement. L’ingénieur peut donc désormais tromper des terminaux en réussissant l'authentification de fausses cartes.
Après environ quatre ans de travail, reste encore quelques détails pour finaliser la Yes card. Il faut créer une carte à puce qui va simuler une carte bancaire, y installer un petit programme qui permettra de transmettre à un terminal de paiement la signature RSA calculée avec la clé privée trouvée, ouvrant ainsi la voie à des transactions. Puis l'ingénieur se rend au métro Balard, vous connaissez la suite.
Alors que faire de cette découverte? L’ingénieur peut la garder pour lui. Mais d’autres vont la trouver un jour ou l’autre. Et puis, il veut en parler, même s’il suppose que personne ne va le croire, car il est quand même très fier de sa découverte. A raison, l’ingénieur sait qu’elle vaut très cher. Elle pourrait mettre en péril l’industrie bancaire.
Mais comment faire reconnaître son travail à sa juste valeur? D’abord, pour protéger sa trouvaille, l’ingénieur dépose une enveloppe Soleau à l’INPI, une manière de pouvoir prouver ultérieurement l’antériorité de ses travaux. Le document est intitulé “Comment faire une fausse carte bleue”, avec le programme pour casser la clé, le programme en langage machine à mettre dans la carte programmable, le type de carte vierge.
Puis il mandate un avocat pour s’occuper de la négociation avec le monde des banques. On est en juillet, neuf mois après la fin de ses recherches. Mais les contacts avec le groupement des cartes bancaires sont décevants. Les échanges s'embourbent. Il a d'abord fallu prouver qu'il n'était pas un mytho, puis ça traîne.
On en est là le 17 septembre 1998. Comme tous les matins, l’ingénieur s’embarque dans sa Fiat 500 pour rejoindre la gare de Tournan-en-Brie, en Seine-et-Marne. De là, il peut rejoindre Paris et son travail de développeur informatique. Arrivé au parking, il se gare. La journée s’annonce banale.
Alors qu’il s’apprête à fermer sa voiture, un homme s’approche. “Bouge pas”, lui dit-il. L’ingénieur serre les poings. “Hors de question que l’on me vole ma voiture”, pense-t-il. Il fréquente le club Fiat 500, signe d’un amour manifeste pour son véhicule. Mais ce n'est pas un carjacking. L’homme ajoute sèchement “Police” et lui passe les menottes. Serge Humpich vient d’être arrêté.
La suite la semaine prochaine,
Bonne soirée,
Relecture: Mnyo
PS: L’histoire vous a plu? Pour me payer un café c'est ici ou sur mon wallet BTC (bc1qhx49fpxcnlpe35z4z2j4wmrazpvz7a3ejm4rex).