PANews 3月12日消息,根據BlockSec Phalcon監測,DBXen合約今日上午遭遇攻擊,估計損失約15萬美元。根本原因在於ERC2771元交易下發送者身分不一致。在burnBatch()函數中,gasWrapper()修飾器使用_msgSender()(實際使用者)更新狀態,而回呼函數onTokenBurned()則使用msg.sender(轉發器)。這導致accCycleBatchesBurned為使用者記錄,但lastActiveCycle錯誤地為轉發器更新。此不一致性破壞了claimFees()和claimRewards()的邏輯。當為用戶執行updateStats()時,合約錯誤地認為存在未處理的已銷毀批次,因為accCycleBatchesBurned已更新而lastActiveCycle未更新,從而錯誤計算獎勵和費用,使攻擊者能夠提取超額資金獲利。
BlockSec:DBXen合約遭遇攻擊,損失約15萬美元
分享至:
作者:PA一线
本內容只為提供市場資訊,不構成投資建議。
關注PANews官方賬號,一起穿越牛熊

