Récemment, un contrat intelligent d'un projet de collection numérique bien connu a été découvert avec deux graves vulnérabilités, suscitant une large attention dans l'industrie. L'équipe de sécurité a identifié ces risques potentiels lors de l'analyse du contrat du projet.
Le premier problème est lié au mécanisme de remboursement. La fonction de remboursement dans le contrat utilise une méthode de boucle pour rembourser les utilisateurs, mais cette conception présente un défaut majeur. Si une adresse recevant un remboursement est un contrat malveillant, elle peut refuser de recevoir et entraîner un échec de la transaction, affectant ainsi le processus de remboursement de tous les autres utilisateurs. Heureusement, cette vulnérabilité n'a pas été exploitée en pratique.
Pour ce type de situation, les experts en sécurité recommandent aux promoteurs de projets de prendre les mesures suivantes pour assurer la sécurité des remboursements :
La restriction stipule que seuls les comptes d'utilisateurs ordinaires peuvent participer au projet.
Utiliser des jetons ERC20 tels que WETH plutôt que des actifs natifs
Concevoir un mécanisme permettant aux utilisateurs de demander activement un remboursement, afin d'éviter les remboursements en masse.
Le deuxième bogue est dû à une erreur logique dans le code. Dans la fonction d'extraction des fonds du projet, il existe une instruction de condition qui aurait dû comparer deux variables spécifiques, mais a incorrectement utilisé une autre variable pour la comparaison. Cela a conduit à ce que la condition ne puisse jamais être satisfaite, empêchant l'équipe du projet d'extraire les actifs du contrat. On estime qu'actuellement plus de 34 millions de dollars d'actifs sont définitivement verrouillés dans le contrat.
Cet événement met à nouveau en évidence que même les projets bien connus peuvent présenter des erreurs fondamentales. Il nous rappelle que, durant le processus de développement, des cas de test complets et une conscience de base en matière de sécurité sont indispensables. Bien que dans le domaine de la DeFi, les audits de sécurité soient devenus une pratique courante, dans les projets de collections numériques, cette étape semble encore être négligée. Cette perte massive est directement le résultat de l'absence d'audit de sécurité.
Cet événement devrait servir d'avertissement à l'ensemble de l'industrie, rappelant à tous les participants de prêter attention à la sécurité des smart contracts et de renforcer les processus de révision et de test du code afin d'éviter que des pertes majeures similaires ne se reproduisent.
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
13 J'aime
Récompense
13
4
Partager
Commentaire
0/400
HodlKumamon
· Il y a 3h
Le tir est terminé, la probabilité d'erreur logique pour le retrait des utilisateurs est un échec de cent pour cent.
Voir l'originalRépondre0
shadowy_supercoder
· Il y a 10h
À quoi servent les sociétés d'audit ?
Voir l'originalRépondre0
BlockchainWorker
· 07-20 20:31
smart contracts encore un échec ? J'attends de voir le spectacle.
Une vulnérabilité des smart contracts d'un projet de collection numérique bien connu a entraîné le verrouillage de 34 millions de dollars.
Récemment, un contrat intelligent d'un projet de collection numérique bien connu a été découvert avec deux graves vulnérabilités, suscitant une large attention dans l'industrie. L'équipe de sécurité a identifié ces risques potentiels lors de l'analyse du contrat du projet.
Le premier problème est lié au mécanisme de remboursement. La fonction de remboursement dans le contrat utilise une méthode de boucle pour rembourser les utilisateurs, mais cette conception présente un défaut majeur. Si une adresse recevant un remboursement est un contrat malveillant, elle peut refuser de recevoir et entraîner un échec de la transaction, affectant ainsi le processus de remboursement de tous les autres utilisateurs. Heureusement, cette vulnérabilité n'a pas été exploitée en pratique.
Pour ce type de situation, les experts en sécurité recommandent aux promoteurs de projets de prendre les mesures suivantes pour assurer la sécurité des remboursements :
Le deuxième bogue est dû à une erreur logique dans le code. Dans la fonction d'extraction des fonds du projet, il existe une instruction de condition qui aurait dû comparer deux variables spécifiques, mais a incorrectement utilisé une autre variable pour la comparaison. Cela a conduit à ce que la condition ne puisse jamais être satisfaite, empêchant l'équipe du projet d'extraire les actifs du contrat. On estime qu'actuellement plus de 34 millions de dollars d'actifs sont définitivement verrouillés dans le contrat.
Cet événement met à nouveau en évidence que même les projets bien connus peuvent présenter des erreurs fondamentales. Il nous rappelle que, durant le processus de développement, des cas de test complets et une conscience de base en matière de sécurité sont indispensables. Bien que dans le domaine de la DeFi, les audits de sécurité soient devenus une pratique courante, dans les projets de collections numériques, cette étape semble encore être négligée. Cette perte massive est directement le résultat de l'absence d'audit de sécurité.
Cet événement devrait servir d'avertissement à l'ensemble de l'industrie, rappelant à tous les participants de prêter attention à la sécurité des smart contracts et de renforcer les processus de révision et de test du code afin d'éviter que des pertes majeures similaires ne se reproduisent.