Date du rapport : 2023-12-20
Date de l'incident : 2023-12-14
Type d'incident détecté : Accès non autorisé et code malveillant
Préface
Ledger a détecté un exploit utilisant Ledger Connect Kit le jeudi 14 décembre 2023. Cet exploit a injecté du code malveillant dans les DApp qui utilisaient Ledger Connect Kit, incitant les utilisateurs EVM DApp à signer des transactions qui vident leur portefeuille. L’exploit a été rapidement repéré et une solution a été mise en œuvre peu de temps après. Entre-temps, un faible nombre d’utilisateurs ont été victimes de l’attaque et ont signé des transactions vidant leur portefeuille.
Timeline
Les heures de la chronologie sont détaillées en utilisant le fuseau horaire heure d’Europe centrale (CET) :
2023-12-14 : Matin : Un ancien employé de Ledger a été victime d’une attaque de phishing sophistiquée qui a permis d’accéder à son compte NPMJS, en contournant 2FA, en utilisant le jeton de session de l’individu.
2023/12/14 – 09h49 / 10h44 / 11h37 : L'attaquant a publié sur NPMJS (un gestionnaire de packages pour le code Javascript partagé entre applications), une version malveillante du Ledger Connect Kit (affectant les versions 1.1.5, 1.1.6 et 1.1.7). Le code malveillant utilisait un projet WalletConnect malveillant pour rediriger les actifs vers les portefeuilles des pirates.
2023/12/14 : 1.45hXNUMX : Ledger a été informé de l'attaque en cours grâce à la réaction rapide de différents acteurs de l'écosystème, notamment Blockaid qui a contacté l'équipe de Ledger et partagé des mises à jour sur X.
2023/12/14 : 2.18hXNUMX : Les équipes technologiques et de sécurité de Ledger ont été alertées de l’attaque et une version authentique du correctif Ledger Connect Kit a été déployée par les équipes de Ledger dans les 40 minutes suivant la prise de conscience de Ledger. En raison de la nature du CDN (Content Delivery Network) et des mécanismes de mise en cache sur Internet, le fichier malveillant est resté accessible un peu plus longtemps. De la compromission du NPMJS à la résolution complète, environ 5 heures se sont écoulées. Cette disponibilité étendue du code malveillant est le résultat du temps nécessaire au CDN pour propager et mettre à jour ses caches à l'échelle mondiale avec la dernière version authentique du fichier. Malgré la présence du fichier pendant cinq heures, nous estimons, d’après notre enquête, que la fenêtre pendant laquelle les actifs des utilisateurs ont été activement drainés s’est limitée à moins de deux heures au total.
Ledger s'est rapidement coordonné avec notre partenaire WalletConnect, qui a désactivé l'instance malveillante de WalletConnect utilisée pour drainer les actifs des utilisateurs.
2023/12/14 : 2.55hXNUMX Sur notre coordination, Tether a gelé l'USDT du ou des attaquants (cf. TX).
Analyse des causes profondes, résultats et mesures préventives
Comportementale
Ledger Kit de connexion est une bibliothèque open source Java Script permettant aux développeurs de connecter leurs DApp au matériel Ledger. Il peut être intégré à l'aide du Chargeur de kit de connexion composant qui permet à un DApp de charger le Connect-Kit au moment de l'exécution à partir d'un CDN. Cela permet aux développeurs DApp de toujours disposer de la version la plus récente du Kit de connexion sans avoir besoin de mettre à jour manuellement les versions des packages et de publier de nouvelles versions. Le CDN utilisé par Ledger pour la distribution est NPMJS. La plupart des DApps ont intégré le Kit de connexion en utilisant le chargeur Connect-Kit mentionné.
Dans l’exploit Ledger Connect Kit, l’attaquant n’a à aucun moment eu accès à l’infrastructure Ledger, au référentiel de code Ledger ou aux DApps eux-mêmes. L'attaquant a pu insérer un package de code malveillant dans le CDN à la place du Connect-Kit lui-même. Ce code Connect-Kit malveillant a ensuite été chargé dynamiquement par les DApps qui intègrent déjà le Connect-Kit-loader.
L'exploit Ledger Connect Kit met en évidence les risques auxquels Ledger et l'industrie sont collectivement confrontés pour protéger les utilisateurs, et rappelle également que collectivement, nous devons continuer à relever la barre en matière de sécurité autour des DApps où les utilisateurs s'engageront dans la signature basée sur le navigateur. C’est le service de Ledger qui a été exploité cette fois-ci, mais à l’avenir cela pourrait arriver à un autre service ou à une autre bibliothèque.
Cause première
Afin de pouvoir diffuser le package de code malveillant sur NPMJS, l’attaquant a hameçonné un ancien employé pour exploiter l’accès de l’individu à NPMJS. L’accès de l’ancien employé aux systèmes de Ledger (y compris Github, les services basés sur SSO, tous les outils internes de Ledger et les outils externes) a été correctement révoqué, mais malheureusement l’accès des anciens employés à NPMJS n’a pas été correctement révoqué.
Nous pouvons confirmer qu’il s’agit d’un malheureux incident isolé. Les accès à l'infrastructure Ledger par les employés de Ledger sont automatiquement révoqués lors du départ des employés. Cependant, en raison de la façon dont les services et outils technologiques actuels fonctionnent actuellement à l'échelle mondiale, nous ne pouvons pas révoquer automatiquement l'accès à certains outils externes (NPMJS inclus), et ceux-ci doivent être traités manuellement avec un liste de contrôle de départ des employés pour chaque individu. Ledger dispose d'une procédure d'externalisation existante et régulièrement mise à jour dans laquelle nous supprimons les employés qui partent de tous les outils externes. Dans ce cas individuel, l'accès n'a pas été révoqué manuellement sur le NPMJS, ce que nous regrettons et sommes en cours d'audit avec un partenaire tiers externe.
Il s’agissait d’une attaque sophistiquée menée par l’attaquant. Bien qu’il ait appliqué une authentification à deux facteurs (2FA) sur le compte ciblé par NPMJS, ce qui dissuaderait normalement de nombreuses tentatives, l’attaquant a contourné cette mesure de sécurité en exploitant une clé API associée au compte de l’ancien employé.
Cette attaque spécifique a permis à l'attaquant de télécharger une nouvelle version malveillante du Ledger Connect Kit qui contenait ce que l'on appelle le malware Angel Drainer. Angel Drainer est un malware en tant que service spécialement conçu pour créer des transactions malveillantes qui drainent les portefeuilles une fois signées. Il s’agit d’une infrastructure complète spécialisée sur les chaînes EVM qui déploie des contrats intelligents à la demande et élabore des transactions sur mesure afin de maximiser les dégâts.
Malheureusement, NPMJS.com ne permet pas la vérification d'autorisations multiples ou de signatures pour un édition. Nous travaillons à l’ajout de mécanismes ad hoc appliquant des contrôles supplémentaires au stade du déploiement.
Résultats
Il s’agissait d’une attaque bien préparée exécutée par des attaquants expérimentés. La technique de phishing mise en œuvre ne s’est pas concentrée sur les identifiants, comme c’est le cas dans la plupart des attaques Front-End affectant l’écosystème, mais l’attaquant a plutôt travaillé directement sur le jeton de session.
Le malware utilisé était Angel Drainer, et l'équipe de sécurité de Ledger a constaté au cours des trois derniers mois une augmentation des activités criminelles utilisant ce malware (veuillez vous référer à ce document publié). Rapport de blocage). On peut également constater en chaîne que les fonds volés sont partagés : 85 % pour l'exploiteur et 15 % pour Angel Drainer, qui pourrait être considéré comme un malware as a service.
Cet Angel Drainer incite les utilisateurs à signer différents types de transactions en fonction du type d'actif qu'il cible actuellement. Pour les jetons ERC20 et NFT, il demande aux utilisateurs de signer approbation ainsi que le permettre messages. Pour les jetons natifs, le draineur demande à l'utilisateur de signer soit une fausse transaction de « réclamation » où le réclamer La méthode balaie simplement les fonds, ou de simples transferts de jetons qui peuvent ensuite être balayés en déployant un contrat intelligent à l'adresse correspondante.
C'est pourquoi nous continuons d'encourager Clear Signing en tant qu'industrie, afin que les utilisateurs puissent vérifier ce qu'ils voient sur un écran fiable sur leur périphérique matériel Ledger.
Des mesures correctives
Les équipes de sécurité et de technologie de Ledger, y compris l'équipe de direction de Ledger, examinent et auditent actuellement tous nos contrôles d'accès sur les outils et systèmes internes et externes de Ledger que nous utilisons.
Ledger renforcera ses politiques en matière de révision du code, de déploiement, de distribution et de contrôle d'accès, notamment en ajoutant tous les outils externes à nos contrôles de maintenance et de départ. Nous continuerons à généraliser la signature de code lorsque cela sera pertinent. De plus, nous effectuons des audits internes récurrents pour nous assurer que cela est correctement mis en œuvre.
Ledger organise déjà des sessions de formation à la sécurité, notamment au phishing. Le programme de formation à la sécurité interne sera également renforcé début 2024 pour tous les collaborateurs de leurs services respectifs. Ledger organise déjà régulièrement des évaluations de sécurité par des tiers et continuera à donner la priorité à ces évaluations.
Début 2024, un audit tiers spécifique sera réalisé, axé sur le contrôle d'accès, la promotion et la distribution des codes.
De plus, nous renforcerons nos systèmes de surveillance et d’alerte de nos infrastructures pour pouvoir détecter et réagir encore plus rapidement aux futurs incidents.
Enfin, nous allons redoubler d'efforts pour empêcher la signature aveugle, en la supprimant comme option pour les utilisateurs de Ledger afin de garantir des pratiques de sécurité maximales, et informer les utilisateurs sur l'impact potentiel de la signature de transactions sans affichage sécurisé ni compréhension de ce qu'ils signent en n'utilisant pas. Signature claire.
Nous remercions encore nos partenaires de l'écosystème pour avoir travaillé rapidement avec les équipes de Ledger pour identifier et résoudre l'exploit.
- Contenu propulsé par le référencement et distribution de relations publiques. Soyez amplifié aujourd'hui.
- PlatoData.Network Ai générative verticale. Autonomisez-vous. Accéder ici.
- PlatoAiStream. Intelligence Web3. Connaissance Amplifiée. Accéder ici.
- PlatonESG. Carbone, Technologie propre, Énergie, Environnement, Solaire, La gestion des déchets. Accéder ici.
- PlatoHealth. Veille biotechnologique et essais cliniques. Accéder ici.
- La source: https://www.ledger.com/blog/security-incident-report
- :possède
- :est
- :ne pas
- :où
- 09
- 1
- 10
- 11
- 15%
- 2023
- 2024
- 26
- 2FA
- 40
- 51
- 53
- 7
- a
- Capable
- accès
- accessible
- Compte
- activement
- d'activités
- acteurs
- Ad
- ajoutant
- ajout
- En outre
- propos
- affectant
- Après
- encore
- Tous
- permettre
- Permettre
- permet
- déjà
- aussi
- toujours
- an
- selon une analyse de l’Université de Princeton
- ainsi que le
- Angel
- Une autre
- tous
- api
- d'environ
- applications
- SONT
- autour
- AS
- évaluations
- atout
- Outils
- associé
- At
- attaquer
- Attaques
- Tentatives
- audit
- audit
- audits
- Authentification
- automatiquement
- disponibilité
- conscients
- barre
- basé
- BE
- devenir
- va
- jusqu'à XNUMX fois
- aveugle
- brièvement
- construit
- mais
- by
- CAN
- ne peut pas
- maisons
- Causes
- central
- certaines
- Chaînes
- Contrôles
- clair
- code
- Examen du code
- collectivement
- vient
- complet
- composant
- menée
- conduite
- Confirmer
- NOUS CONTACTER
- contenu
- contenu
- continuer
- contrat
- contrats
- des bactéries
- contrôles
- coordonné
- coordination
- Correspondant
- pourriez
- élaborer
- Lettres de créance
- Criminel
- Courant
- Lecture
- des dommages
- dapp
- Développeurs DApp
- DApps
- Décembre
- page de livraison.
- Demande
- départements
- Selon
- déployé
- déployer
- déploiement
- déploie
- un
- Malgré
- détaillé
- détecter
- détecté
- mobiles
- dispositif
- DID
- différent
- directement
- handicapé
- Commande
- distribution
- double
- down
- vidanger
- drainé
- deux
- pendant
- dynamiquement
- chacun
- "Early Bird"
- risque numérique
- éduquer
- non plus
- Employés
- employés
- activé
- encourager
- l'application
- s'engager
- assurer
- ERC20
- estimation
- Ether (ETH)
- du
- Pourtant, la
- EVM
- réalisé
- exécutif
- existant
- expérimenté
- Exploiter
- Exploités
- prolongé
- externe
- Visage
- faux
- plus rapide
- Déposez votre dernière attestation
- résultats
- cinq
- Fixer
- Focus
- concentré
- Pour
- Ancien
- De
- fonds
- fonds volés
- plus
- avenir
- gagné
- véritable
- GitHub
- À l'échelle mondiale
- arriver
- Matériel
- périphérique matériel
- Vous avez
- ayant
- Faits saillants
- heure
- HEURES
- Comment
- Cependant
- http
- HTTPS
- identifier
- Impact
- mis en œuvre
- in
- incident
- incidents
- inclus
- Y compris
- Améliore
- individuel
- industrie
- Infrastructure
- à l'intérieur
- instance
- plutôt ;
- intégrer
- des services
- interne
- Internet
- développement
- enquête
- isolé
- IT
- SES
- lui-même
- Java
- JavaScript
- ACTIVITES
- kit
- plus tard
- Nouveautés
- Ledger
- moins
- Levier
- Bibliothèque
- peu
- charge
- plus long
- Faible
- LES PLANTES
- facile
- a prendre une
- malware
- manager
- manuellement
- de nombreuses
- largeur maximale
- Maximisez
- entre-temps
- mesurer
- mécanismes
- mentionné
- messages
- minutes
- Stack monitoring
- mois
- matin
- (en fait, presque toutes)
- must
- indigène
- Nature
- Besoin
- réseau et
- Nouveauté
- NFT
- jetons nft
- normalement
- of
- on
- Sur chaîne
- en cours
- ouvert
- open source
- fonctionner
- Option
- or
- de commander
- organise
- nos
- ande
- paquet
- les partenaires
- partenaires,
- fête
- passé
- passé
- phishing
- phishing attaque
- Place
- Platon
- Intelligence des données Platon
- PlatonDonnées
- veuillez cliquer
- pm
- politiques
- défaillances
- pratiques
- préparé
- présence
- prévention
- Prioriser
- procédure
- Programme
- Projet
- promotion
- correctement
- protéger
- publié
- Push
- vite.
- augmenter
- atteint
- Réagir
- réaction
- récent
- récurrent
- reportez-vous
- visée
- regretter
- Standard
- régulièrement
- renforcer
- libérer
- pertinent
- resté
- rappel
- supprimez
- enlever
- rapport
- dépôt
- demandes
- Résolution
- résoudre
- ceux
- résultat
- Avis
- examen
- risques
- s
- scénario
- sécurisé
- sécurité
- sur le lien
- vu
- service
- Services
- Session
- brainstorming
- commun
- signer
- Signature
- signé
- signature
- étapes
- simplement
- smart
- contrat intelligent
- Contrats intelligents
- So
- sophistiqué
- Identifier
- spécialisé
- groupe de neurones
- spécifiquement
- scission
- Étape
- Commencer
- volé
- sûr
- rapidement
- Système
- tâches
- des campagnes marketing ciblées,
- ciblage
- équipe
- équipes
- technique
- Technologie
- Tether
- que
- merci
- à
- qui
- La
- El futuro
- leur
- se
- puis
- Ces
- l'ont
- Troisièmement
- this
- trois
- Jeudi
- fiable
- à
- jeton
- Tokens
- les outils
- Total
- Formation
- transaction
- Transactions
- transferts
- confiance
- deux
- type
- types
- compréhension
- malheureux
- malheureusement
- Mises à jour
- Actualités
- USDT
- utilisé
- d'utiliser
- Utilisateur
- utilisateurs
- en utilisant
- extrême
- Vérification
- vérifier
- version
- Victime
- le volume
- Wallet
- Portefeuilles
- était
- we
- WELL
- ont été
- Quoi
- Qu’est ce qu'
- quand
- qui
- WHO
- why
- sera
- fenêtre
- comprenant
- dans les
- sans
- travaillé
- de travail
- pourra
- X
- zéphyrnet