Zilliqa a publié un rapport d'analyse cette semaine attribuant le vol de 683 130 969,66 ZIL à un bug dans son application Ledger héritée qui a rejeté huit octets d'entropie lors de la génération de signatures. Ce défaut a forcé les 64 bits supérieurs de chaque nonce affecté à zéro, permettant aux attaquants de reconstruire des clés privées à partir de seulement quatre signatures déjà publiées. La divulgation quantifie un incident qui a débuté par un premier vol le 4 mars et s'est poursuivi jusqu'au 20 juillet, lorsque Zilliqa a désactivé les transactions héritées environ trois heures et demie après le dernier mouvement en chaîne de l'attaquant. Le rapport sur les portefeuilles froids anormaux de KuCoin du 19 juillet a mis en lumière l'incident actif auprès de l'équipe.
Pourquoi c'est important
La longévité du bug est l'histoire. Zilliqa a écrit l'implémentation affectée originale ; le défaut a ensuite survécu à des années de maintenance sous Ledger sans que l'une ou l'autre des parties ne le découvre. Cette lacune est importante pour tout token s'appuyant encore sur une application Ledger pour la signature native : un tampon de signature biaisé ne se manifeste pas dans les audits de sécurité standard comme le fait un générateur de nombres aléatoires défectueux, et le seuil d'exposition de quatre signatures signifie que la vulnérabilité peut être exploitée discrètement contre des portefeuilles longtemps inactifs avant que quiconque ne s'en aperçoive.
Impact sur le marché
Zilliqa a divisé l'incident en deux chiffres qui ne se chevauchent pas. Soixante-six transactions ont drainé 51 comptes, tandis que 6 772 comptes ont vu leurs clés privées exposées. La récupération passe par la migration vers Zilliqa EVM, avec la chaîne héritée retirée, et aucune date de lancement de l'outil de migration n'a été annoncée en attendant un audit de sécurité externe. L'image combinée est le pire des deux mondes pour les détenteurs affectés : une exposition connue sur des milliers de portefeuilles, une application corrigée qui ne peut pas aider les clés déjà compromises, et une sortie EVM qui n'est pas encore active.
Questions fréquemment posées
-
Comment le bug de Ledger de Zilliqa a-t-il exposé les clés privées ?
L'application Ledger héritée de Zilliqa a généré 40 octets aléatoires mais a copié les 32 mauvais dans son tampon de signature, conservant huit octets de remplissage à zéro et rejetant huit octets d'entropie. Ce biais a forcé les 64 bits supérieurs de chaque nonce affecté à zéro, permettant aux attaquants de…
-
Combien de ZIL ont été volés lors du piratage de Ledger de Zilliqa ?
Le rapport d'analyse quantifie le vol à 683 130 969,66 ZIL à travers 66 transactions réussies durant la fenêtre d'attaque qui ont drainé 51 comptes.
-
Combien de portefeuilles ont été affectés par le bug de Ledger de Zilliqa ?
Zilliqa distingue deux groupes : 51 comptes ont été drainés pendant l'attaque, tandis que 6 772 comptes ont vu leurs clés privées exposées. Le total des comptes exposés est un minimum ; des comptes compromis supplémentaires peuvent avoir produit des transactions de vol non encore prouvées.
-
Pourquoi Zilliqa ne peut-elle pas corriger le bug de Ledger pour protéger les utilisateurs affectés ?
Le défaut de l'application a été corrigé, mais les signatures déjà publiées ne peuvent pas être retirées de la blockchain. Les attaquants peuvent toujours reconstruire des clés privées à partir de signatures historiques, donc la correction ne protège que les nouvelles clés à l'avenir.
-
Quel est le plan de récupération de Zilliqa pour les détenteurs affectés ?
Zilliqa migre chaque détenteur hérité vers Zilliqa EVM et retire la chaîne héritée. La date de lancement de l'outil de migration n'a pas été annoncée car le calendrier dépend d'un audit de sécurité externe, de l'examen de ses conclusions et de toute remédiation nécessaire.