2021年08月12日,据慢雾区消息,加密孵化机构DAOMaker疑似遭受黑客攻击,导致合约大量USDC被转出。慢雾安全团队第一时间介入分析,并将分析结果分享如下。??
攻击对象
在本次攻击中,攻击者部署并开源了一个攻击合约(0x1c)用于快速批量的从DAOMaker受害合约(0x41)中窃取资金。
攻击者地址1:
0xd8428836ed2a36bd67cd5b157b50813b30208f50
攻击者地址2:
0xef9427bf15783fb8e6885f9b5f5da1fba66ef931
攻击合约:
0x1c93290202424902a5e708b95f4ba23a3f2f3cee
知识产权律师: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]
DAOMaker受害合约:
0x41B856701BB8c24CEcE2Af10651BfAfEbb57cf49
声音 | 律师刘晔:只有无限扩容、能够容纳全部现实权利数据的网络/链/币才能够生存和成长:上海市海上律师事务所合伙人刘晔在微博上表示:当世人明白数字货币的本质乃是网络上的不可篡改的记账空间,乃是与现实商品及服务(即权利)的网络映射--数据进行点对点的原子交换时,当明白,只有无限扩容,能够容纳全部现实权利数据的那一个网络、那一个链,那一个币能够生存,能够成长,而其他的不能无限扩容的链与币只能走向消亡。[2019/7/15]
DAOMaker受害合约deployer:0x054e71D5f096a0761dba7dBe5cEC5E2Bf898971c
DAOMaker受害合约admin:0x0eba461d9829c4e464a68d4857350476cfb6f559
声音 | 软件工程师Pierre Rochard:BTC持有者应拥有审查比特币代码的权利:据Ethereumworldnews消息,软件工程师Pierre Rochard发送推文称:每一个有能力这么做的比特币持有者,或者盈利的比特币业务,都应该完全拥有比特币代码审查的所有权,无论是通过自己执行代码审查,还是雇佣开发者来完成。坦率地说,没有理由不这样做。同时Pierre Rochard也表示:比特币只有在你信任代码的情况下才是不可信任的,信任代码的唯一方法是使用它。[2018/9/25]
攻击细节
本次攻击与往常攻击不同的是:DAOMaker受害合约(0x41)未开源,而攻击合约(0x1c)却开源了。
现场 | 彭枫:区块链将数据权利交还给个体:金色财经现场报道,在今日举办的金融界2018夏季达沃斯之夜+区块链思享会上,人民银行数字货币研究所规划部负责人彭枫提到,区块链将数据权利交还给个体。DLT从技术层面着手,采用签名加密等技术手段,把数据权利真正交还给了个体。通过采用零知识证明、同态加密、安全多方计算、环签名、群签名、分级证书、混币等密码学原语与方案,还可实现交易身份及内容的隐私保护。[2018/9/17]
从上图开源的攻击合约以及链上记录我们可以看出:?
1.黑客调用攻击合约(0x1c)的h函数,h函数会循环调用f函数,f函数通过DAOMaker受害合约的0x4b4f892a函数获取普通用户在受害合约(0x41)中的USDC存款数量。
2.函数h接着调用DAOMaker受害合约(0x41)的withdrawFromUser(0x50b158e4)函数,传入用户存款的用户地址、USDC地址与需要提款的数量。
ITC万物链联合创始人吕新浩:数据主权是处理自己数据资产的权利:近日,世界数字资产峰会(WDAS2018)上,ITC万物链联合创始人吕新浩指出,数据主权(data sovereignty)是处理自己数据资产(data asset)的权利。不同于数字资产(digital asset),数据资产具有难转移、归属权难界定的特点。数据资产的价值在使用中被体现,而且价值在持续产生。ITC万物链将数据资产分为基础数据和行为数据,在万物链中,用户的数据主权将得到保护并产生收益。[2018/5/2]
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合约替换为了攻击合约,攻击者通过替换后的合约转走了合约中的用户资金。而由于合约部署者在设置完合约管理员后就放弃的合约管理权限,因此目前项目方可能还无法有效的取回合约控制权。
8月20日消息,目前,在数字人民币App中能为数字人民币钱包充值的银行多达35家,涵盖股份制、城商行及部分农信社和农商行.
1900/1/1 0:00:00DeFi数据1.DeFi总市值:1255.35亿美元 市值前十币种排名数据来源DeFiboxDeFi总市值数据来源:Coingecko2.过去24小时去中心化交易所的交易量:38.
1900/1/1 0:00:00金融格局正在发生变化,中央银行也在适应这种变化。爱尔兰中央银行行长GabrielMakhlouf先生在博客中谈了他对加密货币的思考和认识,他认为在数字欧元方面的工作、欧盟监管框架的持续发展以及更.
1900/1/1 0:00:00目录我们的世界正变得虚拟Metaverse的功能:连接虚拟与现实Metaverse是什么?Metaverse的组成部分Metaverse与交互性3DDecentraland:3D虚拟空间Star.
1900/1/1 0:00:001.元宇宙是下一代互联网的“美丽新世界”8月6日到8日,美国超人气歌手ArianaGrande在全球不同地区,连续举办了5场演唱会。与众不同的是,演出的举办地点在游戏《堡垒之夜》中.
1900/1/1 0:00:00头条▌荷兰中央银行:币安被禁止在荷兰运营据荷兰央行8月18日发布的一份声明,加密货币交易所币安被禁止在荷兰运营。该央行表示,币安未能获得所需的法律注册,这意味着其服务在该国是非法的.
1900/1/1 0:00:00