自动做市商协议MonoXFinance遭到闪电贷攻击,安全机构BlockSec分析了其中一笔黑客交易,这笔交易哈希为0x9f14d093a2349de08f02fc0fb018dadb449351d0cdb7d0738ff69cc6fef5f299,转出地址为0xecbe385f78041895c311070f344b55bfaa953258,转入地址为0xf079d7911c13369e7fd85607970036d2883afcfd。
BlockSec发现,这次攻击是因为MonoX合约中tokenIn和tokenOut使用的token是一样的,这也是该合约的一大漏洞。具体来说,在`swapTokenForExactToken`函数中,攻击者可以使用与tokenIn和tokenOut相同的代币。计算新价格之后,`Monoswap`合约再调用`_updateTokenInfo`函数更新价格。但是,由于tokenIn和tokenOut是同一个token,tokenOut更新之后会覆盖tokenIn的价格更新,继而导致这个token的价格暴涨。在这种情况下,MooX代币价格会变得非常高,此时攻击者便利用这一漏洞从流动性池中兑换所有的其他代币。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。