DAO:权利的游戏 :DAO Maker 被黑分析

2021年08月12日,据慢雾区消息,加密孵化机构DAOMaker疑似遭受黑客攻击,导致合约大量USDC被转出。慢雾安全团队第一时间介入分析,并将分析结果分享如下。??

攻击对象

在本次攻击中,攻击者部署并开源了一个攻击合约(0x1c)用于快速批量的从DAOMaker受害合约(0x41)中窃取资金。

攻击者地址1:

0xd8428836ed2a36bd67cd5b157b50813b30208f50

攻击者地址2:

0xef9427bf15783fb8e6885f9b5f5da1fba66ef931

攻击合约:

0x1c93290202424902a5e708b95f4ba23a3f2f3cee

阿肯色州参众两院通过法案保护开采比特币的权利:金色财经报道,Bitcoin Magazine在社交媒体上称,阿肯色州参众两院通过法案保护开采比特币的权利。[2023/4/8 13:51:04]

DAOMaker受害合约:

0x41B856701BB8c24CEcE2Af10651BfAfEbb57cf49

DAOMaker受害合约deployer:0x054e71D5f096a0761dba7dBe5cEC5E2Bf898971c

DAOMaker受害合约admin:0x0eba461d9829c4e464a68d4857350476cfb6f559

攻击细节

本次攻击与往常攻击不同的是:DAOMaker受害合约(0x41)未开源,而攻击合约(0x1c)却开源了。

数字权利倡导组织敦促美国立法者保护隐私权,Ledger、Protocol Labs等组织签署公开信:1月11日消息,数字权利倡导组织Fight for the Future在其网站上发布了一封公开信,鼓励立法者保护隐私权,支持端到端加密并保护个人数据。信中提到了Filecoin、ZCash、MobileCoin和几个通信协议的名称,并敦促立法者起草并通过逾期已久的立法,重点保护人们的隐私并打击政府和商业监视。[2023/1/11 11:06:19]

Coin Center:美财政部制裁Tornado Cash或违反了正当程序及宪法权利:金色财经报道,加密货币倡导组织Coin Center发布博客文章称,美国财政部外国资产控制办公室(OFAC)制裁Tornado Cash可能在法律和宪法上存在缺陷,Coin Center表示,“我们认为OFAC通过将某些Tornado Cash智能合约地址添加到SDN列表中超越了其法律权限,这一行为可能违反了正当程序及宪法权利”。

Coin Center认为,智能合约不能成为可制裁的实体,这样的标准对全世界的代码人员来说都是危险的。文章称,“这一行动发出了一个信号,实际上似乎是为了发出一个信号,美国人不应该使用某种工具和软件,即使是完全合法的目的”。Coin Center承诺其第一步是与OFAC合作,但该组织也表示,“我们将开始与律师探讨对这一行动的法庭挑战。敬请期待。”[2022/8/16 12:27:43]

从上图开源的攻击合约以及链上记录我们可以看出:?

动态 | 中币(ZB)辟谣:“绑定谷歌验证器赠送ZB活动”,保留追究造谣者法律责任的权利:据中币(ZB)官方消息称,近期有恶意造谣者在社交媒体和社群内传播关于中币(ZB)的虚假活动消息。对于恶意造谣者,对平台造成的负面影响,中币(ZB)将保留追究造谣者法律责任的权利。请广大社群投资者擦亮双眼,认清中币(ZB)的官网网址。[2020/2/11]

1.黑客调用攻击合约(0x1c)的h函数,h函数会循环调用f函数,f函数通过DAOMaker受害合约的0x4b4f892a函数获取普通用户在受害合约(0x41)中的USDC存款数量。

2.函数h接着调用DAOMaker受害合约(0x41)的withdrawFromUser(0x50b158e4)函数,传入用户存款的用户地址、USDC地址与需要提款的数量。

Dahlia Malkhi:以太坊Casper验证方法是给富豪更多权利:分布式系统专家、VMware researcher创始人Dahlia Malkhi批评了以太坊社区2018年的Casper协议,认为它使得财富团体有了更多权利。Casper协议使得货币证明不需要像比特币那样通过计算机算力解题消耗大量能源来通过验证增加区块,而是让参与者直接验证区块并获得奖励来添加新的区块,旨在提供一种更好更绿色的算法。[2018/3/4]

3.随后DAOMaker受害合约(0x41)将合约中的USDC转移至攻击合约中(0x1c)。

通过以上行为分析我们可以发现:攻击合约(0x1c)调用了受害合约(0x41)的?withdrawFromUser函数,受害合约(0x41)就将合约管理的资金直接转给攻击合约(0x1c)。我们直接反编译受害合约(0x41)查看withdrawFromUser函数进行简单分析:

通过反编译的代码我们可以发现,此函数是有进行权限检查的,只有DAOcontracts才能调用此函数转移用户的资金。但攻击合约?(0x1c)明显不是DAO合约,因此其DAO合约必然是被攻击者替换过的。

通过链上分析我们可以清楚的看到:

1.受害合约部署者(0x05)在部署受害合约(0x41)?后于UTC4月12日08:33:45将0x0eba461d9829c4e464a68d4857350476cfb6f559?地址设置为了管理员角色:

TxHash:

0xa1b4fceb671bb70ce154a69c2f4bd6928c11d98cbcfbbff6e5cdab9961bf0e6d

2.随后受害合约部署者(0x05)通过调用revokeRole函数放弃了受害合约(0x41)管理权限:

TxHash:?

0x773613398f08ddce2cc9dcb6501adf4f5f159b4de4e9e2774a559bb1c588c1b8

3.而管理员则在UTC?8月12日01:27:39将DAO合约设置为了攻击合约(0x1c):

TxHash:?

0x2fba930502d27f9c9a2f2b9337a0149534dda7527029645752b2a6507ca6b0d6

因此攻击者才得以借助此攻击合约(0x1c)将受害合约(0x41)中用户的资金盗走。目前被盗资金被兑换成ETH转移至攻击者地址2(0xef)。

总结

本次攻击可能源于DAOMaker受害合约的管理员私钥泄漏。攻击者窃取私钥后将受害合约的DAO合约替换为了攻击合约,攻击者通过替换后的合约转走了合约中的用户资金。而由于合约部署者在设置完合约管理员后就放弃的合约管理权限,因此目前项目方可能还无法有效的取回合约控制权。

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

地球链

Gate.ioNFT:你应该知道的几种NFT基础协议

反映NFT市场情况的主要指标多集中在外部数据上,这也使得市场关注点多瞄准交易量高,使用人数多、拍卖价高的产品端,从而轻松实现“流量增值”.

[0:31ms0-2:49ms