Contrat DBXen exploité, perte estimée à 150 000 $

iconChaincatcher
Partager
Share IconShare IconShare IconShare IconShare IconShare IconCopy
AI summary iconRésumé

expand icon
Le contrat de DBXen a été exploité aujourd'hui, avec des pertes estimées à 150 000 $, causées par un désaccord dans l'identification de l'expéditeur dans les méta-transactions ERC2771. La fonction burnBatch() utilisait _msgSender() dans gasWrapper(), tandis que onTokenBurned() utilisait msg.sender, entraînant un suivi incorrect des utilisateurs. Cela a provoqué des erreurs dans les calculs de récompenses et de frais dans claimFees() et claimRewards(). La mise à jour ETH révèle des risques persistants liés aux contrats intelligents. La mise à jour BTC souligne la nécessité d'audits de sécurité continus.

ChainCatcher rapporte, selon la surveillance de BlockSec, que le contrat DBXen a été attaqué ce matin, avec une perte estimée à environ 150 000 dollars. La cause fondamentale réside dans une incohérence d'identité de l'expéditeur dans le cadre des métatransactions ERC2771. Dans la fonction burnBatch(), le modificateur gasWrapper() utilise _msgSender() (l'utilisateur réel) pour mettre à jour l'état, tandis que la fonction de rappel onTokenBurned() utilise msg.sender (le relais). Cela entraîne une mise à jour de accCycleBatchesBurned pour l'utilisateur, mais une mise à jour erronée de lastActiveCycle pour le relais. Cette incohérence compromet la logique des fonctions claimFees() et claimRewards(). Lorsque updateStats() est exécuté pour l'utilisateur, le contrat suppose à tort qu'il existe des lots détruits non traités, car accCycleBatchesBurned a été mis à jour tandis que lastActiveCycle ne l'a pas été, ce qui conduit à un calcul erroné des récompenses et des frais, permettant à l'attaquant de retirer des fonds excédentaires pour en tirer profit.

Clause de non-responsabilité : les informations sur cette page peuvent avoir été obtenues auprès de tiers et ne reflètent pas nécessairement les points de vue ou opinions de KuCoin. Ce contenu est fourni à titre informatif uniquement, sans aucune représentation ou garantie d’aucune sorte, et ne doit pas être interprété comme un conseil en investissement. KuCoin ne sera pas responsable des erreurs ou omissions, ni des résultats résultant de l’utilisation de ces informations. Les investissements dans les actifs numériques peuvent être risqués. Veuillez évaluer soigneusement les risques d’un produit et votre tolérance au risque en fonction de votre propre situation financière. Pour plus d’informations, veuillez consulter nos conditions d’utilisation et divulgation des risques.