ChainCatcherの情報によると、BlockSecの監視により、DBXenコントラクトが本日午前中に攻撃を受け、約15万ドルの損失が発生したと推定されています。根本原因は、ERC2771メタトランザクションにおける送信者IDの不一致です。burnBatch()関数内で、gasWrapper()デコレータは_msgSender()(実際のユーザー)を使用して状態を更新していますが、コールバック関数onTokenBurned()はmsg.sender(フォワーダー)を使用しています。これにより、accCycleBatchesBurnedはユーザー向けに更新されますが、lastActiveCycleは誤ってフォワーダーに更新されます。 この不整合により、claimFees()およびclaimRewards()のロジックが破壊されます。ユーザーに対してupdateStats()が実行される際、コントラクトはaccCycleBatchesBurnedが更新されている一方でlastActiveCycleが更新されていないため、処理されていないバッチが存在すると誤認識し、報酬と手数料を誤って計算します。その結果、攻撃者は過剰な資金を引き出せるようになり、利益を得ることができました。
DBXen契約が悪用され、損失は15万ドルと推定される
Chaincatcher共有






DBXenのスマートコントラクトが本日攻撃され、損失は15万ドルと推定されています。この問題は、ERC2771メタトランザクションにおける送信者識別の不一致に起因しました。burnBatch()関数はgasWrapper()で_msgSender()を使用していた一方、onTokenBurned()はmsg.senderを使用していたため、ユーザーの追跡が誤りました。これにより、claimFees()およびclaimRewards()での報酬と手数料の計算にエラーが発生しました。ETHの更新では、スマートコントラクトの継続的なリスクが示されています。BTCの更新では、継続的なセキュリティ監査の必要性が強調されています。
出典:原文を表示
免責事項: 本ページの情報はサードパーティからのものであり、必ずしもKuCoinの見解や意見を反映しているわけではありません。この内容は一般的な情報提供のみを目的として提供されており、いかなる種類の表明や保証もなく、金融または投資助言として解釈されるものでもありません。KuCoinは誤記や脱落、またはこの情報の使用に起因するいかなる結果に対しても責任を負いません。
デジタル資産への投資にはリスクが伴います。商品のリスクとリスク許容度をご自身の財務状況に基づいて慎重に評価してください。詳しくは利用規約およびリスク開示を参照してください。