ACBM - Le Virus Informatique qui vous défend !Retour à l'accueilLes brèvesLe magasinContacts Ecrire dans le virusListe de diffusionPetites annoncesLes concours



Paru dans Pirates Magazine n°5
1999-09-01 00:00

L'Homme qui fait trembler les cartes bancaires


Serge Humpich est un [ingénieur] informaticien pas comme les autres. A 35 ans, avec un simple PC, il a percé le secret des cartes bancaires en janvier 1998. En alertant le GIE des cartes bancaires, il ne s'attendait pas à être attaqué en [justice] un an plus tard. Descente de police, saisie de son matériel, Humpich a été traité comme un escroc. Plusieurs médias qui voulaient relater son histoire ont été censurés, dont le Vrai Journal de Karl Zéro.


Pirates Mag' : Pourquoi vous êtes vous attaqué à la protection des cartes bancaires ?

Serge Humpich : Dans l'industrie, il y a des techniciens très compétents. Mais la personne qui a le pouvoir, qui prend les décisions ne l'est pas. C'est un véritable cancer ! Je me doutais bien que la carte bancaire n'était pas si sûre qu'on voulait le faire croire et je pensais avoir les connaissances et les compétences nécessaires pour le démontrer. Je ne cache pas non plus que j'avais des ambitions industrielles, commerciales.

Comment vous y êtes vous pris ?
Beaucoup d'efforts avaient été faits pour protéger la puce de la carte bancaire. Mais les ingénieurs se sont tellement focalisés dessus, qu'ils ont négligé le terminal de paiement, souvent sous-traité par divers constructeurs. C'est donc le terminal qu'il me fallait leurrer, évidemment avec une fausse carte. Les seules vraies cartes utilisées m'ont permis de comprendre le fonctionnement du lecteur. Je n'avais aucune information au départ. Pendant quatre ans, j'ai réalisé de nombreux tests. J'ai branché des fils et cherché où étaient les bornes "plus" et "moins", puis le connecteur dans lequel passent les données, les signaux d'initialisation, etc. J'ai ensuite branché l'ensemble sur le port Série de mon PC et essayé différents réglages : 1 200 bauds, 2 400, 9 600, parités paire et impaire, etc. Jusqu'à trouver des choses pertinentes. J'ai créé un analyseur logique de 50 Mo tournant à 60 Mhz capable de remonter le temps et une multitude de petits programmes divers. Je manquais de matériel. J'ai attendu six mois avant de m'acheter un programmateur d'Eprom à 2.000 F. Il me fallait également un terminal de paiement. J'ai mis un temps fou pour en trouver un. Je ne savais pas comment cela s'achetait, s'il fallait un abonnement, etc. Je l'ai démonté. Plus tard, il m'en a fallu un second que j'ai analysé entièrement et dont j'ai sorti tout le schéma électrique !

Concrètement, à quel niveau était la faille ?
Mais je n'ai pas trouvé de faille ! Les hackers exploitent des failles : ils se promènent devant un immeuble et attendent une porte restée ouverte par erreur. Souvent le système est bien conçu, mais mal administré. Et ils vont passer. Personnellement, je n'ai pas trouvé comment contourner la protection, je l'ai tout simplement enlevée ! Avec ce que j'ai trouvé, il faudrait que les ingénieurs changent fondamentalement leur manière d'authentifier une carte. Pour schématiser, une carte contient deux blocs de données : un pour le numéro de la carte, un autre qui s'appelle la valeur d'authentification. On utilise un algorithme assez solide à 96 chiffres. Si les deux blocs correspondent, on considère que c'est une vrai carte. Selon les concepteurs, on ne pouvait pas regénérer les deux blocs ensemble. J'y suis arrivé !
J'ai alors reprogrammé les processeurs (pics) présents sur des cartes, en vente libre (qui peuvent servir habituellement à pirater les télévisions à péage) pour qu'ils émulent des cartes bancaires. Lorsqu'on tape un code, le terminal de paiement envoie ce code à la carte, qui lui répond si c'est le bon code ou non. J'ai fait une carte qui répondait tout le temps : "Oui, c'est le bon code !", quel que soit le code tapé par l'utilisateur.

Vous êtes vous servi de vos fausses cartes ?
J'aurais pu utiliser mes nouvelles connaissances pour faire plein d'achats, sur le dos du GIE Cartes bancaires. Mais je préférais lui proposer de protéger le système. Il n'y avait aucun chantage. Je m'étais entouré d'un avocat et de deux experts en propriété industrielle afin de rester dans la légalité et surtout de valoriser mes droits. J'ai également ainsi protégé mon identité. Nos interlocuteurs nous ont ris au nez. Alors, j'ai fait une démonstration. Il y a un an, dans deux stations de métro parisien, j'ai utilisé des distributeurs automatiques de titres de transport pour acheter avec ma fausse carte des tickets de métro. Mon but n'était pas de voyager à l'il, mais simplement de démontrer que la sécurité des terminaux n'était pas celle que l'on aurait pu croire. Les numéros de cartes envoyés par les cartes leurres aux terminaux étaient de la forme :
XXXX XX98 7654 321X,
XXXX XX09 8765 432X,
XXXX XX10 9876 543X, etc. Ces numéros avaient été choisis de manière à montrer qu'ils pouvaient être créés arbitrairement. Les titres de transport achetés et les facturettes correspondantes ont été remis au GIE Cartes bancaires. Il aurait été possible d'utiliser des numéros de cartes existantes. Il n'y a plus possibilité d'authentifier le moyen de paiement et son appartenance au porteur par le code à quatre chiffres. Cette carte perd donc tout intérêt pratique, elle n'offre pas plus de sécurité qu'un Post-it !

Qu'a décidé le GIE après cette démonstration ?
A partir de ce moment, nous avons pu négocier. Un contrat de savoir-faire et de confidentialité a été rédigé par nos juristes respectifs. Personnellement, je trouvais cette affaire commerciale absolument banale. Le GIE m'avait affirmé ne rien trouver d'anormal à ma démarche. Je pensais naïvement qu'il cherchait à améliorer son système.
Mais il avait porté plainte, en même temps, par derrière, pour "introduction frauduleuse dans un système de traitement de données automatisé" et "contrefaçon de carte bancaire à puce" ! Les factures détaillées de mon avocat ont été analysées et son bureau perquisitionné un peu plus tard. Le jour de mon arrestation, il y avait une bonne quarantaine de personnes à mon domicile : policiers, experts, ingénieurs, etc. Ils ont tout saisi. A l'issue de ma garde à vue, j'ai récupéré mon PC, entièrement désossé et sans disque durs.
L'affaire devait être initialement jugée à huis clos, pour éviter qu'elle ne s'ébruite. J'encours sept ans de prison et 5 MF d'amende. Pourquoi ont-ils fait ça au lieu de négocier ? Explication plausible : il y a des intérêts personnels en jeu. La direction technique préfère étouffer l'affaire, plutôt que de voir étaler son incompétence ! Elle essaye de me faire passer pour un petit escroc : "Il n'a rien trouvé, il nous fait chanter !"

Les responsables ont promis de nouveaux terminaux ? Cela risque de coûter pas mal d'argent...
Environ 30 milliards de francs. Il faut vraiment changer toutes les cartes et tous les terminaux, partout ! Ils ont été obligés de rassurer leurs utilisateurs. Mais le problème, un an plus tard, est toujours d'actualité... Je ne suis peut-être pas le seul à avoir brisé la protection. Et peut-être que les autres ne sont pas honnêtes, eux...

Le GIE a aussi empêché certains médias de parler de cette affaire...
Ses responsables sont complètement dépassés par cette affaire. Ils ont continué à nier, à mentir à leurs clients (banques, utilisateurs, etc.). Ils ont osé dire qu'ils étaient au courant de ce trou de sécurité. Alors pourquoi n'ont-ils pas réagi avant ? Ils m'ont volé mon travail et, depuis quelques semaines, me voilà en procès !

Si vous aviez eu toutes les informations nécessaires sur les brochages de la puce, les protocoles de communication, combien de temps auriez-vous gagné ?
Pas mal ! Et encore plus si j'avais eu le matériel.

Vous ne le saviez pas : de nombreux magazines d'électronique ont publié ces informations depuis plusieurs années. Les industriels des cartes à puce ont-ils joué avec le feu ?
Dans un système fiable, on peut communiquer sur tout ce qu'on veut. Quand j'ai fait ma démonstration, les spécialistes sont tombés des nues ! L'algorithme de cryptage utilisé est de niveau militaire : RSA, 640 bits.

Il vous faut combien de temps pour retrouver un couple de nombres ?
Cela dépend. Tout n'est pas automatique, je dois intervenir "manuellement". Il ne faut pas partir du raisonnement "soit x tel nombre", il faut dire "soit x un nombre particulier" et sortir toutes ses caractéristiques spécifiques. Le produit avait une forme particulière. Aussi, ils n'ont pas pris le premier nombre, pas le dernier, ni au milieu, pour gêner ceux qui font un crible en partant d'une telle position. J'ai fait plein de raisonnements de ce genre et prévu des probabilités. J'ai utilisé des méthodes récentes de factorisation de nombres premiers, que j'ai adaptées à mes nombres particuliers. On pouvait se douter que la solution était proche de la racine carrée...

Vous êtes capable de casser du RSA ? Ce n'est pas seulement les cartes bancaires que vous mettez en défaut, ce sont également toutes les autres utilisations de cet algorithme (PGP, etc.) ? Selon nos dernières informations, des chercheurs viennent tout juste de casser le RSA 512 bits ! Vous nous parlez de code 640 bits maîtrisé depuis un an ?
Trouver des nombres premiers de plus en plus grands, ce n'est pas facile. Et, ici, les nombres demandent une particularité supplémentaire qui les rend encore plus difficiles à trouver. L'avenir de cette implémentation-là est fragilisée par cette considération. Car il n'est pas sûr que trouver de telles clefs suffisamment grandes soit plus simple que de briser l'algorithme sur des clefs plus importantes. Ce qui continuera à se faire de manière conventionnelle. De plus, mes 640 bits correspondent à deux nombres de 320 bits. Peut-être que les chercheurs sont toujours plus forts que moi !

Vous seriez en mesure de faire un nouveau système, plus fiable ?
Oui, facilement, quelque chose de beaucoup plus sûr !

Vous faites quoi aujourd'hui ?
Je viens de me faire licencier. J'ai des crédits à rembourser, il me reste 500 F par mois pour vivre.

Les industriels français essayent depuis plusieurs années d'imposer leur carte à puce au monde entier. Pourquoi ne proposez-vous pas aux autres pays votre solution, fort de votre démonstration ?
Personne ne peut croire qu'un particulier soit parvenu à pirater un système sur lequel des centaines de spécialistes ont réfléchi ! Les sociétés qui fournissent les solutions et les clients potentiels se connaissent, il n'y a aucune raison que je passe devant. Comment les banques peuvent-elles faire la différence entre toutes ces personnes qui pensent avoir trouvé une protection ? Le fait que j'ai cracké le système ne signifie pas que la solution que je propose soit la bonne. Il faudrait des investissements très lourds pour être entendu par les industriels.

Une carte bancaire peut s'utiliser de trois façons : un numéro, une piste magnétique, une puce. Ces trois moyens ont été piratés. Pensez-vous qu'on verra un jour une solution vraiment sécurisée pour le commerce ?
La puce reste une bonne méthode... utilisée par des gens compétents.



Mise à jour :
la clé de cryptage mesurait en réalité 320 bits. Dans son livre Le Cerveau Bleu, Serge Humpich explique en partie pourquoi il parlait d'une clé de 640 bits. Le GIE n'avait jamais voulu s'exprimer à ce sujet au moment de l'affaire Humpich, ni dans un sens, ni dans l'autre. Dès 1988, des experts avaient déconseillé l'utilisation d'une clé de 320 bits.

Extrait de la page 129 du livre Le Cerveau Bleu :
« Un jeune policier avança avec beaucoup d’aplomb que la clef factorisée était de 640 bits. Il était catégorique. Il devait donc y avoir une norme ou des informations que j’ignorais car pour moi elle n’en faisait que 320. Mais il est vrai que lorsqu’on l’utilisait on commençait par l’élever au carré, ce qui doublait son nombre de chiffres. Peu importe, en pratique nous savions de quoi nous parlions. Le policier prévoyait que sur les nouvelles cartes, la clé serait beaucoup plus solide, sans doute de 1 024 bits. Il eut même une réflexion un peu hardie en ajoutant que rien ne serait réglé pour autant car si j’avais pu casser la première clé, je parviendrais à casser la nouvelle. Pour lui, le problème technique du groupement cartes bancaires se prolongeait dans l’avenir. Plus tard, quand j’eus à évoquer cette clé, je gardai la convention des 640 bits, en prenant soin de préciser que la clé était aussi représentée par quatre-vingt-seize chiffres décimaux. Ainsi chacun pourrait s’y retrouver. Beaucoup d’ingénieurs me parlèrent de la taille de cette clé, alors que je n’y attachais pas une grande valeur puisque sa solidité était depuis longtemps obsolète. Il me semblait plus important d’exposer à tous les conséquences pratiques pour la carte bancaire. »
Olivier Aichelbaum et Damien Bancal


Vous aimez cette page ? Partagez-en le lien sur les réseaux sociaux !

Facebook
Twitter
Google+
LinkedIn


Retour aux archives
Retour à l'accueil
[RSS]
Legal & cookies