随着 DeFi、NFT、跨链桥等项目的火热发展,黑客攻击事件也层出不穷。有趣的是,据慢雾统计,80% 的黑客在洗币过程中都使用了混币平台 Tornado.Cash,本文以 KuCoin 被盗事件为例,试图从追踪分析过程中找到一丝揭开 Tornado.Cash 匿名性的可能。
事件概述
据 KuCoin 官网公告,北京时间 2020 年 9 月 26 日凌晨,KuCoin 交易所的热钱包地址出现大量异常的代币提现,涉及?BTC、ETH?等主流币以及 LINK、OCEN 等多种代币,牵动了无数用户的心。
图?1
据慢雾 AML 团队统计,本次事件被盗资金超 2.7 亿美元,具体如下图:
加拿大下议院:建议制定国家区块链战略,包括对消费者保护法规的全面审查:金色财经报道,加拿大下议院工业和技术常设委员会发布了一份关于区块链技术的综合报告,其中包括向加拿大政府提出的一系列支持和培育区块链和加密货币行业的建议。该报告强调了区块链技术在将未开发的经济领域数字化并引发前所未有的价值创造方面的潜力。鉴于这种潜力,委员会的第一项建议敦促政府承认区块链是一个具有可观经济和就业前景的新兴产业。
报告表示,监管环境是加拿大公司受近期事件影响较小以及此类事件在加拿大发生的可能性明显低于其他地方的主要原因。建议制定国家区块链战略,包括对消费者保护法规的全面审查,并承诺保护个人自我托管数字资产的权利。[2023/6/29 22:07:58]
图 2
值得注意的是,我们全面追踪后发现黑客在这次攻击事件中大量使用了 Tornado.Cash 来清洗 ETH。在这篇文章中,我们将着重说明黑客如何将大量 ETH 转入到 Tornado.Cash,并对 Tornado.Cash 的转出进行分析,以分解出被盗资金可能流向的地址。
美股三大指数小幅收跌,标普500指数跌0.05%:金色财经报道,美股三大指数小幅收跌,道指跌0.14%,标普500指数跌0.05%,纳指跌0.11%,热门科技股涨跌不一。地区性银行跌幅居前,硅谷国家银行跌超19%。[2023/5/2 14:37:44]
Tornado.Cash?是什么?
Tornado.Cash 是一种完全去中心化的非托管协议,通过打破源地址和目标地址之间的链上链接来提高交易隐私。为了保护隐私,Tornado.Cash 使用一个智能合约,接受来自一个地址的 ETH 和其他代币存款,并允许他们提款到不同的地址,即以隐藏发送地址的方式将 ETH 和其他代币发送到任何地址。这些智能合约充当混合所有存入资产的池,当你将资金放入池中(即存款)时,就会生成私人凭据(随机密钥),证明你已执行了存款操作。而后,此私人凭据作为你提款时的私钥,合约将 ETH 或其他代币转移给指定的接收地址,同一用户可以使用不同的提款地址。
如何转入?
攻击得手后,黑客开始大范围地将资金分批转移到各大交易所,但还没来得及变现就被多家交易所冻结了。在经历了白忙一场的后,黑客将目光转向了 DeFi。
安全团队:4月近41个黑客攻击盗取9340万美元:金色财经报道,派盾(PeckShield)监测显示,2023年4月,约有41个黑客攻击盗取9340万美元。截止4月30日,1245枚ETH与2515枚BNB被转入Tornado Cash,203枚ETH转入Fixed Float。此外,jaredfromsubway.eth从涉及PEPE的三明治攻击中获得至少140万美元收益。[2023/5/1 14:36:51]
据慢雾 AML 旗下 MistTrack 反追踪系统显示,黑客 (0xeb31...c23) 先将 ERC20 代币分散到不同的地址,接着使用 Uniswap、1inch 和 Kyber 将多数 ERC20 代币换成了 ETH。
图 3
大部分 ERC20 代币兑换成 ETH 后,被整合到了以下主要地址:
持有或丢失的比特币数量达到一个月高点:金色财经报道,据Glassnodes数据显示,持有或丢失的比特币数量刚刚达到7,529,843.961 BTC的一个月高点,此前的一个月高点为7,529,827.041 BTC。[2022/12/25 22:05:54]
表 1
在对 ETH 和 ERC20 代币进行完整追踪后,我们梳理出了资金是如何在黑客地址间移动,并分解出了资金是以怎样的方式进入 Tornado.Cash。
图 4
黑客将资金按时间先后顺序转入 Tornado.Cash 的详情如下:
表 2?
转到了哪?
Compound协议升级代码错误导致cETH被锁定7天:金色财经报道,借贷平台 Compound Finance 执行了一项治理提案,更新了包含代码错误的 Chainlink 价格信息。此代码错误导致人们借贷 cETH的交易被恢复。这意味着用户不能借入或提取抵押品。用户仍然可以偿还债务并为借入的其他资产头寸添加抵押品,以避免潜在的清算。代码错误还导致 Compound 的前端暂时停止工作。
Compound 的 CEO Robert Leshner 证实目前没有资金面临风险,用户仍然可以偿还债务并添加抵押品以避免清算。但cETH可能需要 7 天才能正常运行。可能会有更多的治理建议来纠正这种情况。[2022/8/31 12:59:28]
猜想
1.?巨额的 ETH 进入?Tornado.Cash,会集中表现出一些可追踪的特征。
2. 以黑客急于变现的行为分析,猜想黑客将资金存入 Tornado.Cash 后会随即提款,或下次存入时提款。
3. 分析攻击者使用洗币平台的方式和行为,可以获得资金的转移地址。
可能的链上行为
1. 资金从?Tornado.Cash 转出的时间范围与黑客将资金转入 Tornado.Cash 的时间范围近似(转出会延后于转入)。
2. 一定时间段内,从 Tornado.Cash?转出的资金会持续转出到相同地址。
验证
以黑客地址 (0x34a...c6b) 为例:
如表 2 结果所述,黑客在?2020-10-23 16:06:28 ~ 2020-10-26 10:32:24?(UTC) 间,以每次 100 ETH,存 115 次的方式将?11,500?ETH 存入?Tornado.Cash。为了方便说明,我们只截取了该地址在 2020-10-24 3:00:07~6:28:33 (UTC) 间的存款记录,如下图:
图 5
接着,我们查看 Tornado.Cash:100 ETH 合约的交易记录,找到地址 (0x34a...c6b) 在同一时间段(即 2020-10-24?3:00:07~6:28:33?(UTC))的存款记录,下图红框地址 (0x82e...398) 在此时间段内大量提款的异常行为引起了我们的注意。
图 6
查看该地址 (0x82e...398) 在此时间段的交易哈希,发现该地址并没有将 ETH 提款给自己,而是作为一个合约调用者,将 ETH 都提款到了地址?(0xa4a...22f)。
图 7
图 8
同样的方式,得出黑客地址 (0x34a...c6b) 经由 Tornado.Cash 提款分散到了其他地址,具体如下:
表 3
经过核对,发现从 Tornado.Cash 提款到表 3 中六个地址的数额竟与黑客存款数额 11,500 ETH 一致,这似乎验证了我们的猜想。对其他地址的分析方法同理。
接着,我们继续对这六个地址进行追踪分析。据 MistTrack 反追踪系统展示,黑客将部分资金以 50~53 ETH 不等转向了 ChangeNOW、CoinSwitch、Binance 等交易平台,另一部分资金进入第二层后也被黑客转入了上述交易平台,试图变现。
图 9
总结
本文主要说明了黑客是如何试图使用 Tornado.Cash 来清洗盗窃的 ETH,分析结果不由得让我们思考:Tornado.Cash 真的完全匿名吗?一方面,既然能分析出部分提款地址,说明不存在绝对的匿名;另一方面,匿名性是具备的,或许只是 Tornado.Cash 不适合在短时间内混合如此大规模的资金而已。
截止目前,KuCoin 官方表示已联合交易所、项目方、执法和安全机构追回约 2.4 亿美元资金。从各种攻击事件看来,DeFi 或许已成为黑客转移资金的通道,而今监管已至,合规化的脚步愈发逼近,有合规需求的项目方,可以考虑接入慢雾 AML 系统 (aml.slowmist.com),即使黑客使用了 DeFi,也无处遁形。
By:Lisa@慢雾 AML 团队
元宇宙无疑是当下炙手可热的“当红炸子鸡”。除了社交巨头Facebook毅然换“脸”更名“Meta”外,腾讯、谷歌、字节跳动、微软和百度等科技巨头也纷纷“上头”,争相奔赴元宇宙赛道.
1900/1/1 0:00:001.DeFi总市值:1778.53亿美元 DeFi总市值数据来源:Coingecko2.过去24小时去中心化交易所的交易量:53.
1900/1/1 0:00:001.金色观察 | FTX帝国大扩张 2022年收购资金或超10亿美元一周前的10月21日,FTX宣布已在B-1轮融资中筹集420,690,000美元.
1900/1/1 0:00:002021 年上半年以来,NFT 的热火从海外社区一路延展至各个领域,在数字艺术品领域的应用尤为突出。国内大厂先后试水 NFT,阿里、腾讯、字节、京东都对于这个概念展示出极大兴趣.
1900/1/1 0:00:00伴随着Facebook改名加码元宇宙,元宇宙概念股再次集体升温。11月4日元宇宙概念板块持续拉升,佳创视讯涨超12%,恒信东方、易尚展示等涨幅居前.
1900/1/1 0:00:00在DeFi巨鲸分析报告的第二部分中,我们将主要关注借贷协议,以识别这些dapp中的巨鲸模式,但也会补充币安智能链(BSC)和以太坊去中心化交易所之间的比较分析.
1900/1/1 0:00:00