Des chercheurs ont réussi à cloner des clés Titan de Google, grâce à une attaque par canal auxiliaire

Des chercheurs ont réussi à cloner des clés Titan de Google, grâce à une attaque par canal auxiliaire

Des chercheurs ont réussi à cloner des clés Titan de Google, grâce à une attaque par canal auxiliaire

Les chercheurs utilisent de l’air chaud et un scalpel pour accéder à la puce A700X de NXP. Elle est notamment responsable du stockage des clés cryptographiques. Elle est ensuite connectée à un matériel spécifique et son comportement est analysé pendant qu’elle essaye de se connecter à un compte.

L’attaque exploite une vulnérabilité de type canal auxiliaire dans la puce de NXP. Elle permet d’obtenir la clé privée ECDSA (Elliptic Curve Digital Signature Algorithm), qui permettra alors de créer sa propre clé. Une fois les manipulations effectuées, les chercheurs doivent replacer les composants dans un nouveau boitier afin que la clé paraisse intacte.

L’évènement est important. Les recherches, menées par Victor Lomné et Thomas Roche – cofondateurs de NinjaLab à Montpellier – ne remettent cependant en cause ni le principe 2FA, ni même les clés de sécurité matérielles. C’est d’ailleurs l’essence des attaques par canal auxiliaire : le principe mathématique reste valable.

La faille réside dans l’implémentation d’une ou plusieurs fonctions dans la puce A700X. L’attaque est en outre loin d’être simple : il faut non seulement pouvoir garder la clé pendant au moins dix heures (dont six heures d’analyses minimum), mais le mot de passe du compte protégé est requis lui aussi. 

Deux conditions complexes qui nécessitent, au bas mot, une proximité physique avec la victime. En outre, il faut au moins 12 000 dollars de matériel.

La clé Titan utilisée était un ancien modèle, avec des composants depuis remplacés par des versions plus récentes. Constat valable aussi pour certains autres modèles testés et vulnérables comme l’ancienne Yubikey Neo. 

Dans un tweet, NinjaLab note que toutes les clés vendues aujourd’hui par Yubico utilisent des composants plus récents d’Infineon. De même, NXP fournit depuis deux nouvelles générations de puces.

Reste que l’attaque, décrite régulièrement comme impressionnante, sonne comme une mise en garde : aucune sécurité n’est inviolable. Ces travaux, s’ils ne remettent pas en cause les clés de sécurité, sont également un rappel. Les canaux auxiliaires sont un risque permanent. 

Commentaires (6)


Evidemment, aucun moyen de sécurité n’est inviolable, cependant il faut remettre ce procédé dans son contexte.



En sécurité informatique, le plus important n’est pas que ça soit techniquement possible, mais que les scénarios d’attaques le soient (ou qu’ils soient vraisemblables). Ici, il faut à la fois voler le mot de passe de l’utilisateur, voler la clé, la cloner avec du matériel coûteux (certes ce dernier peut évoluer dans le temps), rendre la clé sans que la victime ne s’en aperçoive (car sinon il la considérera comme volée et rappelons que la clé doit être ouverte pour cette attaque et elle sera abimée).



Ca fait beaucoup, notamment si on veut réaliser une attaque en masse ! Une telle attaque n’a de sens (à ce jour) que si on vise une personne en particulier (= une clé précise) et rappelons aussi qu’il suffit que l’utilisateur change son mot de passe (servant de premier facteur) pour rendre l’attaque caduque. De plus, d’autres moyens de minimiser les risques existent, sur la génération de la clé (je crois), sur l’usage d’un compteur U2F, etc.



Rappelons aussi que ce type de clé est bon marché pour permettre sa diffusion massive : il y a donc forcément quelques limitations sur le niveau de sécurité. Une clé FIDO2 n’est pas un mini-HSM (il existe des HSM sous forme de clé USB, mais le prix n’est pas le même, plusieurs centaines d’euros, et dans le cas de HSM, l’ouverture provoque souvent la destruction des clés, qu’il devient impossible de lire via canal auxiliaire).



Je retiens de l’étude une de ses conclusions :



Thus it is still clearly far safer to use your Google Titan Security Key (or other impacted
products) as FIDO U2F two-factor authentication token to sign in to applications like your
Google account rather than not using one.



Donc oui on peut cloner une clé Titan, mais le risque lié à cette attaque est aujourd’hui très faible.



janiko a dit:



En sécurité informatique, le plus important n’est pas que ça soit techniquement possible, mais que les scénarios d’attaques le soient (ou qu’ils soient vraisemblables). Ici, il faut à la fois voler le mot de passe de l’utilisateur, voler la clé, la cloner avec du matériel coûteux (certes ce dernier peut évoluer dans le temps), rendre la clé sans que la victime ne s’en aperçoive (car sinon il la considérera comme volée et rappelons que la clé doit être ouverte pour cette attaque et elle sera abimée).



Ca fait beaucoup, notamment si on veut réaliser une attaque en masse !




Sans compter qu’il faut en prime 10h pour une clé, plus 4 ou 6h (je ne me souviens plus du chiffre exact) par clé supplémentaire. Ca fait vraiment beaucoup…


@janiko c’est presque une publicité pour ce type d’équipement : je trouve rassurant qu’un matériel soit audité, décortiqué, craqué. On en comprend mieux les risques, et on adapte ses choix en conséquence selon la criticité de l’application qu’on en a :)



jokester a dit:


@janiko c’est presque une publicité pour ce type d’équipement : je trouve rassurant qu’un matériel soit audité, décortiqué, craqué. On en comprend mieux les risques, et on adapte ses choix en conséquence selon la criticité de l’application qu’on en a :)




La sécurité (informatique ou pas), c’est exactement çà : connaître pour évaluer et gérer le risque.


Pour le coup ce serait intéressant qu’ils vendent se type de clé dans une coque plastique impossible à ouvrir sans la détruire (bon en même temps, ceux qui ont 12 000$ de matériaux pourraient prévoir le coup et reconstruire la clé à l’identique après coup)


Quand on a vraiment envie de toute façon, il reste toujours le coup de fraise puis décorticage au microscope électronique… Ca marche avec tout mais c’est très très très très long.


Fermer