
PANews 3月12日消息,據BlockSec Phalcon監測,DBXen合約今日上午遭遇攻擊,估計損失約15萬美元。根本原因在於ERC2771元交易下發送者身份不一致。在burnBatch()函數中,gasWrapper()修飾器使用_msgSender()(實際用戶)更新狀態,而回調函數onTokenBurned()使用msg.sender(轉發器)。這導致accCycleBatchesBurned為用戶記錄,但lastActiveCycle錯誤地為轉發器更新。該不一致性破壞了claimFees()和claimRewards()的邏輯。當為用戶運行updateStats()時,合約錯誤地認為存在未處理的已銷毀批次,因為accCycleBatchesBurned已更新而lastActiveCycle未更新,從而錯誤計算獎勵和費用,使攻擊者能夠提取超額資金獲利。
内容來源:PANews
財華網所刊載內容之知識產權為財華網及相關權利人專屬所有或持有。未經許可,禁止進行轉載、摘編、複製及建立鏡像等任何使用。
如有意願轉載,請發郵件至 content@finet.com.hk,獲得書面確認及授權後,方可轉載。