本文作者:ErgoBTC;编译:Cointime Freya
亚洲的一家小型加密货币交易所再次遭到黑客攻击。
这次是Liquid Global。
黑客攻击事件发生后不久,社交媒体上出现了关于altcoin转移到去中心化交易所并试图混淆ETH被盗的报道。
Liquid Global黑客攻击事件与2020年Kucoin黑客攻击事件有几个相似之处,包括:
- 以亚洲的小型交易所为目标;
- 在转移被盗的BTC之前,优先转移altcoin和代币;
- 类似的BTC地址格式、钱包指纹和相关BTC的目的地。
归因过程总结
以下是我们的归因方法的概述:
- 识别大量Wasabi的流入;
- 使用Blender交易指纹识别Wasabi的流入;
- Blender指纹流回溯到BTC区块链上的起点(CEX提取和ren桥接的输出);
- 通过ren桥接找到相关的ETH活动;
- 大多数流量来自于从Tornado Cash接收100个ETH输出的地址;
- 一个桥接的BTC输出地址由一个ETH地址提供资金,该地址从黑客的地址收到ETH的gas资金;
- 发现了一个“明显的错误”,将未混合的代币活动与桥接BTC输出以及源自Liquid Global披露的一个地址的资金联系起来;
- 在确定了Liquid Global黑客攻击的链接后,我们完成了对相关混合BTC的交易量和时间分析。
下意图提供了一个归因路径的示意性概述:
起点
我们在关于Kucoin黑客攻击的报告中介绍了托管混币器:blender.io。在该报告中,我们详细描述了混币器滥用Wasabi coinjoin,试图混淆混币器的活动。
在Liquid Global黑客攻击事件中,我们预计会重复使用blender.io来清洗被盗的Liquid Global资金,并通过搜索流入Wasabi coinjoin的异常大的流量,来追踪与黑客有关的流量的踪迹。
桥接
回溯Blender的大量资金流入,导致了来自Binance提款和以太坊与BTC之间的renBTC桥接的输出。
只能使用公共区块浏览器工具的用户可以轻松地跟踪从ETH到BTC的ren协议桥接上的流量。ren销毁的交易数据字段包括BTC目标地址的UTF-8编码版本。
BTC到ETH的“确凿证据”
由于大多数基于ETH的资产进入了Tornado Cash,因此需要将与BTC相关的混币器流入与相关的Tornado Cash输出进行关联,需要对其进行量与时间分析(概率分析)
然而,这个黑客有一个“确凿证据”,可以确定地将renBTC桥接的输出链接到原始黑客ETH提款地址。这个链接总结如下:
我们的分析发现,[0x55788…](Liquid Exchange“黑客”):
- 通过此交易发送ETH以支付网络费用到地址[0xbec6f…]。
- [0xbec6f…]被用来桥接Energy Web代币,据报道,这是一种在黑客攻击期间从Liquid Global窃取的altcoin。
- 在Uniswap上,Wrapped EWT被兑换成了renBTC。
- ren被桥接到BTC地址[1Fx1bh…]。
BTC地址与账户
下面的表1包括了大多数兴趣地址的账户记录。 这些地址要么是由Liquid Global在他们的博客文章中报告的,要么是通过与黑客ETH地址相关的renBTC到Wasabi coinjoin流程发现的。
表1——感兴趣的BTC地址概览:
对这些总额进行的清算核对:
- 我们的估算总共约为1,428个BTC,价值约为6,100万美元(撰写本文时)。
- 报告的ETH兴趣地址[0x55788…和0xefb33…]的剩余代币/ETH余额价值约为1,130万美元。
- 据报道,约有1,740万美元的稳定币被冻结(参见8月20日的更新)。
- 我们的小计美元价值约为9,270万美元,这使我们的账户与原始报告的9,100万美元的被盗资金大致一致。
Btc postmix的归属
表1中记录的地址的大部分支出都遵循相同的过程。每个钱包的指纹详见表2。
注意:虽然区块链上的输出之间的关系不容置疑,但比特币地址的匿名性增加了谁才是支出的责任人的不确定性。钱包指纹识别可以作为表明新的软件(和可能的用户)现在参与观察到的交易流程的标志。
表2——相关UTXO流的钱包指纹:
这些UTXO流与我们在分析Kucoin黑客攻击时提到的流相似,只有一个微小的区别,即黑客/Accomplice钱包和Blender存款之间使用了一个“中间钱包”。
下面的交易图显示了这些观察到的流的注释的示例:
上图显示了来自ETH区块链的未混合代币的BTC交易流历史,地址为 [1FbPDx…]。
收据——重新审视Blender
Blender的混币器算法比Chipmixer等其他知名的混币器算法更为隐蔽。 Blender的算法具有以下特点:
- 没有可供观察的静态集群;
- 不重复使用地址;
- 不会创建具有相等输出足迹的交易。
如果没有这些特点,评估Blender就需要进行“图形遍历”分析,跟踪与Blender具有相同钱包指纹的交易的输入和输出。
这种分析容易产生大量的误报,并导致相邻交易图的崩溃。需要间歇性的“检查点”来验证Blender的状态和最近的交易,以便跟踪混币器UTXO的状态。
在跟踪Liquid Global黑客攻击的过程中,我们预料到黑客/同谋将使用Blender,并且与与黑客有关的资金表现出类似于处理Kucoin黑客资金的洗钱过程的模式,同时开始与Blender进行交互。
保证书
托管混币器取得用户的资金所有权。通过取得所有权,它们给用户带来了损失资金的风险。资金损失可能出现的原因包括:
- 访问钓鱼网站;
- 攻击网站/用户安全,如SSL剥离;
- 混币器软件的漏洞;
- 混币器退出骗局(故意盗取用户的代币)。
为了缓解这些顾虑,混币器将在每次启动混币时出具一份“保证书”。这些保证书由混币器的BTC“服务地址”签名,该地址的私钥由混币器的管理员控制。保证书充当一种托管链,显示了混币器存款地址所有权的加密证明和向用户提款地址的预期付款。
如果用户遇到问题,他们可以向支持人员提交保证书,以便收到预期的输出。用户还可以使用这些保证书证明资金的来源。
随后,这些保证书可以作为加密证据,用于验证我们的观察结果。
混币器的内部机制
托管混币器实际上发挥了“代币交换”服务的作用。
用户存入具有特定历史的代币,希望获得具有不同历史的代币作为回报。当用户与混币器交互时,他们无法知道他们的支付历史,直到他们收到代币。
这种特性与“污点”的原始概念有关,即使用托管混币器的用户收到与“恶意”活动相关的支出,并且后来发现自己在中心化交易所中遇到麻烦,或被执法部门错误地指控。
混币器输出历史的不可预测性还使得分析人员很难记录特定的混币器活动,并且通常需要反复尝试才能确定观察到的行为。
在跟踪Kucoin黑客攻击期间评估Blender时,我们收到了几个具有独特历史的输出。以下内容讨论了最重要的两个输出历史。
第一个是立即来自0.8 BTC Wasabi混合输出。普通用户很少会使用这些输出,因为它们的匿名性设置低于Wasabi钱包强制执行的默认值。
我们发现,我们的输出确定来自Blender交易,这表明来自Blender的资金存在于负责处理我们的Blender支付的混币中。
在另一个案例中,我们收到了一个没有与Wasabi混合的输出,而且是来自一个值得关注的地址[172hLj…]的几个跃点。该交易的收据如下所示。
下图显示了相关流程的交易图:
从我们与Blender的交互观察中可以得出以下结论:
- Blender正在滥用Wasabi coinjoin,试图隐藏其活动;
- Liquid Global黑客/同谋正在使用Blender来混淆他们的交易历史。
谜题的缺失部分——CRYPTOMIXER.IO
表1中后半部分地址中的大部分代币都是通过Blender混合的。
然而,在几个案例中,从兴趣地址列表中花费的部分BTC被发送到了P2PKH地址(一种以[1...]开头的地址格式)。这些地址表明使用了与Blender不同的混币器,Blender使用以[3…]开头的P2SH格式地址。
来自P2PKH地址的花费被合并为长的peel链。
我们在追踪2020年11月的Exmo黑客(另一个被遗忘的黑客攻击)窃取的资金时首次观察到了这种模式。这种模式也出现在我们对2020年Kucoin黑客攻击的后期分析中。
由于这是一个反复出现的模式,于是我们开始寻找负责该模式的实体。
很快我们就发现了cryptomixer.io。
Cryptomixer有一个相对简单的混币器算法。支付由来自长的“peel链”构成,通常具有以下特征:
- 有1个输入和2个输出的交易;
- 输入和改变地址的脚本类型:P2PKH;
- 交易支付输出位置:0(常量);
- 交易变更输出位置:1(常量);
- 版本号:2;
- 锁定时间:>0;
由于混币器缺乏随机性,单个Cryptomixer peel链的交易图活动可以轻松地通过一个简单的硬编码遍历脚本进行跟踪。
一般来说,随着Cryptomixer peel链余额在支付操作中减少:
剩余资金要么在没有零钱输出的交易中被“清除”,以终止peel链;要么从先前的混币器存款中提取资金,与之前的peel链输出相结合,然后继续该过程。
为了在Kucoin和Exmo黑客洗钱过程中观察到的长的peel链活动的重演,我们开始与混币器进行交互,而来自Liquid Global黑客攻击的资金开始花费到可能的P2PKH加密货币的存款地址。
这使我们能够“检查”Cryptomixer钱包和支付的状态。
与我们在上面使用Blender的经历类似,我们的Cryptomixer支付是从一个由Binance的输出资助的peel链中获取的,该输出已被列入我们的关注列表中。
攻击混币器
在确认使用Blender和Cryptomixer之后,我们开始进行另一个容量和时间分析,搜索与Liquid Global黑客攻击相关的postmix活动。
以下是我们识别来自Liquid Global黑客攻击的postmix交易的过程概述:
- 分析premix活动并建立一个Blender和Cryptomixer的存款列表,建立存款时间窗口。
- 使用图形遍历脚本分析Blender的活动,以确认被盗资金在大约存款时期的窗口期间是Blender活动的主要部分。
- 检查在此期间来自Blender的大量postmix支出,以确定重复的postmix支出模式。
- 列出所有符合此模式的提款。
- 验证存款/提款的时间线是否有效(余额不应为负数/至少不应是很大的负值)。
- 使用postmix交易图识别来自Cryptomixer的交易。
在我们感兴趣的时间范围内,Blender的活动量出现了显著的增长。
Blender的每日BTC流入和流出通常在50至100 BTC之间。在来自Liquid Global的黑客攻击的流入和流出期间,流入和流出量飙升至200和600 BTC以上。
在这个分析过程中观察到的大量postmix支出峰值通常遵循以下过程:
- 合并混合输出,使其恰好为50 BTC,并发送到地址[32P5GP…](例如TxID)。
- 来自[32P5GP…]的50个BTC输入合并为100个BTC UTXO。
- 第二次从[32P5GP…]合并多个50 BTC的输入到[3Gs9Fp…]。
- 从[3Gs9Fp…]开始,支出被发送到由交易所zb.com控制的几个地址[1DqPbz…,1Crhhc…,1DwszG…]。
地址[32P5GP…]和zb.com显然是这次大规模postmix活动的焦点,在相关时间段内收到了超过1000个BTC。
我们还注意到一个次要的大容量postmix模式,将来自Blender和cryptomixer的混合输出合并到地址[1NbiXJ…]。
这个地址从两个混币器中获得另外450 BTC,这些BTC被支付到Huobi的地址[15qRSE…]。
我们认为,地址[32P5GP…]和[1NbiXJ…]都收到了与Liquid Global黑客攻击相关的绝大部分资金。
附表格中包含了从兴趣地址到Blender和Cryptomixer的存款列表,以及“最有可能”的提款列表。
总结
- 黑客从Liquid交易所窃取资产;
- 将ETH资产与Tornado Cash混合;
- 在Binance或DeFi交易所交换altcoin;
- 通过renBTC桥接将ETH资产桥接到BTC区块链;
- 用Blender和Cryptomixer混合BTC;
- 将混合输出合并到地址[32P5GP…]和[1NbiXJ…];
结论
在我们最近的几份报告中,我们一直在评估使用多个托管混币器尝试洗钱大量交易所黑客攻击的情况。
通过观察,我们可以得出以下结论:
- 没有地址重复使用或静态集群的托管混币器,对跟踪和评估混币器活动提出了独特的挑战。
- 这些混币器需要重复交互来“检查点”和建立已知活动。通过这种交互,可以评估通用混币器算法,并使用图形遍历分析追踪过去/未来的支出。
- 我们对Cryptomixer和Blender的识别、描述和交互,可用于更好地评估未来盗窃资金的洗钱行为。
- 根据2021年Liquid Global黑客攻击事件与2020年Kucoin黑客攻击事件之间的混合模式的相似性,相同的实体也许需要对这两次黑客攻击负责。
- 分析师必须考虑到比特币的匿名性及任何不明显的支出模式。仅仅因为与黑客攻击有关的资金进入了混币器或coinjoin过程,并不意味着“黑客在使用服务X”。在这些情况下,应该考虑中间钱包指纹,因为它们可能代表处理相关资金的新钱包、用户或服务。
从我们的数量和时间分析来看,Liquid Global的postmix支出最有可能与[32P5GP…]和[1NbiXJ…]有关,然后分别发送到zb.com和Huobi。这些地址的支出应该作为继续评估Liquid Global黑客攻击事件的后续行动。
*本文由CoinTime整理编译,转载请注明来源。
所有评论