BlockSec:DAO Maker 700万美元被盗事件解析

本文来自BlockSec,Odaily星球日报经授权转载。8月12日,根据DAOMaker电报群用户反馈,该项目疑似遭到黑客攻击,价值700万美元的USDC被黑客提取至未知地址。BlockSec团队经过分析后发现,该事件的起因是私钥泄露或者内部人士所为。攻击过程

根据我们的交易分析系统我们发现,攻击的过程非常简单。攻击交易的hash是:0x26aa86261c834e837f6be93b2d589724ed5ae644bc8f4b8af2207e6bd70828f9涉及到的地址:0x41b856701bb8c24cece2af10651bfafebb57cf49:受害者钱包;0x1c93290202424902a5e708b95f4ba23a3f2f3cee:XXX,攻击者合约;0x0eba461d9829c4e464a68d4857350476cfb6f559:中间人;0x054e71d5f096a0761dba7dbe5cec5e2bf898971c:受害合约创建者。

加密金融服务公司Blofin完成5000万美元B轮融资,KuCoin领投:3月2日消息,加密金融服务公司 Blofin 完成 5000 万美元 B 轮融资,KuCoin 领投,SIG 和经纬创投参投。通过新一轮融资,Blofin 将招募更多的交易、技术、产品、运营、营销和合规人才。当前 Blofin 的全球管理资产(AUM)已达 3 亿美元。2021 年,Blofin 的交易量达到了超过 1000 亿美元。公司将专注于改善交易基础设施,创造新的融资产品和服务,开发和推出其移动应用程序,在多个国家扩张,并在全球获得更多牌照。(newsfilecorp)[2022/3/2 13:31:46]

媒体:EOS母公司Block.one持有超24万枚比特币:据EOS媒体EOSGo表示,EOS母公司Block.One股东Christian Angermayer在2020年9月16日的发布的OMR播客中表示,Block.One持有价值超过25亿美元的比特币。据悉,当时比特币价格约为1.05万美元,这意味着Block.One持有超24万枚比特币。

此前Block.One CEO BrendanBlumer在推特表示,Block.One持有的比特币远超此前宣布的14万枚。[2020/12/31 16:10:27]

攻击者XXX调用受害者钱包合约的函数查询用户余额,然后调用withdrawFromUser将钱转到自己的账户。攻击完成。由于转账的操作是一个特权操作,因此通常需要对调用者的身份做校验。我们通过分析发现,攻击者确实具有相应的权限来将受害者钱包中的余额转出。这里的问题就变成为什么攻击者能具有相应的权限?通过进一步分析我们发现另外一笔交易。这一笔交易将攻击者赋予具有转账的权限。交易trace如下:0x2fba930502d27f9c9a2f2b9337a0149534dda7527029645752b2a6507ca6b0d6。

投资者就EOS ICO对Block.one提起集体诉讼:金色财经报道,EOS ICO的投资者已在美国纽约南区地方法院对Block.one提起了集体诉讼。其首席执行官Brendan Blumer、首席技术官Daniel Larimer、密码学家和前Block.One合伙人Ian Grigg以及前顾问Brock Pierce均被列为被告。原告声称,Block.one向投资者提供了有关EOS的虚假和误导性信息,目的是通过所谓的未经注册的证券销售筹集数十亿美元。根据诉讼,原告Crypto Assets Opportunity Fund LLC和Johnny Hong声称在销售期间购买了价值40亿美元的代币。据悉,几个月前,在其ICO被调查后,Block.one向美国证券交易委员会(SEC)支付了2400万美元的罚款并达成和解。[2020/5/19]

动态 | Sheel Kohli 将加入 Block.one 担任全球首席市场营销和通讯官:据 IMEOS 报道,Block.one 宣布前瑞士信贷总经理兼企业传讯负责人 Sheel Kohli,将加入 Block.one 担任全球首席市场营销和通讯官。Kohli 将在香港工作,作为公司执行委员会成员之一,并向集团总裁 Rob Jesudason 汇报工作。Kohli 加入 Block.one 后将负责公司全球通讯和市场营销活动。在近几个月,Block.one 已经陆陆续续聘请了一些高级管理人员,其中包括来自澳大利亚联邦银行的总裁 Rob Jesudason; 来自花旗银行的首席人事官 James Mendes; 来自 Jefferies 的 EOS 风险投资首席执行官 Mike Alexander; 来自 Clifford Chance 的首席法律官 Alex Erasmus。[2018/9/11]

0x0eba461d9829c4e464a68d4857350476cfb6f559调用受害者合约的grantRole函数将攻击者0x1c93赋予具有转账的权限。但是能调用grantRole赋予其他账户权限,那么0x0eba4必须具有admin的权限。那么他的admin权限是谁授予的呢?继续追踪,我们发现它的admin权限是由另外一笔交易完成的:0x41b856701bb8c24cece2af10651bfafebb57cf49。

0x054e71d5f096a0761dba7dbe5cec5e2bf898971c账户将0x0eba461d9829c4e464a68d4857350476cfb6f559账户设置成受害合约的admin。然而我们发现,受害合约是由0x054e71d5f096a0761dba7dbe5cec5e2bf898971c创建的。

总结一下,整个的流程是:

那问题就来了,为什么部署受害者合约的0x054e最后间接赋予了攻击者能转账的特殊权限呢?这里有两个可能性。第一个0x054e是内鬼,第二个就是私钥泄露。其他

另外一个有趣的点就是攻击者的合约是开源的,代码简单易懂,可以作为学习合约开发的启蒙教程。

但是受害者的合约代码是不开源的。这有点匪夷所思。不开源的钱包也有人敢用?最后

最近区块链安全接连出现大的安全事件,包括PopsicleFinance双花攻击分析和PolyNetwork攻击关键步骤深度解析,损失在几百万美金到数亿美金之间。项目方如何提高安全意识,保护好代码安全和资产安全,正是BlockSec团队希望和社区一起能解决的问题。只有把安全做好,DeFi的生态才能更健康有序发展。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

银河链

[0:15ms0-1:945ms