EOSBET再遭攻击,损失额超500万元

EOSBET再遭攻击,损失额超500万元

EOSBet是一个基于EOS的博彩类游戏项目,上线的DICE(骰子)游戏一直霸占dappradar榜前三的位置,看日活和交易量可以算是EOS公链上最成功的DApp游戏项目了。

然而,EOSBet上次遭受所谓的“假EOS”攻击被盗,损失了5万EOS,这次又爆出假EOS转账通知,被卷走近14万EOS。

一个月前发生的“假EOS“攻击是攻击者在自己的智能合约里创建一个假EOS代币,并给EOSBet账号转账假的eos代币,并主动通知EOSBet智能合约,这样系统就会调用EOSBet合约的transfer函数,EOSBet合约没有检测通知来源,误当做真的EOS转账,于是仍按照真的开奖流程开奖,由于假EOS不值钱,而Eosbet合约开的奖是真EOS,所以攻击者假钱换真钱,无成本薅羊毛。

这次是利用EOS合约的设计规则,EOS的合约可以用 require_recipient 触发调用其他合约。攻击者通过eosio.token给自己的智能合约账号(eosbethack)转EOS, eosio.token合约会通过require_receipt代码调用攻击者的智能合约eosbethack,由于攻击者在eosbethack通过require_receipt主动调用eosbet, 导致eosbet的transfer函数被调用。

不过好在被盗EOS转进Bitfinex,已被交易所锁定。


分享到:


相關文章: