搜索

损失约 216万美元,黑客如何凭空提取代币?——GYM Network被攻击事件分析

2022-06-09 14:56:44
6825 0 0

  2022年6月8日,成都链安链必应-区块链安全态势感知平台舆情监测显示,GYM Network的GymSinglePool合约遭受黑客攻击,黑客获利约 216万美元。成都链安技术团队第一时间对事件进行了分析,结果如下。



#1 项目相关信息


据悉,GYM NETWORK是一个DeFi聚合投资系统,本次是其GymSinglePool合约遭受黑客攻击。


#2 事件相关信息


攻击交易:

https://bscscan.com/tx/0x8432c1c6613995eeea8a3ae2cfeb9577913db6b7b35dbe26a8c56c02066096e6


攻击者地址:

0xb2c035eee03b821cbe78644e5da8b8eaa711d2e5


攻击合约:

0x7cbfd7bccd0a4a377ec6f6e44857efe42c91b6ea

0xa796406635272448fa30089cd4d71dadae01c169

0xd36Ea4756cf157c1A57BFFC8d3F064a1e0EFBE9f

0x8aedf4e03f70d0680b760a63c1b4acb0eb437874

0x2cdb504CEFE087e00F13F9283F2FcbbdE7C2A28D


被攻击合约:

0xA8987285E100A8b557F06A7889F79E0064b359f2

0x0288fba0bf19072d30490a0f3c81cd9b0634258a


#3 攻击流程


第一步,攻击者调用GymSinglePool合约的depositFromOtherContract函数恶意抵押了8,000,000 GYM代币。





第二步,由于depositFromOtherContract函数中的_autoDeposit函数并没有对抵押的代币进行转账处理,所以攻击者并没有花费任何代币,就完成了记账。





第三步,攻击者调用withdraw函数凭空提取记账的抵押代币,完成了攻击。



#4 漏洞分析


本次攻击主要利用了depositFromOtherContract函数仅计入了抵押者的抵押账本,并没有对抵押代币进行转账检查的bug,并且攻击者可以调用depositFromOtherContract函数进行恶意抵押,最后凭空提取GYM代币。


#5 资金追踪


截止发文时,攻击者攻击获利的2000个BNB转进了混币工具Tornado Cash,3000BNB存放在攻击账户中,价值70W美元的ETH通过跨链桥转入到以太坊

0xb2c035eee03b821cbe78644e5da8b8eaa711d2e5 地址中。


#6 总结


针对本次事件,成都链安技术团队建议:


项目方在用户的代币抵押记账之前进行转账检查。此外建议项目上线前选择专业的安全审计公司进行全面的安全审计,规避安全风险。


热门回帖