||
北京时间2020年12月6~7日,基于POW的区块链项目Aeternity上发生了51%双花攻击。攻击者从353224高度(2020-12-06 04:26:26,UTC+8)开始,挖了自己的一条未公开的私链,一直挖到353838高度(2020-12-07 10:16:33),覆盖了较短的公开链353803高度(2020-12-07 10:10:14);初步完成~2900万token的双花攻击。AEKnow从区块数据角度,尝试复盘攻击细节;便于后期防范。
2020-12-02 08:35:47 在351373高度,攻击者做了挖矿测试,成功出块。
2020-12-03 22:34:34 从352135高度开始,攻击者开始在O交易所逐渐购买用于攻击的token,持续到353153高度(2020-12-06 02:06:50),累计收集~2900万token,准备用于攻击。
2020-12-06 02:46:56 在353170高度,攻击者收集足够token后,开始挖矿测试,开始高频正常出块到353187(2020-12-06 03:04:56)。
2020-12-06 04:26:26 从353224高度开始,挖了自己的一条未公开的私链,并在2020-12-06 04:26:26挖到355255高度;而公开链在2020-12-06 04:38:38出块。这条私链一直挖到353838高度(2020-12-07 10:16:33)。
2020-12-06 04:32:50 攻击者在私链353230高度往自己钱包转账2750万token,353634高度(2020-12-07 00:30:06)转账80万token;353634高度(2020-12-07 00:30:06)转账70万token;合计约2900万token。
2020-12-06 04:45:15 攻击者在公开链353227高度上开始往O交易所逐渐充值2750万token,直到353622高度(2020-12-07 01:15:30),时间跨度20小时。353643高度(2020-12-07 02:29:54)另外两个账号分别充值70万token、80万token到交易所;合计约2900万token,在交易所内操作,部分被转出到其他交易所。
2020-12-07 10:16:33 在2020-12-07上午10点15分左右,攻击者广播了自己更长的私链,以353838的高度覆盖了较短的公开链353803高度(2020-12-07 10:10:14);初步完成双花攻击。算力仍没有立刻撤去,而是继续参与挖矿。
2020-12-08 03:08:13 攻击者算力挖出354116高度后,没有新的出块。
2020-12-07 10:16:33 攻击者广播了自己更长的私链,以353838的高度覆盖了较短的公开链353803高度(2020-12-07 10:10:14);初步完成双花攻击。
2020-12-07 11:00 H交易所检测到区块回滚,关闭充提。
2020-12-07 11:30 AE社区彭坤发出H交易所暂停提币的消息,宣布钱包维护暂停AE钱包充提;我们(AEBox、AEKnow、WeTure)初步认为H交易可能遭遇节点同步问题(根据H交易后期公告,他们发现区块回滚情况)。
2020-12-07 12:30 AE社区马良再次在群聊提出AEBox曾经成功的交易失效;我们开始深入讨论,币赢、Beepool也表示发现区块同步问题。
2020-12-07 12:57 AEKnow对比区块记录数据库和链上数据后,确认交易丢失,Beepool确认交易丢失,区块丢失,并提出极可能被51%攻击;我们开始往被51%攻击方向整理数据。
2020-12-07 14:02 经过Beepool、AEBox、AEKnow、Wetrue一个小时左右的分析讨论,基本确定被攻击情况,并初步确定嫌疑账号ak_2n9ixHr4m6KvyyVxx47QPX3zNy9AgMtgc8bnsSpmTyqV3qmAjb(ak_2VgB6KRVkpG1UwHcZufnhcFKMEwVJwBc75U6VWKko8c5GrbU1i),可疑矿工ak_cfCSt13PW2Fwsft2CVY1BMmt7XhXW3aoSH49L1xSNW8DpJDC7 以及攻击开始高度353225;初步确定关联资金2700万token,其中确定双花成功150万token;Weture和AEBox对账号做了转账标记。
2020-12-07 14:30 AE社区通知各大交易所,并在全球电报群通告了51%攻击的初步情况。交易所基本迅速应对,关闭充提。
攻击者在攻击准备工作中,在O交易所持续收集了~2900万token,提到自己的钱包;攻击发生后,成功双花的~2900万token全部进入O交易所。在攻击期间,~2680万token从O交易所提出,账面主要流入5个交易所。由于攻击结束后,攻击期间的交易全部取消并重新打包上链,部分成功交易,因此有~1687万token在最长链成功转入各交易所。如下表:
O所流出(单位:万) | |||
交易所 | 账面流入 | 实际到账 | 账面差距 |
Z | 172 | 113 | -59 |
H | 429 | 425 | -4 |
G | 943 | 581 | -362 |
B1 | 303 | 115 | -188 |
B2 | 104 | 41 | -63 |
A | 523 | 280 | -243 |
其他 | 206 | 132 | -74 |
合计 | 2680 | 1687 | -993 |
由于各交易所风控差异,攻击者在到账后操作空间不同,带来损失有所差异;无相关数据。
对POW币来说,单位时间的出币价值决定了安全的基线;AE生态的发展还处于初期,虽然有一些很好的生态项目,但整体市值有限;因此对AE来说51%攻击是个可能防范但无法避免的问题。
本次攻击中H交易所以较好的风控体系,成功抵御了双花攻击。H交易所在《Aeternity 遭51%攻击始末,交易所成为最大受害者?》一文中提到四条防范措施:
l评估充值确认数。
l大额延迟上账。
l监测到链上回滚,快速回滚到正确状态后关闭钱包充提。
l监控算力。
另外,攻击发生后,积极追踪双花币的走向。
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2023-10-1 19:38
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社