Wallet Bitfi de McAfee : des chercheurs alertent sur le risque « brainwallet »
Et tant d’autres choses encore. John McAfee n’en finit pas d’animer les discussions de la cryptosphère.
Un jour, nous apprenons qu’il a survécu à une supposée tentative d’assassinat, lorsqu’il tweete de façon vengeresse depuis sa chambre d’hôpital, en annonçant qu’il retrouvera les commanditaires de cet acte odieux.
My wife @theemrsmcafee and I with a message to my incompetent enemies pic.twitter.com/s7rT105OWy
— John McAfee (@officialmcafee) June 22, 2018
« Ma femme et moi, avec un message à mes ennemis incompétents »
Un autre, nous vous faisons savoir qu’il a décidé de se lancer dans la conception et la commercialisation de hardware wallets avec la marque Bitfi. Il affiche alors depuis une confiance à toute épreuve, et annonce même qu’il offrira 100 000 dollars à qui arrivera à « cracker » son hardware wallet. Il serait certain que son outil est “totalement immunisé contre le piratage” du fait d’une conception béton.
Everyone tells me https://t.co/VJ7qrOxQqL is hackable. Then register as a hacker and do it. We send you the device pre-loaded with $50 in BTC. If you get the BTC we send you $100,000. You will eventually give up. When you do we send you the pass phrase to recover your $50. Do it.
— John McAfee (@officialmcafee) July 28, 2018
« Tout le monde me dit que Bitfi est piratable. Alors enregistrez-vous en tant que hacker et faites-le ! On vous envoie le hardware wallet pré-chargé avec 50$ en BTC. Si vous volez les BTC nous vous envoyons 100 000$. Vous abandonnerez peut-être. En ce cas, nous vous envoyons la phrase mnémonique pour que vous récupériez vos 50$. Faites-le ! »
De la suspicion et des critiques : un hardware wallet peut-il réellement être infaillible ?
Les critiques ont depuis été acerbes, avec des spécialistes et des chercheurs en cryptographie qui ont tenté de mettre les mains dans le cambouis pour vérifier les dires de McAfee. La situation est cependant particulière : Bitfi annonce une solution qui serait open-source, et l’offre d’un bounty de 100 000 dollars est assujettie à certaines conditions trop restrictives pour démontrer quoi que ce soit.
Attention, soyons cependant clairs : le but n’est pas dans cet article de dire si le wallet de Bitfi est « piratable » ou non, ou s’il est réellement sécurisé. Simplement, il semblerait que la gestion des critiques ad hominem par Bitfi (et la gouaille naturelle de McAfee) soit parfois au mieux mal placée ; voire que cette gestion désastreuse puisse faire naître la suspicion chez les observateurs extérieurs.
Le bounty qui ne serait que pure esbroufe
Andrew Tierney, consultant en cybersécurité et spécialiste IoT, observe avec beaucoup de suspicion les critères permettant de décrocher dans les faits le versement de la récompense, dans une note de blog détaillée disponible ici. Pour résumer, le portefeuille Bitfi est un brainwallet dans le principe, c’est-à-dire qu’il permet de générer une clé privée automatiquement (génération en BIP32) à partir d’une phrase mnémonique fournie par l’utilisateur (maximum de 30 caractères). Andrew Tierney considère que beaucoup d’axes d’attaque ne sont même pas considérés dans le bounty. Parmi ceux-ci, certains autres cryptographes ont par exemple identifié les axes suivants :
Quick attack list:
1. Attack supply chain/update -> keylogger
2. Guess passphrase (Brainwallet)
3. Bad cryptography
4. UI (web/wallet) -> display false TX infoYour $ is as safe as your PW unless the wallet software is made evil and sends the attacker your passphrase.
— AzureCrimson ᗢ (@AzureCrimsonE) July 28, 2018
« Rapide liste des voies d’attaque : 1) Attaque par keylogger, 2) Brainflayer pour deviner la phrase mnémonique, 3) Cryptographie faible, 4) Interface graphique hackée : fausses adresses ou infos de transaction données par le matériel. »
D’autres alertes plus théoriques, mais démontrées
Ryan Castellucci, chercheur connu pour avoir démontré dès 2015 (lors de la DEFCON) comment cracker des brainwallets aux passphrases fragiles, a également pris la parole pour démontrer dans un billet détaillé que le wallet Bitfi n’était aucunement open-source, et qu’il présentait des fragilités surprenantes pour un hardware wallet. Il a dans la foulée mis à disposition une mise à jour de son utilitaire de cracking de brain wallets adaptée au Bitfi, sur un espace Github dédié.
Le dénigrement comme seule réponse
Bitfi n’a pas tardé à réagir, dénigrant les qualifications de Ryan Castellucci de façon assez surréaliste, au vu de son palmarès dans le domaine bien spécifique des brain wallets.
No one here ever heard of him in our lives until he started trolling us. But Rob Loggia actuallly was a journalist for Internstional Business Times and Digital Trends so he IS well known. Also, if this troll was a “respected researcher” he wouldn’t lie and would just claim bounty
— hgtp://Bitfi (@TheBitfi) July 29, 2018
« Personne n’a jamais entendu parler de ce mec chez nous avant qu’il ne vienne nous troller. A contrario, notre soutien Loggia fût journaliste pour International Business Times and Digital Trends, donc il EST bien connu. Egalement, si ce troll était un « chercheur respecté », il ne mentirait pas et viendrait juste réclamer sa récompense du bounty. »
Leur réponse a eu le don d’irriter fortement Riccardo Spagni, lead developer de Monero (XMR), qui ne s’est pas privé de leur signaler la déconnexion totale du ton employé et de mettre en doute leur réel niveau de qualification en termes de sécurité cryptographique.
If nobody at your outfit recognises Ryan Castellucci, who gave a groundbreaking talk on cracking cryptocurrency brainwallets at DEF CON 23 many years ago, DESPITE YOU SELLING A BRAINWALLET POWERED DEVICE (!!!) says more about your lack of skilled employees than anything else.
— Riccardo Spagni (@fluffypony) July 29, 2018
« Si personne de votre côté ne reconnaît Ryan Castellucci, qui a cassé la baraque avec une présentation dédiée au piratage des brainwallets de crypto à la DEF CON 23 il y a plusieurs années, MALGRE QUE VOUS VENDIEZ UN HARDWARE WALLET REPOSANT SUR LES BRAINWALLETS (!!!), cela en dit bien plus sur votre manque d’employés qualifiés que n’importe quoi d’autre. »
Des doutes persistants sur le réel fonctionnement du HW
L’histoire, assez rocambolesque, aurait pu en rester là, et ç’aurait déjà été largement suffisant. Mais… Andrew Tierney a remis une pièce dans la machine en se questionnant ouvertement : le hardware wallet est censé ne rien stocker, à part l’OS de la machine, et n’a pas de stockage supplémentaire a priori.
https://twitter.com/cybergibbons/status/1023605656912384000
« Tout cela n’a aucun sens. Ils n’ont pas de stockage. »
https://twitter.com/cybergibbons/status/1023629771991928832
« C’est une simple fonction de dérivation de clé dans une boite, connectée par le WiFi à… quelque chose. »
Pourtant, lors de la connexion, il lui a semblé avoir décelé qu’une connexion en Wifi avait lieu avec un élément non identifié. Difficile de dire lequel, mais il semblait suspecter l’existence d’un serveur de stockage centralisé avec lequel le hardware wallet communiquerait. Un autre point de fragilité massive, si cela venait à être avéré. McAfee avait pourtant déjà pris les devants en statuant que jamais il ne commettrait une telle imprudence :
The pass phrase isn't stored on the https://t.co/ATFaxwUzQC server.The server could be hacked (all servers are hackable) and the hacker could get the pass phrase that way. I'm not stupid enough to risk a ton of money on something that is hackable. The phrase is only in the mind.
— John McAfee (@officialmcafee) July 27, 2018
« La phrase mnémonique n’est stockée sur aucun serveur Bitfi.com. Le serveur pourrait être hacké (tous les serveurs peuvent l’être) et le hackeur pourrait obtenir la phrase mnémonique. Je ne suis pas assez stupide pour risquer une tonne de fric sur quelque chose qui soit piratable. La phrase mnémonique n’est stockée que dans l’esprit humain. »
Plus tard, alors qu’un internaute ayant eu accès au Bitfi lui faisait parvenir des photos des entrailles de la bête, Andrew Tierney constatait incrédule que la situation était pire qu’imaginée : le HW Bitfi est vendu 120 dollars, et la seule chose qu’il contient serait une puce MEDIATEK MT6580, sans aucun élément sécurisé (secure chip). Le secure chip est, en résumé, une puce supplémentaire qui vérifie l’intégrité du logiciel faisant tourner la machine, pour s’assurer que ce dernier n’a pas été piraté et modifié.
https://twitter.com/cybergibbons/status/1023667374153773057
« Nous avons des photos. C’est juste une puce MEDIATEK MT6580. Pas de signe d’un secure chip. »
Il repère ensuite un exemple de téléphone premier prix sur Alibaba qui tourne sur ce modèle de puce.
https://twitter.com/cybergibbons/status/1023671338844741632
« Voilà par exemple un téléphone reposant sur cette puce. »
Il conclut en expliquant que le HW Bitfi est une catastrophe sur de nombreux plans, notamment parce qu’il ne propose pas de design spécifique pour un hardware wallet; il est un simple bricolage d’éléments Android premier prix, et offre donc une surface d’attaque déraisonnable à un attaquant motivé. Le processeur n’a aucune fonction spécifique permettant de vérifier qu’il est tamper-proof (inviolable), et enfin, aucune mise à jour ne pourrait être apportée en l’état au vu du matériel choisi.
Gageons que la joute va se poursuivre entre les différents protagonistes. Rappelons simplement que beaucoup d’axes d’attaques existent pour compromettre un hardware wallet. Il semble difficile de statuer de façon catégorique sur le caractère non-piratable d’un tel matériel, d’autant plus lorsque ce matériel se trouve à l’examen être si généraliste, avec des composants a priori bon marché, et sans secure chip.
Sources : Cybergibbons ; rya.nc ; GitHub