链捕手消息,DeFi量化对冲基金ForceDAO项目的FORCE代币被大量增发,经慢雾安全团队分析发现:
在用户进行deposit操纵时,ForceDAO会为用户铸造xFORCE代币,并通过FORCE代币合约的transferFrom函数将FORCE代币转入ForceProfitSharing合约中。但FORCE代币合约的transferFrom函数使用了if-else逻辑来检查用户的授权额度,当用户的授权额度不足时transferFrom函数返回false,而ForceProfitSharing合约并未对其返回值进行检查。导致了deposit的逻辑正常执行,xFORCE代币被顺利铸造给用户,但由于transferFrom函数执行失败FORCE代币并未被真正充值进ForceProfitSharing合约中。最终造成FORCE代币被非预期的大量铸造的问题。
此漏洞发生的主要原因在于FORCE代币的transferFrom函数使用了`假充值`写法,但外部合约在对其进行调用时并未严格的判断其返回值,最终导致这一惨剧的发生。慢雾安全团队建议在对接此类写法的代币时使用require对其返回值进行检查,以避免此问题的发生。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。