Dark Skippy, un vecteur d’attaque récemment découvert, constitue une menace importante pour la sécurité des portefeuilles matériels Bitcoin. Cette méthode permet à un signataire compromis d’exfiltrer sa phrase de départ principale en incorporant des parties dans les signatures de transaction, ce qui ne nécessite que deux transactions pour être finalisé. Contrairement aux hypothèses précédentes selon lesquelles plusieurs transactions étaient nécessaires, cette approche simplifiée signifie qu’une seule utilisation d’un appareil compromis peut conduire à une faille de sécurité complète.
L’attaque repose sur l’utilisation d’un micrologiciel malveillant qui modifie le processus de signature standard. En règle générale, les opérations de signature utilisent un nonce généré de manière aléatoire dans le cadre du processus de signature Schnorr. Cependant, dans un appareil compromis par Dark Skippy, le micrologiciel utilise à la place des nonces déterministes à faible entropie dérivés de la graine principale. Plus précisément, la première moitié de la graine est utilisée pour une transaction et la seconde moitié pour une autre, ce qui permet à un attaquant de reconstituer la graine entière s’il peut observer les deux transactions.
Cette attaque nécessite que le dispositif de signature soit corrompu, ce qui peut se produire de différentes manières : un micrologiciel malveillant peut être installé par un attaquant ou par inadvertance par un utilisateur ; les attaquants peuvent également distribuer des appareils pré-compromis via des chaînes d’approvisionnement. Une fois en place, le micrologiciel compromis intègre des données secrètes dans les signatures de transactions publiques, utilisant efficacement la blockchain comme canal secret pour divulguer des informations sensibles.
L’attaquant surveille la blockchain pour détecter les transactions avec un filigrane spécifique qui révèle la présence des données intégrées. En utilisant des algorithmes tels que Kangaroo de Pollard, l’attaquant peut récupérer les nonces à faible entropie à partir des données de signature publiques, reconstruire ensuite la graine et prendre le contrôle du portefeuille de la victime.
Bien que ce vecteur d’attaque ne représente pas une nouvelle vulnérabilité fondamentale (les canaux secrets nonce sont connus et atténués dans une certaine mesure), Dark Skippy affine et exploite ces vulnérabilités plus efficacement que les méthodes précédentes. La subtilité et l’efficacité de cette technique la rendent particulièrement dangereuse, car elle peut être exécutée à l’insu de l’utilisateur et est difficile à détecter après coup.
Robin Linus est crédité avec Découvrir l’attaque et attirer l’attention sur son potentiel lors d’un Twitter discussion l’année dernière. Des recherches plus poussées lors d’un atelier de sécurité ont confirmé la faisabilité de l’extraction d’une graine entière de 12 mots en utilisant un minimum de ressources informatiques, démontrant l’efficacité de l’attaque et la facilité avec laquelle elle pourrait être exécutée en utilisant même un système modestement équipé.
Les mesures d’atténuation de ces attaques incluent la mise en œuvre de protocoles « anti-exfiltration » dans les dispositifs de signature, ce qui peut contribuer à empêcher la fuite non autorisée de données confidentielles. Cependant, ces défenses nécessitent une mise en œuvre rigoureuse et un développement continu pour garder une longueur d’avance sur les menaces en constante évolution.
La communauté cryptographique et les fabricants d’appareils sont invités à remédier rapidement à ces vulnérabilités afin de protéger les utilisateurs contre les exploits potentiels facilités par Dark Skippy et des méthodes similaires. Les utilisateurs doivent rester vigilants et s’assurer que leurs appareils exécutent un micrologiciel authentique et proviennent de fournisseurs réputés afin de minimiser le risque de compromission. De plus, les configurations multi-sig peuvent créer des défenses supplémentaires contre le vecteur d’attaque.