Une faille de sécurité détectée pour la deuxième fois dans les cartes de crédit
de l'ETH Zurich ont maintenant trouvé un moyen de déjouer les codes PIN d'autres cartes de paiement.
Effectuer un paiement sans contact avec une carte de crédit ou de débit est rapide et facile, et s'est avéré particulièrement utile pendant la pandémie actuelle. Pour plus de sécurité, l'utilisateur·ice doit entrer un code PIN à partir d'un certain montant (généralement 80 CHF en Suisse) - du moins, c'est la théorie. Comme l'ont montré trois chercheur·ses du groupe de sécurité de l'information de l'ETH Zurich, ces mesures de sécurité peuvent être contournées avec certaines cartes. La première fois que les chercheur·ses ont pu documenter comment les cartes de crédit pouvaient être utilisées sans code PIN, c'était en été 2020, avec les cartes Visa (voir ETH News 01.09.2020). L'équipe a maintenant révélé qu'un autre contournement est possible avec d'autres types de cartes de paiement, à savoir Mastercard et Maestro.
Les méthodes utilisées par les chercheur·ses sont basées sur le principe de «l'homme au milieu», selon lequel les attaquant·es exploitent les données échangées entre deux partenaires de communication (dans ce cas, la carte et le terminal de carte). Pour reproduire cet effet, les chercheur·ses ont utilisé une application Android qu'il·les avaient créée et deux téléphones mobiles compatibles NFC. L'application a faussement signalé au terminal de la carte qu'aucun code PIN n'était nécessaire pour autoriser le paiement et que l'identité du propriétaire de la carte avait été vérifiée. Au départ, la méthode ne fonctionnait que sur les cartes VISA, car les autres fournisseurs utilisent un protocole différent (un protocole régit la transmission des données).
Les mesures de sécurité ont été dépassées de deux manières
À première vue, la deuxième idée derrière le contournement de l'étape de vérification du code PIN semble simple : «Notre méthode fait croire au terminal qu'une carte Mastercard est une carte VISA», explique Jorge Toro, qui travaille au sein du groupe de sécurité de l'information et est l'un des auteur·es du document de recherche. Jorge Toro ajoute que la réalité est beaucoup plus complexe qu'il n'y paraît, deux sessions devant se dérouler simultanément pour que cela fonctionne : le terminal de la carte effectue une transaction VISA, tandis que la carte elle-même effectue une transaction Mastercard. Les chercheur·ses ont utilisé ces méthodes sur deux cartes de crédit Mastercard et deux cartes de débit Maestro émises par quatre banques différentes.
Les chercheur·ses ont informé Mastercard immédiatement après avoir fait leur découverte. Il·les ont pu confirmer expérimentalement que les défenses mises en place par Mastercard sont efficaces. «C'était à la fois agréable et passionnant de travailler avec la société sur ce sujet», explique Jorge Toro. Mastercard a mis à jour les protections pertinentes et a demandé aux chercheur·ses d'essayer d'attaquer à nouveau le processus de paiement de la même manière, et cette fois, cela a échoué. Les chercheur·ses présenteront leur article avec un aperçu complet de la méthode lors du symposium USENIX Security '21 en août.
La norme EMV comme source d'erreur
Les failles de sécurité constatées dans les cartes de paiement sans contact sont principalement dues à l'EMV, une norme de protocole international qui s'applique à ces cartes. Les erreurs de logique dans cet ensemble de règles sont difficiles à détecter, notamment parce que la norme compte plus de 2 000 pages. Les chercheur·ses de l'ETH Zurich soulignent sur le site web de leur projet que ces systèmes doivent de plus en plus être révisés automatiquement, car le processus est trop complexe pour les êtres humains.