Vous êtes sur la page 1sur 45

Sécurité des cartes de paiement

Université de Montréal mars 2010

Nicolas Guay Directeur de pratique, Services de paiement Groupe GFI Solutions

Université de Montréal mars 2010 Nicolas Guay Directeur de pratique, Services de paiement Groupe GFI Solutions

Au menu

Le paiement par carte, les risques et objectifs de sécurité

Carte à bande magnétique

Carte à puce (standard EMV)

Conclusion

Le paiement par carte, les risques et objectifs de sécurité

Les cartes de paiement au Canada

Cartes de crédit MasterCard et Visa (2009)

   

Cartes

69,7 millions

 

27,7 millions de

canadiens âgés de

   

Valeur des achats

265

milliards $

plus de 15 ans (2008)

Nombre d’achats

2,5 milliards

 

Paiement Direct Interac (2009)

Valeur des achats

171

milliards $

Nombre d’achats

3,9 milliards

 

Opérations aux guichets automatiques bancaires (2008)

Nombre d’opérations (retrait, dépôt, paiement et transfert)

> 1 milliard

 

Environ 650 000 terminaux de paiement

Plus de 50 000 guichets automatiques

Sources: Association des banquiers canadiens, Interac et Statistique Canada

4

Processus typique de paiement par carte (autorisation)

$
$

Compte du

détenteur

Émetteur

Réseau de paiement $
Réseau
de
paiement
$
$ Compte du détenteur Émetteur Réseau de paiement $ Acquéreur Compte du commerçant Détenteur Commerçant 5

Acquéreur

$ Compte du détenteur Émetteur Réseau de paiement $ Acquéreur Compte du commerçant Détenteur Commerçant 5

Compte du

commerçant

$ Compte du détenteur Émetteur Réseau de paiement $ Acquéreur Compte du commerçant Détenteur Commerçant 5
Détenteur
Détenteur
Commerçant
Commerçant

Degré zéro de la transaction par carte

À la base, une transaction par carte requiert

– Numéro de compte + date d’expiration

• L’émetteur produit un numéro d’autorisation

qui fait foi de son acceptation de la compensation éventuelle des fonds.

foi de son acceptation de la compensation éventuelle des fonds. Montant, PAN, EXP Numéro d’autorisation Émetteur

Montant, PAN, EXP

foi de son acceptation de la compensation éventuelle des fonds. Montant, PAN, EXP Numéro d’autorisation Émetteur

Numéro d’autorisation

foi de son acceptation de la compensation éventuelle des fonds. Montant, PAN, EXP Numéro d’autorisation Émetteur
foi de son acceptation de la compensation éventuelle des fonds. Montant, PAN, EXP Numéro d’autorisation Émetteur

Émetteur

Le contexte de la transaction et le risque

Point de vente traditionnel.

Automate libre-service.

« Carte non présente »:

Commande postale ou téléphonique

Internet

• Capacité ou non d’obtenir une autorisation de

l’émetteur:

– En ligne avec l’émetteur ou non.

Objectifs de sécurité /1

Qualification du risque associé au marchand et au détenteur.

Intégrité.

Authentification des parties:

En particulier, de la carte et du détenteur.

• …Non répudiation…

Objectifs de sécurité /2

Unicité de la transaction:

Compteur de transaction dans le protocole.

• Gestion du risque lors de l’autorisation:

En ligne (online):

• L’émetteur peut faire toutes les vérifications requises au niveau du compte.

Analyse comportementale.

Hors ligne (offline) : heuristiques pour gérer le risque.

Montant limite.

Nombre limite de transactions hors ligne sur une carte.

Liste noire de cartes déclarées en problème.

Principaux scénarios de fraude

Contrefaçon.

Duplication de carte (clonage).

Utilisation de cartes perdues ou volées.

Utilisation illégitime des données de carte

dans un contexte de carte non présente.

Les effets de la fraude:

Perte financière.

Perte de confiance.

Carte à bande magnétique

Carte à bande magnétique 11

Transaction avec lecture de la bande

magnétique

La bande magnétique contient entre autres:

Numéro de compte (PAN).

– Date d’expiration (EXP).

Code vérificateur (CVC).

Authentification de la carte :

Code vérificateur (CVC)

Donnée statique qui ne peut être contrefaite:

caractéristiques d’une donnée aléatoire.

• Pour des raisons pratiques, il s’agira typiquement d’un cryptogramme calculé sur des données présentes sur la piste magnétique. Ex.:

CVC = F K ( PAN, EXP )

où F est une fonction utilisant 3DES.

CVC vérifié ?
CVC
vérifié ?

Émetteur

est une fonction utilisant 3DES. CVC vérifié ? Émetteur PAN, EXP, CVC • Cependant: Il s’agit

PAN, EXP, CVC

utilisant 3DES. CVC vérifié ? Émetteur PAN, EXP, CVC • Cependant: Il s’agit d’une donnée statique,

• Cependant: Il s’agit d’une donnée statique, donc « clonable ».

Authentification du détenteur

Méthodes possibles:

Aucune.

Signature.

– Numéro d’identification personnel (NIP).

Authentification du détenteur par un NIP

Le NIP est chiffré par le terminal et vérifié par l’émetteur.

Chiffrement Triple DES:

PIN_BLOCK = F K ( PAN, PIN )

où F est une fonction utilisant 3DES

Problèmes:

Tous les terminaux doivent-ils contenir les clés secrètes de

tous les émetteurs ?

– Le NIP est secret, et devrait l’être aussi pour l’émetteur !

PIN Translation

Concept de traduction du NIP : déchiffrement, puis chiffrement sur une nouvelle clé pour passer le relais entre l’acquéreur, le réseau et l’émetteur.

La traduction du NIP et la vérification est faite de

façon à ce que le NIP en clair ne soit pas accessible.

Les clés sont conservées dans les boîtes de sécurité (Hardware Security Module) qui font les calculs

cryptographiques.

Zone de l’acquéreur Zone du réseau Zone de l’émetteur HSM HSM HSM Acquéreur Émetteur Saisie
Zone de l’acquéreur
Zone du réseau
Zone de l’émetteur
HSM
HSM
HSM
Acquéreur
Émetteur
Saisie et
chiffrement
du NIP (K A )
Traduction du
NIP(K A à K R )
Traduction du
NIP(K R à K E )
Vérification
du NIP (K E )

Carte à puce (EMV)

Carte à puce (EMV) 17

Objectifs

• Permettre à l’émetteur de gérer le risque des transactions hors ligne (sans connexion à l’émetteur).

Renforcer le niveau de sécurité associé à:

Intégrité.

Authentification des parties (carte, détenteur, émetteur).

« EMV »

Acronymes des corporations fondatrices:

Europay, MasterCard, Visa.

– Aujourd’hui: American Express, JCB, MasterCard, Visa.

Dialogue terminal/carte

• Protocole d’échange de terminal à carte basé sur un modèle requête/réponse (ISO 7816).

• Le terminal a toujours l’initiative:

carte basé sur un modèle requête/réponse (ISO 7816). • Le terminal a toujours l’initiative: Requête Réponse
Requête Réponse
Requête
Réponse
carte basé sur un modèle requête/réponse (ISO 7816). • Le terminal a toujours l’initiative: Requête Réponse

Principales étapes du traitement d’une

transaction EMV

1.

Démarrage de la transaction au terminal.

2.

Authentification hors ligne de la carte.

3.

Authentification du détenteur.

4.

Gestion du risque par le terminal.

5.

Gestion du risque par la carte.

6.

Autorisation en ligne (si applicable).

7.

Finalisation de la transaction.

Principales étapes du traitement d’une

transaction EMV

1.

Démarrage de la transaction au terminal.

2.

Authentification hors ligne de la carte.

3.

Authentification du détenteur.

4.

Gestion du risque par le terminal.

5.

Gestion du risque par la carte.

6.

Autorisation en ligne (si applicable).

7.

Finalisation de la transaction.

Authentification hors ligne de la carte

4 options possibles:

– Pas d’authentification par le terminal;

Acceptable pour terminaux avec capacité en ligne

seulement, car authentification par l’émetteur lors de la requête en ligne (ex.: guichet automatique).

SDA Static Data Authentication;

DDA Dynamic Data Authentication;

CDA Combined Data Authentication.

• Examinons SDA et DDA plus en détail…

Authentification statique de la carte (SDA)

Principe

• Au moment de la création de la carte, l’émetteur calcule une signature sur des données critiques de la carte. Exemple de données critiques :

No de compte (PAN).

– Dates de validité et d’expiration.

Au moment de la transaction, le terminal vérifie que cette signature correspond bien aux données dans la

carte.

Objectifs :

– Assurer l’intégrité des données critiques de la carte et qu’elles proviennent bien d’un émetteur légitime.

Comment réaliser ceci ?

Problème: on ne peut pas installer dans tous les terminaux du monde des clés secrètes de tous les émetteurs du monde.

Solution: Crypto à clés publiques.

Authentification statique de la carte (SDA)

Fonctions requises

• Génération d’une signature:

Hachage SHA-1 et chiffrement RSA sur une clé

secrète.

• Vérification d’une signature:

Hachage SHA-1 et déchiffrement RSA sur une clé

publique.

Normes actuelles: Utilisation de clés de 1024 à 1984, à la discrétion de l’émetteur.

Authentification statique de la carte (SDA) Fonctionnement /1

ACME Merchant La Banque Services Populaire inc. Issuer Issuer CA CA CA Private Key Public
ACME Merchant
La Banque
Services
Populaire
inc.
Issuer
Issuer
CA
CA
CA
Private Key
Public Key
Private Key
Public Key
Public Key
S
P
S
P
P
I
I
CA
CA
CA
Issuer PK
Static Card
Certificate
Data
Static Card
Issuer PK
Data
Certificate
Signature
Autorité
de
certification
Émetteur
(CA)
Acquéreur

Authentification statique de la carte (SDA) Fonctionnement /2

CA Public Key Static Card Data P CA Static Card Issuer PK Data Certificate Signature
CA
Public Key
Static Card
Data
P CA
Static Card
Issuer PK
Data
Certificate
Signature

Issuer

Public Key

P I

PK Data Certificate Signature Issuer Public Key P I • Le terminal – Obtient les données
PK Data Certificate Signature Issuer Public Key P I • Le terminal – Obtient les données

Le terminal

Obtient les données pertinentes de la carte.

– Utilise la clé publique de l’autorité de certification (P

) pour

CA

vérifier que la clé publique de l’émetteur (P I ) a été certifiée

par l’autorité de certification (CA).

– Utilise la clé publique de l’émetteur (P ) pour vérifier la signature des données de la carte (Static Card Data Signature).

I

Si la vérification est réussie, le terminal peut faire

confiance aux données de la carte

– Elle sont intègres et proviennent bien d’un émetteur certifié.

Authentification statique de la carte (SDA)

Conclusion

• L’objectif est rempli:

Si on change des données critiques sur la carte, la signature ne sera pas vérifiée.

Si on tente de créer une carte de toute pièce, on ne pourra pas créer un certificat de clé publique valide, puisqu’on n’a pas accès à la clé secrète de l’autorité de certification (S CA ).

Protège contre la contrefaçon.

Cependant:

– Si on clone parfaitement la carte, le terminal n’y verra que du

feu.

Les transactions hors ligne sont vulnérables.

Authentification dynamique de la carte

(DDA) Principe

On va protéger les données critiques, mais aussi faire intervenir des données

dynamiques, pour éviter les redites.

La carte génère une signature dynamique au moment de la transaction.

Les données dynamiques signées incluent un

nombre aléatoire fournit par le terminal

pendant la transaction.

– C’est un « challenge ».

Authentification dynamique de la carte (DDA)

Fonctionnement /1

ACME Merchant La Banque Services Populaire inc. IC Card IC Card Issuer Issuer CA CA
ACME Merchant
La Banque
Services
Populaire
inc.
IC Card
IC Card
Issuer
Issuer
CA
CA
CA
Private Key
Public Key
Private Key
Public Key
Private Key
Public Key
Public Key
S
P
S
P
S
P
P
ICC
ICC
I
I
CA
CA
CA
Issuer PK
Static Card
Certificate
Data
Issuer PK
IC Card PK
Certificate
Certificate
Autorité
de
certification
Émetteur
(CA)
Acquéreur

Authentification dynamique de la carte (DDA)

Fonctionnement /2

dynamique de la carte (DDA) – Fonctionnement /2 Lecture des données Nombre aléatoire Signature dynamique
Lecture des données
Lecture des données
Nombre aléatoire
Nombre aléatoire
Signature dynamique
Signature dynamique
Lecture des données Nombre aléatoire Signature dynamique • Le terminal – Utilise la clé publique de

Le terminal

– Utilise la clé publique de l’autorité de certification (P

) pour vérifier

CA

que la clé publique de l’émetteur (P I ) a été certifiée par l’autorité de

certification (CA).

– Utilise la clé publique de l’émetteur (P ) pour vérifier que les données de la carte et la clé publique de la carte (P ICC ) ont été certifiés par l’émetteur.

Fournit à la carte un nombre aléatoire de son cru.

I

La carte

– Calcule à l’aide de sa clé secrète (S

) une signature dynamique

ICC

sur des données dynamiques qui incluent le nombre aléatoire.

Le terminal

Utilise la clé publique de la carte (P ICC ) pour vérifier la signature dynamique.

Authentification dynamique de la carte

(DDA) Conclusion

Le « challenge »:

Assure que les données signées sont dynamiques, ce qui évite les redites, et donne confiance au terminal.

• Le clonage n’est plus possible: il faudrait cloner ou

découvrir la clé secrète de la carte (S

considéré comme virtuellement impossible.

), ce qui est

ICC

Cependant:

Requiert une carte avec processeur crypto à clé publique:

plus coûteuse.

Transaction potentiellement plus lente (temps de calcul de la

carte).

Ce protocole est encore vulnérable à une attaque par un intermédiaire entre la carte et le terminal (« man in the middle »).

Principales étapes du traitement d’une

transaction EMV

1.

Démarrage de la transaction au terminal.

2.

Authentification hors ligne de la carte.

3.

Authentification du détenteur.

4.

Gestion du risque par le terminal.

5.

Gestion du risque par la carte.

6.

Autorisation en ligne (si applicable).

7.

Finalisation de la transaction.

Authentification du détenteur

• Méthodes d’authentification du détenteur:

Aucune;

Signature;

– NIP en ligne (vérifié par l’émetteur);

NIP hors ligne (vérifié par la carte): présenté chiffré ou présenté en clair.

Méthode choisie selon les exigences de la carte et

capacité du terminal.

NIP en ligne:

– Mêmes pratiques qu’avec les cartes à piste (expliqué plus tôt).

Requiert que la transaction soit autorisée en ligne avec l’émetteur.

NIP hors ligne présenté chiffré à la carte

• Quelle beau cas d’espèce pour le chiffrement à clé publique!

Clé S ICC PIN
Clé S ICC
PIN

NIP hors ligne présenté en clair à la carte

La présentation chiffrée du NIP implique:

Carte à crypto processeur RSA, plus coûteuse.

Des transactions potentiellement plus lentes.

• L’alternative est la présentation en clair.

– Le terminal doit saisir le NIP et l’acheminer à la carte de façon sécuritaire (sécurité physique et logique).

Attaque « simple »: un équipement entre la carte et le

lecteur écoute le NIP en clair. Balisé par:

Les normes applicables à la sécurité physique des claviers NIP et à l’interface physiques entre la carte à puce et le

lecteur.

– La sécurité de l’environnement opérationnel au point de service.

– D’autres éléments du protocole (traitements de la carte,

autorisation par l’émetteur).

Principales étapes du traitement d’une

transaction EMV

1.

Démarrage de la transaction au terminal.

2.

Authentification hors ligne de la carte.

3.

Authentification du détenteur.

4.

Gestion du risque par le terminal.

5.

Gestion du risque par la carte.

6.

Autorisation en ligne (si applicable).

7.

Finalisation de la transaction.

Cryptogramme de la transaction

Il « scelle » le résultat de la transaction.

• Il s’agit d’un MAC calculé par la carte à l’aide de 3DES sur des données critiques de la transaction:

Type de transaction;

Montant;

Date;

Compteur de transaction;

Statuts des diverses étapes de traitement de la transaction;

Etc.

Utilise une clé DES à cet effet inscrites dans la carte par l’émetteur au moment de la création de la carte.

Gestion de risque par le terminal, puis par

la carte

Le terminal évalue le risque de la transaction et propose à la carte comment traiter la transaction en lui demandant de générer un cryptogramme.

La carte évalue le risque de la transaction et retourne un cryptogramme du type correspondant à sa volonté.

AAC: Refuser la transaction.

– ARQC: Demander une autorisation en ligne à l’émetteur.

TC: Autoriser la transaction hors ligne.

l’émetteur. – TC: Autoriser la transaction hors ligne. SVP, générer cryptogramme (ma proposition) Cryptogramme
l’émetteur. – TC: Autoriser la transaction hors ligne. SVP, générer cryptogramme (ma proposition) Cryptogramme
SVP, générer cryptogramme (ma proposition)
SVP, générer cryptogramme (ma proposition)
Cryptogramme correspondant à ma volonté
Cryptogramme correspondant à ma volonté

Autorisation en ligne

• Si la transaction doit être autorisée en ligne (ARQC)…

• En plus des traitement d’autorisation traditionnels, l’émetteur valide le cryptogramme de la carte et retourne un

cryptogramme de son cru (ARPC); par exemple calculé sur:

– l’ARQC et ;

le code de statut de la transaction (indique si autorisé ou non).

Authentification mutuelle carte émetteur.

Un cryptogramme final est généré après la communication

avec l’émetteur.

Générer cryptogramme
Générer cryptogramme
ARPC valide?
ARPC valide?
ARQC
ARQC
Générer cryptogramme, ARPC
Générer cryptogramme,
ARPC
AAC ou TC
AAC ou TC
ARPC valide? ARQC Générer cryptogramme, ARPC AAC ou TC ARQC valide? Requête autor., ARQC Réponse autor.,
ARQC valide? Requête autor., ARQC Réponse autor., ARPC Émetteur
ARQC
valide?
Requête autor., ARQC
Réponse autor., ARPC
Émetteur

39

Cryptogramme de la transaction

et non répudiation

Le cryptogramme généré par la carte fait foi de la transaction.

Y compris si la transaction a été autorisée hors ligne par la

carte (TC).

Comme le cryptogramme protège les données de la transaction, y compris le statut de l’authentification du

détenteur, et qu’il relie la transaction à la carte, c’est

un outil de non répudiation puissant.

En cas de contestation:

Entre les émetteurs et les acquéreurs, ce type de preuve est

de facto recevable: ils sont parties prenantes dans les

mécanismes techniques.

Face à un détenteur qui conteste une transaction, en pratique, c’est une autre histoire…

Non répudiation EMV…

Non, monsieur, il n’est pas question que nous vous remboursions. Nous avons la preuve que
Non, monsieur, il n’est pas
question que nous vous
remboursions. Nous avons la
preuve que vous avez bel et bien
fait cette transaction. Je vois très
bien dans nos systèmes que:
TC = 1F6A82A07C951E33

Conclusion

Conclusion /1

Le système de paiement par carte est soumis à plusieurs contraintes:

Rétrocompatibilité.

Interopérabilité.

Évolution ordonnée.

– Pratiques d’industrie.

En particulier, la rétrocompatiblité affaiblit les mécanismes sécuritaires « dernier cri » :

Pourquoi se donner la peine de cloner une puce quand on peut cloner la bande magnétique d’une carte à puce?

Pourquoi se donner la peine de cloner la bande magnétique d’une carte de crédit quand on peut faire des achats sur le Web avec { numéro de compte, date d’expiration }?

Conclusion /2

Diverses normes complémentaires viennent ajouter à la sécurité, par exemple:

PCI PED : Sécurité physique des terminaux et claviers NIP.

PCI DSS : Sécurité des données sensibles (numéro de compte, données de bande magnétique et NIP).

Aussi, des technologies permettent de sécuriser les

paiements sur le web:

3-D Secure, alias Verified by Visa et MasterCard Secure

Code.

• Et le jeu du chat et de la souris se poursuit…

Pistes bibliographiques…

Paiement par carte à puce (EMV)

Spécifications EMVCo : Book 1 à 4:

Vision critique des standards et application bancaires par l’équipe de Ross Anderson à

l’Université de Cambridge: