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

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

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

攻击者地址 1:

0xd8428836ed2a36bd67cd5b157b50813b30208f50

攻击者地址 2:

0xef9427bf15783fb8e6885f9b5f5da1fba66ef931

攻击合约:

0x1c93290202424902a5e708b95f4ba23a3f2f3cee

穆长春:央行数字货币保证储户的提现权利:金色财经报道,中国人民银行数字货币研究所所长穆长春指出,在现钞时代,中央银行主导现金和准备金的供给,并掌握向银行体系提供增量流动性权力,当储户将现金存入商业银行的存款账户时,商业银行在负债端增加了存款并缴纳法定存款准备金,这笔现金被商业银行存入中央银行的金库时,在资产端增加的是在中央银行的准备金,由于法定存款准备金率小于1,那么商业银行获得现金存款的最终结果是支持了商业银行信贷业务的发展。

“尽管从记账上看,一笔贷款产生的同时,增加了借款人在同一家银行账户上的存款,这给人一种贷款创造存款的幻觉,但从根本上说,是法定货币创造了银行的信用货币,可以说银行的信用货币也类似于央行货币。”穆长春表示,“随着电子支付的发展,商业支付工具逐渐替代物理现金,未来,商业电子支付工具可能全面满足数字经济社会的需求并完全替代现钞。如果没有央行数字货币的发行,那么储户在无现金社会就失去了提现的权利。”[2023/9/4 13:15:42]

DAO Maker 受害合约:

知识产权律师:Yuga Labs拥有BAYC版权及授予BAYC NFT持有者使用其IP的权利:2月1日消息,与多个NFT项目密切合作的长期版权和知识产权律师Jeremy Goldman发文解释有关Yuga Labs向持有人授予IP许可是否有效的问题。

Goldman表示,首先Yuga Labs拥有BAYC的版权,当原创作品被固定在有形的表达媒介中时,版权自动产生,其中包括存储在计算机内存中的数字艺术,无论是否经过行政注册。其次,Yuga Labs拥有与BAYC NFT相关的数字艺术品的版权,并有权授予BAYC NFT持有者对数字艺术品的所有权以及将艺术品用于商业和其他目的的许可。[2023/2/1 11:40:00]

0x41B856701BB8c24CEcE2Af10651BfAfEbb57cf49

谢翔:隐私是人类的基本权利,不分链上和链下,都是同等重要:在今日的《金色深核》线上直播中,针对“ 现在对计算开销和存储开销大多都是预设,如果利用链来实现应用,那怎样判断需要一条什么样的区块链,输出能力、算力多少可行?是保护区块链链上的隐私更重要,还是保护链下的隐私更重要?”PlatON 算法科学家谢翔表示链的能力评估其实很难的一个事情,并不是简单的从tps或者开销层面能够说清楚的事。我们现在碰到更多的问题反而是稳定性,激励机制和治理机制等等。区块链给了密码学技术一个充分应用的平台,在区块链上面的问题解决之后,才有可能集成更多的应用。隐私是人类的基本权利,不分链上和链下,都是同等重要。[2020/3/11]

DAO Maker 受害合约 deployer:0x054e71D5f096a0761dba7dBe5cEC5E2Bf898971c

声音 | 软件工程师Pierre Rochard:BTC持有者应拥有审查比特币代码的权利:据Ethereumworldnews消息,软件工程师Pierre Rochard发送推文称:每一个有能力这么做的比特币持有者,或者盈利的比特币业务,都应该完全拥有比特币代码审查的所有权,无论是通过自己执行代码审查,还是雇佣开发者来完成。坦率地说,没有理由不这样做。同时Pierre Rochard也表示:比特币只有在你信任代码的情况下才是不可信任的,信任代码的唯一方法是使用它。[2018/9/25]

DAO Maker 受害合约 admin:0x0eba461d9829c4e464a68d4857350476cfb6f559

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

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

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

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

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

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

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

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

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

Tx Hash:

0xa1b4fceb671bb70ce154a69c2f4bd6928c11d98cbcfbbff6e5cdab9961bf0e6d

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

Tx Hash:?

0x773613398f08ddce2cc9dcb6501adf4f5f159b4de4e9e2774a559bb1c588c1b8

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

0x2fba930502d27f9c9a2f2b9337a0149534dda7527029645752b2a6507ca6b0d6

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

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

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

大币网

GateioAVE:游戏进化之路 Metaverse的特征及难题_Spheroid Universe

最近最出圈的概念应该非元宇宙莫属了,这点除了从链上数据得到佐证之外,观看国内外元宇宙相关社区的活跃度和日常与同行的交流中也能很明显的感知出来。在近期拜读完一些Metaverse文章和体验完多个链游之后,我们希望站在一个加密行业从业者和曾经的“网瘾少年”的角度发表一些个人对于Metaverse的看法。

[0:15ms0-9:205ms