CASH:慢雾 AML:“揭开” Tornado.Cash 的匿名面纱

By:慢雾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的转出进行分析,以分解出被盗资金可能流向的地址。

慢雾:JPEG'd攻击者或已将全部6106.75枚ETH归还给项目方:8月4日消息,慢雾MistTrack监测显示,JPEG'd攻击者或已将全部6106.75枚ETH归还给项目方。[2023/8/4 16:18:46]

Tornado.Cash是什么?

Tornado.Cash是一种完全去中心化的非托管协议,通过打破源地址和目标地址之间的链上链接来提高交易隐私。为了保护隐私,Tornado.Cash使用一个智能合约,接受来自一个地址的ETH和其他代币存款,并允许他们提款到不同的地址,即以隐藏发送地址的方式将ETH和其他代币发送到任何地址。这些智能合约充当混合所有存入资产的池,当你将资金放入池中时,就会生成私人凭据,证明你已执行了存款操作。而后,此私人凭据作为你提款时的私钥,合约将ETH或其他代币转移给指定的接收地址,同一用户可以使用不同的提款地址。

如何转入?

攻击得手后,黑客开始大范围地将资金分批转移到各大交易所,但还没来得及变现就被多家交易所冻结了。在经历了白忙一场的后,黑客将目光转向了DeFi。

慢雾:正协助Poly Network追查攻击者,黑客已实现439万美元主流资产变现:7月2日消息,慢雾首席信息安全官23pds在社交媒体发文表示,慢雾团队正在与Poly Network官方一起努力追查攻击者,并已找到一些线索。黑客目前已实现价值439万美元的主流资产变现。[2023/7/2 22:13:24]

据慢雾AML旗下MistTrack反追踪系统显示,黑客(0xeb31...c23)先将ERC20代币分散到不同的地址,接着使用Uniswap、1inch和Kyber将多数ERC20代币换成了ETH。

图3

大部分ERC20代币兑换成ETH后,被整合到了以下主要地址:

表1

在对ETH和ERC20代币进行完整追踪后,我们梳理出了资金是如何在黑客地址间移动,并分解出了资金是以怎样的方式进入Tornado.Cash。

图4

黑客将资金按时间先后顺序转入Tornado.Cash的详情如下:

慢雾:Equalizer Finance被黑主要在于FlashLoanProvider合约与Vault合约不兼容:据慢雾区消息,6 月 7 日,Equalizer Finance 遭受闪电贷攻击。慢雾安全团队以简讯形式将攻击原理分享如下:

1. Equalizer Finance 存在 FlashLoanProvider 与 Vault 合约,FlashLoanProvider 合约提供闪电贷服务,用户通过调用 flashLoan 函数即可通过 FlashLoanProvider 合约从 Vault 合约中借取资金,Vault 合约的资金来源于用户提供的流动性。

2. 用户可以通过 Vault 合约的 provideLiquidity/removeLiquidity 函数进行流动性提供/移除,流动性提供获得的凭证与流动性移除获得的资金都受 Vault 合约中的流动性余额与流动性凭证总供应量的比值影响。

3. 以 WBNB Vault 为例攻击者首先从 PancekeSwap 闪电贷借出 WBNB

4. 通过 FlashLoanProvider 合约进行二次 WBNB 闪电贷操作,FlashLoanProvider 会先将 WBNB Vault 合约中 WBNB 流动性转给攻击者,随后进行闪电贷回调。

5. 攻击者在二次闪电贷回调中,向 WBNB Vault 提供流动性,由于此时 WBNB Vault 中的流动性已经借出一部分给攻击者,因此流动性余额少于预期,则攻击者所能获取的流动性凭证将多于预期。

6. 攻击者先归还二次闪电贷,然后从 WBNB Vault 中移除流动性,此时由于 WBNB Vault 中的流动性已恢复正常,因此攻击者使用添加流动性获得凭证所取出的流动性数量将多于预期。

7. 攻击者通过以上方式攻击了在各个链上的 Vault 合约,耗尽了 Equalizer Finance 的流动性。

此次攻击的主要原因在于 Equalizer Finance 协议的 FlashLoanProvider 合约与 Vault 合约不兼容。慢雾安全团队建议协议在进行实际实现时应充分考虑各个模块间的兼容性。[2022/6/8 4:09:22]

表2

慢雾:Avalanche链上Zabu Finance被黑简析:据慢雾区情报,9月12日,Avalanche上Zabu Finance项目遭受闪电贷攻击,慢雾安全团队进行分析后以简讯的形式分享给大家参考:

1.攻击者首先创建两个攻击合约,随后通过攻击合约1在Pangolin将WAVAX兑换成SPORE代币,并将获得的SPORE代币抵押至ZABUFarm合约中,为后续获取ZABU代币奖励做准备。

2.攻击者通过攻击合约2从Pangolin闪电贷借出SPORE代币,随后开始不断的使用SPORE代币在ZABUFarm合约中进行`抵押/提现`操作。由于SPORE代币在转账过程中需要收取一定的手续费(SPORE合约收取),而ZABUFarm合约实际接收到的SPORE代币数量是小于攻击者传入的抵押数量的。分析中我们注意到ZABUFarm合约在用户抵押时会直接记录用户传入的抵押数量,而不是记录合约实际收到的代币数量,但ZABUFarm合约在用户提现时允许用户全部提取用户抵押时合约记录的抵押数量。这就导致了攻击者在抵押时ZABUFarm合约实际接收到的SPORE代币数量小于攻击者在提现时ZABUFarm合约转出给攻击者的代币数量。

3.攻击者正是利用了ZABUFarm合约与SPORE代币兼容性问题导致的记账缺陷,从而不断通过`抵押/提现`操作将ZABUFarm合约中的SPORE资金消耗至一个极低的数值。而ZABUFarm合约的抵押奖励正是通过累积的区块奖励除合约中抵押的SPORE代币总量参与计算的,因此当ZABUFarm合约中的SPORE代币总量降低到一个极低的数值时无疑会计算出一个极大的奖励数值。

4.攻击者通过先前已在ZABUFarm中有进行抵押的攻击合约1获取了大量的ZABU代币奖励,随后便对ZABU代币进行了抛售。

此次攻击是由于ZabuFinance的抵押模型与SPORE代币不兼容导致的,此类问题导致的攻击已经发生的多起,慢雾安全团队建议:项目抵押模型在对接通缩型代币时应记录用户在转账前后合约实际的代币变化,而不是依赖于用户传入的抵押代币数量。[2021/9/12 23:19:21]

转到了哪?

慢雾安全工程师:安全审计是目前保护DeFi项目安全最高性价比的方式:12月30日,在慢雾科技主办的Hacking Time区块链安全攻防峰会上,慢雾科技高级安全工程师yudan和Kong根据bZx最早期的两次闪电贷攻击案例,介绍了闪电贷基本的攻击形式——代币价格操纵,详细讲述了基于价格操纵的闪电贷的防御方案以及在其价格无法被操纵的情况下,如何利用闪电贷另辟蹊径,通过操纵 LP Token的单价来进行获利。并通过慢雾被黑档案库与大家一起回顾了2020 DeFi被黑事件。

yudan和Kong认为,DeFi安全形势严峻,安全审计是目前保护项目安全最高性价比的方式。在当下DeFi黑暗森林里我们在临渊而行,需如履薄冰。[2020/12/30 16:04:29]

猜想

****

巨额的ETH进入Tornado.Cash,会集中表现出一些可追踪的特征。2.以黑客急于变现的行为分析,猜想黑客将资金存入Tornado.Cash后会随即提款,或下次存入时提款。

3.分析攻击者使用洗币平台的方式和行为,可以获得资金的转移地址。

可能的链上行为

****

资金从Tornado.Cash转出的时间范围与黑客将资金转入Tornado.Cash的时间范围近似。2.一定时间段内,从Tornado.Cash转出的资金会持续转出到相同地址。

验证

****

以黑客地址(0x34a...c6b)为例:

如表2结果所述,黑客在2020-10-2316:06:28~2020-10-2610:32:24(UTC)间,以每次100ETH,存115次的方式将11,500ETH存入Tornado.Cash。为了方便说明,我们只截取了该地址在2020-10-243:00:07~6:28:33(UTC)间的存款记录,如下图:

图5

接着,我们查看_Tornado.Cash:100ETH_合约的交易记录,找到地址(0x34a...c6b)在同一时间段的存款记录,下图红框地址(0x82e...398)在此时间段内大量提款的异常行为引起了我们的注意。

图6

查看该地址(0x82e...398)在此时间段的交易哈希,发现该地址并没有将ETH提款给自己,而是作为一个合约调用者,将ETH都提款到了地址(0xa4a...22f)。

图7

图8

同样的方式,得出黑客地址(0x34a...c6b)经由Tornado.Cash提款分散到了其他地址,具体如下:

表3

经过核对,发现从Tornado.Cash提款到表3中六个地址的数额竟与黑客存款数额11,500ETH一致,这似乎验证了我们的猜想。对其他地址的分析方法同理。

接着,我们继续对这六个地址进行追踪分析。据MistTrack反追踪系统展示,黑客将部分资金以50~53ETH不等转向了ChangeNOW、CoinSwitch、Binance等交易平台,另一部分资金进入第二层后也被黑客转入了上述交易平台,试图变现。

图9

总结

本文主要说明了黑客是如何试图使用Tornado.Cash来清洗盗窃的ETH,分析结果不由得让我们思考:Tornado.Cash真的完全匿名吗?一方面,既然能分析出部分提款地址,说明不存在绝对的匿名;另一方面,匿名性是具备的,或许只是Tornado.Cash不适合在短时间内混合如此大规模的资金而已。

截止目前,KuCoin官方表示已联合交易所、项目方、执法和安全机构追回约2.4亿美元资金。从各种攻击事件看来,DeFi或许已成为黑客转移资金的通道,而今监管已至,合规化的脚步愈发逼近,有合规需求的项目方,可以考虑接入慢雾AML系统(aml.slowmist.com),即使黑客使用了DeFi,也无处遁形。

往期回顾

DeFi平台CreamFinance再遭攻击,1.3亿美金被盗

慢雾区|区块链被黑档案库升级上线

慢雾:复盘Liquid交易平台被盗9000多万美元事件

天价手续费分析:我不是真土豪

Avalanche链上闪电贷攻击事件——ZabuFinance被黑分析

慢雾导航

慢雾科技官网

https://www.slowmist.com/

慢雾区官网

https://slowmist.io/

慢雾GitHub

https://github.com/slowmist

Telegram

https://t.me/slowmistteam

Twitter

https://twitter.com/@slowmist_team

Medium

https://medium.com/@slowmist

币乎

https://bihu.com/people/586104

知识星球

https://t.zsxq.com/Q3zNvvF

火星号

http://t.cn/AiRkv4Gz

链闻号

https://www.chainnews.com/u/958260692213.htm

免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻ChainNews立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。

慢雾

慢雾

慢雾科技是一家专注区块链生态安全的国家高新技术企业,通过「威胁发现到威胁防御一体化因地制宜的安全解决方案」服务了全球许多头部或知名的项目。慢雾科技的安全解决方案包括:安全审计、威胁情报、漏洞赏金、防御部署、安全顾问等服务并配套有加密货币反、假充值漏洞扫描、漏洞监测、被黑档案库、智能合约防火墙、SafeStaking等SAAS型安全产品,已有商业客户上千家。慢雾慢雾科技慢雾AML慢雾安全Slowmist查看更多

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

金星链

比特币价格DIT:以太坊虚拟机是如何运行的?

译文出自:登链翻译计划 译者:翻译小组 校对:ARC_hunk 如果您曾尝试过在以太坊上开发智能合约,或者至少了解过相关内容,那么你也许会听说过“EVM”,该术语是“以太坊虚拟机”的缩写.

[0:15ms0-1:669ms