慢雾 AML:“揭开” Tornado.Cash 的匿名面纱
By:Lisa@ 慢雾 AML 团队
随着 DeFi、NFT、跨链桥等项目的火热发展,黑客攻击事件也层出不穷。有趣的是,据慢雾统计,80% 的黑客在洗币过程中都使用了混币平台 Tornado.Cash,本文以 KuCoin 被盗事件为例,试图从追踪分析过程中找到一丝揭开 Tornado.Cash 匿名性的可能。
事件概述
据 KuCoin 官网公告,北京时间 2020 年 9 月 26 日凌晨,KuCoin 交易所的热钱包地址出现大量异常的代币提现,涉及 BTC、ETH 等主流币以及 LINK、OCEN 等多种代币,牵动了无数用户的心。
图 1
据慢雾 AML 团队统计,本次事件被盗资金超 2.7 亿美元,具体如下图:
图 2
值得注意的是,我们全面追踪后发现黑客在这次攻击事件中大量使用了 Tornado.Cash 来清洗 ETH。在这篇文章中,我们将着重说明黑客如何将大量 ETH 转入到 Tornado.Cash,并对 Tornado.Cash 的转出进行分析,以分解出被盗资金可能流向的地址。
Tornado.Cash 是什么?
Tornado.Cash 是一种完全去中心化的非托管协议,通过打破源地址和目标地址之间的链上链接来提高交易隐私。为了保护隐私,Tornado.Cash 使用一个智能合约,接受来自一个地址的 ETH 和其他代币存款,并允许他们提款到不同的地址,即以隐藏发送地址的方式将 ETH 和其他代币发送到任何地址。这些智能合约充当混合所有存入资产的池,当你将资金放入池中(即存款)时,就会生成私人凭据(随机密钥),证明你已执行了存款操作。而后,此私人凭据作为你提款时的私钥,合约将 ETH 或其他代币转移给指定的接收地址,同一用户可以使用不同的提款地址。
如何转入?
攻击得手后,黑客开始大范围地将资金分批转移到各大交易所,但还没来得及变现就被多家交易所冻结了。在经历了白忙一场的洗钱后,黑客将目光转向了 DeFi。
据慢雾 AML 旗下 MistTrack 反洗钱追踪系统 显示,黑客 (0xeb31...c23) 先将 ERC20 代币分散到不同的地址,接着使用 Uniswap、1inch 和 Kyber 将多数 ERC20 代币换成了 ETH。
图 3
大部分 ERC20 代币兑换成 ETH 后,被整合到了以下主要地址:
表 1
在对 ETH 和 ERC20 代币进行完整追踪后,我们梳理出了资金是如何在黑客地址间移动,并分解出了资金是以怎样的方式进入 Tornado.Cash。
图 4
黑客将资金按时间先后顺序转入 Tornado.Cash 的详情如下:
表 2
转到了哪?
猜想
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 系统 ,即使黑客使用了 DeFi,也无处遁形。
Bitcoin Price Consolidates Below Resistance, Are Dips Still Supported?
Bitcoin Price Consolidates Below Resistance, Are Dips Still Supported?
XRP, Solana, Cardano, Shiba Inu Making Up for Lost Time as Big Whale Transaction Spikes Pop Up
XRP, Solana, Cardano, Shiba Inu Making Up for Lost Time as Big Whale Transaction Spikes Pop Up
Justin Sun suspected to have purchased $160m in Ethereum
Justin Sun suspected to have purchased $160m in Ethereum