Aller au contenu
Dossier d'incident · · 2 min de lecture · 323 mots · Mis à jour ·Découvert ·Divulgué Résolu

Attaque de la chaîne d’approvisionnement de Ledger Connect Kit, décembre 2023 : ce qui s’est passé et ce qu’il faut vérifier

Un paquet npm compromis a injecté un siphonneur de portefeuille dans chaque dapp chargeant Ledger Connect Kit depuis le CDN — que les utilisateurs possèdent ou non un Ledger.

Partager
Schéma de l'incident Ledger (Connect Kit library) montrant l'étape de la chaîne d'approvisionnement comme point de défaillance.
Schematic of the Ledger (Connect Kit library) incident showing the supply chain stage as the failure point.

En un coup d'œil

ENTITÉ TOUCHÉE
Ledger (Connect Kit library)
CHAÎNE(S)
Ethereum
PERTES DÉCLARÉES
env. 600 000 dollars américains(Ledger, 14 Déc 2023)
RÉPONSE OFFICIELLE
www.ledger.com

La dépendance était la surface d’attaque

Ledger Connect Kit est une bibliothèque que les dapps utilisent pour dialoguer avec les appareils Ledger. Beaucoup la chargeaient depuis un CDN à l’exécution plutôt que d’en figer une version et de l’intégrer à leur bundle. Une seule publication malveillante s’est donc propagée automatiquement dans des interfaces de production en service, sans aucune action des équipes des dapps ni le moindre déploiement de leur côté.

Le code injecté était un siphonneur de portefeuille : il présentait aux utilisateurs une transaction qui transférait leurs actifs. Point essentiel, cela a touché des utilisateurs qui ne possédaient aucun appareil Ledger. La bibliothèque était dans la page ; le matériel n’avait aucune importance.

Ce que les portefeuilles matériels protègent et ce qu’ils ne protègent pas

Il serait erroné d’y voir une défaillance du portefeuille matériel, et tout aussi erroné d’y voir une justification. Un portefeuille matériel protège la clé. Il ne décide pas si une transaction est une bonne idée — il vous montre la transaction et vous interroge. Si la demande qui parvient à l’appareil est malveillante et que vous l’approuvez, l’appareil fonctionne exactement comme prévu.

La défense qui aurait fonctionné consistait à lire ce qu’affichait l’appareil avant d’approuver. C’est une exigence réellement difficile : les données de transaction sont souvent opaques, et des centaines d’approbations de routine habituent les utilisateurs à cliquer sans regarder. Mais c’est le contrôle qui existait, et si la perte s’est chiffrée en centaines de milliers plutôt qu’en bien davantage, c’est parce que certains utilisateurs l’ont effectivement lu.

La catégorie, pas l’incident

Les dépendances chargées à l’exécution dans une page capable de demander des signatures constituent un risque permanent. Le durcissement pertinent se situe du côté des dapps — figer les versions, recourir à l’intégrité des sous-ressources, intégrer la bibliothèque au bundle plutôt que la charger depuis un CDN — et il est invisible pour les utilisateurs, ce qui explique la récurrence de cette catégorie.

Chronologie

Ajout seulement. Les corrections sont ajoutées sous la forme d'une entrée datée distincte ; les entrées antérieures ne sont jamais réécrites.

  1. Une version malveillante de Ledger Connect Kit est publiée sur npm et distribuée via CDN aux dapps qui la chargent à l'exécution. Ledger
  2. Ledger identifie la compromission, retire la version malveillante et publie une version corrigée. Le fichier malveillant est resté en ligne pendant environ cinq heures. Ledger

Ce qu'il faut vérifier

Ledger a publié un communiqué, dont le lien figure ci-dessous, avec la chronologie et les versions touchées. Les appareils Ledger et l'application Ledger Live n'ont pas été compromis en eux-mêmes.

Conisec n'héberge ni ne relaie d'outils de récupération, de révocation ou de « vérification ». Après un incident public, les attaquants diffusent systématiquement ce type de liens en utilisant les noms des publications qui couvrent l'affaire. Utilisez le canal officiel du projet concerné, indiqué ci-dessus, et rien d'autre.

Sources

  1. Ledger, Ledger Connect Kit exploit — official statement (14 Déc 2023)

Pas un conseil. Ceci est un résumé de faits publiés, et non un conseil juridique, fiscal ou de sécurité. Vérifiez auprès des sources primaires indiquées ci-dessus.

Dernière vérification par Conisec Staff.

Pour aller plus loin