2021年08月12日,据慢雾区消息,加密孵化机构DAOMaker疑似遭受黑客攻击,导致合约大量USDC被转出。慢雾安全团队第一时间介入分析,并将分析结果分享如下。
攻击对象
在本次攻击中,攻击者部署并开源了一个攻击合约(0x1c)用于快速批量的从DAOMaker受害合约(0x41)中窃取资金。
攻击者地址1:
0xd8428836ed2a36bd67cd5b157b50813b30208f50
攻击者地址2:
0xef9427bf15783fb8e6885f9b5f5da1fba66ef931
攻击合约:
0x1c93290202424902a5e708b95f4ba23a3f2f3cee
SBF:不会放弃反对引渡到美国的权利:金色财经报道,SBF周二告诉巴哈马法官,他不会放弃反对引渡到美国的权利。周二上午,SBF出现在巴哈马拿骚的法庭上,将面临美国的引渡令,罪名是联邦指控电汇欺诈、共谋和其他指控。SBF于周一晚上在拿骚被捕,此前一名地方法官应美国检察官办公室的要求签署了紧急逮捕令。
SBF的巴哈马律师敦促法官考虑允许SBF以现金保释,理由是他的客户没有逃跑风险。律师告诉法庭,SBF已经成为巴哈马的永久居民多年(SBF自2021年以来一直居住在奥尔巴尼),并拥有“不动产”。据报道,SBF的律师已申请保释。(CoinDesk)[2022/12/14 21:42:57]
DAOMaker受害合约:
0x41B856701BB8c24CEcE2Af10651BfAfEbb57cf49
欧盟委员会提出发展数字技术的权利和原则:1月26日消息,欧盟委员会提出发展数字技术的权利和原则,数字技术措施旨在确保公平、安全的网络环境。(金十)[2022/1/26 9:15:13]
DAOMaker受害合约deployer:0x054e71D5f096a0761dba7dBe5cEC5E2Bf898971c
DAOMaker受害合约admin:0x0eba461d9829c4e464a68d4857350476cfb6f559
攻击细节
本次攻击与往常攻击不同的是:DAOMaker受害合约(0x41)未开源,而攻击合约(0x1c)却开源了。
数字权利倡导组织:加密税收规则修正案从根本上误解了加密货币的运作方式:金色财经报道,数字权利倡导组织“为未来而战”今天表示,不会支持参议员Mark Warner、Rob Portman及Kyrsten Sinema制定的加密税收规则修正案。据该组织称,拟议的修正案得到了“彻底的反对”,作为该法案的可能解决方案,该修正案“从根本上误解了加密货币和权力下放的运作方式”。该组织称,原始条款和Portman修正案从根本上误解了去中心化技术是去中心化的。他们所制定的法律完全行不通,要求这个生态系统中的许多人产生他们从未拥有也无法访问的数据。该组织声称,拜登政府和该修正案的民主党支持者“都没有在去中心化技术方面做足功课”。[2021/8/7 1:39:57]
从上图开源的攻击合约以及链上记录我们可以看出:
声音 | BM: Voice 的独立价值主张不会被侵蚀 每个人都有同等权利:据 IMEOS 报道,BM 昨晚在电报群互动解答成员们对 Voice 平台的一些疑问 1.成员提到如果 Voice 代币可以被购买那么平台的独立价值主张就会被侵蚀,大广告商就会入驻并拿走许多可见性。BM:它不会被侵蚀,每个人都有平等权利被倾听。人们只有转让和出售的权利。 2.成员提到广告商和营销机构将在网络上招募有影响力的人,用户的代币将被批量购买,并且可见性将被那些资本最多的人拥有。BM:UBI 的好处就是有影响力的人无法保持他们的影响力,尤其是当他们使用他们的 Voice 时他们就烧毁了代币。代币的设计旨在确保人们随时时间推移仍然保持控制力,如果他们放弃控制的话他们获得报酬。 3.Voice 代币是固定供应量吗?BM:不是。 4.你认为 Voice 是 URI 吗?BM:是的。 5.如果 Steem 可以没有 KYC 通过法规,那么为什么不能使用 BM 的唯一身份解决方案取代政府 ID。BM:因为有一个中心化因素。 6.Build On EOS 代表着 B1 与 EOS 扩展的巨大一致性。[2019/6/4]
1.黑客调用攻击合约(0x1c)的h函数,h函数会循环调用f函数,f函数通过DAOMaker受害合约的0x4b4f892a函数获取普通用户在受害合约(0x41)中的USDC存款数量。
动态 | NEM与OATH Protocol合作以保护用户在DApp中的权利:据koinalert消息,资产管理平台NEM(XEM)与OATH Protocol达成合作。OATH Protocol是一个致力于构建分散的、标准的、可扩展的不可知公共链协议的项目。此外,它旨在保护用户DApp的权利和资产。NEM中国领导人Steve Li表示,“ OATH Protocol是一种创新方式,可以让NEM在投票方面获得更好的体验”。[2018/10/4]
2.函数h接着调用DAOMaker受害合约(0x41)的withdrawFromUser(0x50b158e4)函数,传入用户存款的用户地址、USDC地址与需要提款的数量。
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.而管理员则在UTC8月12日01:27:39将DAO合约设置为了攻击合约(0x1c):
TxHash:
0x2fba930502d27f9c9a2f2b9337a0149534dda7527029645752b2a6507ca6b0d6
因此攻击者才得以借助此攻击合约(0x1c)将受害合约(0x41)中用户的资金盗走。目前被盗资金被兑换成ETH转移至攻击者地址2(0xef)。
总结
本次攻击可能源于DAOMaker受害合约的管理员私钥泄漏。攻击者窃取私钥后将受害合约的DAO合约替换为了攻击合约,攻击者通过替换后的合约转走了合约中的用户资金。而由于合约部署者在设置完合约管理员后就放弃的合约管理权限,因此目前项目方可能还无法有效的取回合约控制权。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。