Poolz subit une attaque par débordement arithmétique, perte d'environ 665K dollars
Récemment, plusieurs projets Poolz sur différents réseaux blockchain ont été victimes de piratages, entraînant le vol d'un grand nombre de jetons d'une valeur totale d'environ 665 000 dollars. L'attaque a eu lieu le 15 mars 2023, impliquant plusieurs réseaux tels qu'Ethereum, BNB Smart Chain et Polygon.
L'attaquant a exploité une vulnérabilité de débordement arithmétique dans le contrat Poolz. En manipulant habilement la fonction CreateMassPools, l'attaquant a pu créer des pools avec une liquidité initiale anormalement élevée, alors qu'il n'avait réellement besoin de transférer qu'une très petite quantité de jetons. Cette incohérence a finalement permis à l'attaquant d'extraire des jetons bien supérieurs à la quantité qu'il avait réellement déposée.
Plus précisément, l'attaquant a passé un tableau lors de l'appel de la fonction CreateMassPools, qui a entraîné un dépassement de uint256. Bien que le nombre de jetons réellement transférés soit faible, en raison du dépassement, le système a enregistré par erreur une valeur de liquidité initiale énorme. Ensuite, l'attaquant a retiré cette liquidité "fausse" par le biais de la fonction withdraw.
Le principal problème révélé par cet incident est le débordement d'entier. Pour éviter des vulnérabilités similaires, les développeurs devraient envisager d'utiliser une version plus récente du compilateur Solidity, qui effectue automatiquement des vérifications de débordement. Pour les projets utilisant des versions plus anciennes de Solidity, la bibliothèque SafeMath d'OpenZeppelin peut être utilisée pour prévenir les risques de débordement d'entier.
Cette attaque souligne à nouveau l'importance d'effectuer des audits de sécurité rigoureux dans le développement de contrats intelligents, en particulier lorsqu'il s'agit de fonctionnalités clés traitant des fonds des utilisateurs. Cela rappelle également aux équipes de projet et aux utilisateurs de rester toujours vigilants et de surveiller de près les menaces potentielles à la sécurité.
Voir l'original
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.
11 J'aime
Récompense
11
4
Partager
Commentaire
0/400
FalseProfitProphet
· 07-08 03:05
Encore une chute à zéro pour un petit projet~
Voir l'originalRépondre0
WhaleWatcher
· 07-05 08:14
L'audit est-il une simple illusion ?
Voir l'originalRépondre0
DAOplomacy
· 07-05 08:03
sans doute un autre cas de primitives de sécurité sous-optimales
Poolz victime d'une attaque par débordement arithmétique, pertes de 665 K USD sur plusieurs chaînes.
Poolz subit une attaque par débordement arithmétique, perte d'environ 665K dollars
Récemment, plusieurs projets Poolz sur différents réseaux blockchain ont été victimes de piratages, entraînant le vol d'un grand nombre de jetons d'une valeur totale d'environ 665 000 dollars. L'attaque a eu lieu le 15 mars 2023, impliquant plusieurs réseaux tels qu'Ethereum, BNB Smart Chain et Polygon.
L'attaquant a exploité une vulnérabilité de débordement arithmétique dans le contrat Poolz. En manipulant habilement la fonction CreateMassPools, l'attaquant a pu créer des pools avec une liquidité initiale anormalement élevée, alors qu'il n'avait réellement besoin de transférer qu'une très petite quantité de jetons. Cette incohérence a finalement permis à l'attaquant d'extraire des jetons bien supérieurs à la quantité qu'il avait réellement déposée.
Plus précisément, l'attaquant a passé un tableau lors de l'appel de la fonction CreateMassPools, qui a entraîné un dépassement de uint256. Bien que le nombre de jetons réellement transférés soit faible, en raison du dépassement, le système a enregistré par erreur une valeur de liquidité initiale énorme. Ensuite, l'attaquant a retiré cette liquidité "fausse" par le biais de la fonction withdraw.
Le principal problème révélé par cet incident est le débordement d'entier. Pour éviter des vulnérabilités similaires, les développeurs devraient envisager d'utiliser une version plus récente du compilateur Solidity, qui effectue automatiquement des vérifications de débordement. Pour les projets utilisant des versions plus anciennes de Solidity, la bibliothèque SafeMath d'OpenZeppelin peut être utilisée pour prévenir les risques de débordement d'entier.
Cette attaque souligne à nouveau l'importance d'effectuer des audits de sécurité rigoureux dans le développement de contrats intelligents, en particulier lorsqu'il s'agit de fonctionnalités clés traitant des fonds des utilisateurs. Cela rappelle également aux équipes de projet et aux utilisateurs de rester toujours vigilants et de surveiller de près les menaces potentielles à la sécurité.