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.