Poly Network惊天盗币案,敲响DeFi安全警钟

2021-08-24, 07:47


【摘要】2021年8月10号,跨链互操作协议Poly Network突然遭到黑客攻击,损失金额高达6.1亿美元。然而就在几天后,黑客称将归还盗取的所有资金。本文将以此次黑客攻击事件为切口,为您提供一些关于DeFi安全性问题的思考。首先,本文将按照事件顺序梳理此次黑客攻击事件的始末,同时还将编译黑客的部分留言供读者参考。接着,本文将通过简要分析黑客是如何利用Poly Netword的合约漏洞盗取资金的。最后,本文将介绍DeFi领域常见的三种攻击和中心化交易所在安全性上的优势。

关键Poly Network,跨链协议,白帽攻击,DeFi(去中心化金融),重入攻击

导语

2021年8月10日晚,跨链互操作协议Poly Network在推特上发文,声称其平台突遭黑客攻击。攻击者从以太坊、BSC、Polygon 三条链上分别盗走了 2.7 亿、2.5 亿、8500 万美元的加密资产,Poly Network损失总额高达 6.1 亿美元,上万用户受到波及,甚至有业内大佬亏损上亿美元。
虽然黑客攻击事件在币圈屡见不鲜,但是数额如此之大的还属首次。很快,这个加密货币历史上涉案金额最大的盗币案引起了全网关注。那么,这次惊天盗币案的事件始末究竟如何?为什么跨链协议Poly Network成为黑客攻击的靶子?我们能从这次事件中获得什么反思吗?作为用户,在币圈交易投资中要怎么降低安全风险呢? 本文将为您提供关于DeFi安全性问题的思考。


一波三折

首先,我们来一起梳理一下此次黑客攻击事件的始末。
2021年8月10日,跨链互操作协议Poly Network官方发推特,宣布其遭到黑客攻击。超过6.1亿美元的加密资产被盗,并且被转移到三个地址。其中,转移到 0x0D6e2 开头币安智能链地址的资金超过2.5 亿美元,转移到0xC8a65 开头的以太坊地址资金超过 2.7 亿美元,转移到 Polygon地址的资金超过 8500 万美元。并且,Poly Network 还公布了持有被盗资产的账户,并呼吁交易所和矿工将来自这些地址的代币列入黑名单。


随后,USDT的发行方Tether发推特称已经冻结了攻击Poly Network 的黑客地址3300万USDT。有意思的是,一个名为 hanashiro.eth 的地址向黑客地址发送信息,提醒他USDT已被冻结。而这名黑客收到信息后,向该地址转了13.37ETH。于是,众多投机者纷纷前来,向黑客地址发送信息表忠心,希望得到奖赏。
与此同时,Poly Network一边通过链上链下信息追踪攻击者的邮箱、IP等相关的身份线索,一边持续在官方推特发文,试图和攻击者交涉。他们发推敬告攻击者,称此次被盗取的金额数量庞大,攻击者不管身处哪个国家,都将受到法律的制裁。并且劝黑客尽早归还所盗资产,和Poly Network一起商议出一个对双方都有利的解决方案。


对此,攻击Poly Network的黑客却表示自己对钱不感兴趣。根据Etherscan显示,8月11日,黑客通过一笔链上交易备注,宣布自己准备归还所有赃款,但是没法联系到Poly Network官方,因此希望Poly Network提供一个多签钱包。在Poly Network提供多签钱包后,黑客居然真的开始陆续归还其盗取的加密资产。截至8月12日,除了被冻结的3300万USDT,其余资产已经悉数归还。至此,这个历时50多个小时的黑客攻击事件算是暂时告一段落。


盗亦有道

不过,黑客似乎不满足于这次事件就此结束,8月11日,他通过以太坊网络转账留言,以自问自答的形式导演了一出采访,阐述了自己进行这次攻击的动机和一些细节。笔者在这里对黑客的部分自述进行编译并且摘录在下面,留给看客自行评判。
问:为啥要搞黑客攻击?
答:就好玩儿呗。
问:为啥选择攻击 Poly Network呢?
答:跨链现在很火。
问:为啥要转出代币?
答:发现这个Bug的时候,我心情复杂。扪心自问,要是你面对这么一大笔钱,你会怎么做?客气地请项目团队修复这个漏洞吗?这可是10亿美金!任何人都有可能成为叛徒,所以我谁也不信。我能想到的唯一办法就是把这些钱存到一个我信任的账户,同时保证我自己是匿名安全的。现在大家都嗅到阴谋的气息了,说我是内部人员?我不是,但谁知道呢?在真正的内部人士隐藏利用这个漏洞之前,我把它暴露出来了。
问:为啥又把钱还回来了?
答:这一直都是我的计划啊!我对钱不感兴趣的!我知道,被黑客攻击很让人难受,但是他们难道不应该从这些攻击事件中学到点儿什么吗?我已经在午夜前宣布了我的归还计划,所以那些愿意相信我的人应该能睡个好觉。
问:为啥要退款?怂啦?
答:随便你们怎么想吧。当你评判别人的时候,你不是在定义他们,你是在定义你自己。我已经做了我最在意的事儿:黑客攻击和为他人提供方向。很少有黑客明白DeFi安全性的困境。没错,你可能看到过多起黑客攻击事件,但是大多数都不怎么让人愉快。通常,一些很蠢的代码导致巨额损失,但是攻击的过程没什么挑战性,就像跟小孩儿打架一样。

我承认,这次攻击Poly Network其实也没有你们想的那么花哨,但是从这个项目中,我的确获得了一些崭新的体验。我想说,找出Poly Network架构中的漏洞会是我这辈子最好的时刻之一。
随着加密行业的发展,我已经赚够钱了。这段时间我一直在探索生命的意义。我希望我的人生充满独一无二的冒险,所以我喜欢学习和破解一切,和命运抗争。SEIN ZUM TODE(在这里黑客写了一句德语,是德国哲学家海德格尔说过的一句话,意为“向死而生”)

说实话,我的确有点动机不纯,我想用这笔资金做一些很酷且无害的事儿,比如DAO。然后我突然意识到,成为道德领袖可能会是我能达到的最酷的成就!此处应有掌声!



以上就是对黑客自问自答的部分摘录编译,如果对黑客回应的全文感兴趣,可以移步推特。
不得不说,这位“不差钱”的白帽先生真的是个戏精,陆续作出了8个part的回应说明,对于自己进行黑客攻击的动机、返还资金的原因、对Poly Network团队的看法甚至各种细节都作出了详细的解释,并且还自称道德领袖。
然而,虽然这次白帽攻击并未造成Poly Network项目方直接损失钱财,却依然在加密世界掀起了轩然大波,人们对DeFi的安全性产生了无可避免的质疑。

以子之矛,攻子之盾

黑客攻击事件发生后,各大安全技术团队纷纷开始分析Poly Network被盗6.1亿美元的原因。安全公司BlockSec在其分析报告中称,被攻击的原因可能是用于跨链签名的私钥泄露或者签名程序存在逻辑漏洞。随后,慢雾安全团队则表示,网传的私钥泄露这一说法并不可靠,攻击者是通过精心构建数据修改了跨链合约中的Keeper签名,从而将资金转移到指定地址。


从Poly Network白皮书中,我们可以看出跨链交易是怎么实现的,Poly Chain是整个多链架构的中继器,用户在源链上发起的跨链交易都需要通过Poly Chain将区块头信息同步到目标链,进而执行用户发起的交易。
同时,Poly Network会在各个链上部署一系列智能合约用来验证区块头信息。比如,在以太坊上,参与管理的三个Poly Network合约分别是:以太坊跨链管理器、以太坊资产代理、以太坊跨链数据。存储在以太坊跨链数据合约中的重要变量决定了哪个地址是Keeper,这个Keeper有能力从持有所有 Polynetwork 资产的以太坊资产代理合约中提取资金。
有人这样概括这次黑客攻击事件:黑客用伪造的房产证,从物业那里拿到了真的钥匙,将房子洗劫一空。而根据慢雾安全团队作出的技术分析,整个攻击流程大致分为两个阶段:修改Keeper签名和随意盗币。
首先,黑客通过调用crossChain函数构造数据,在源链上发起了一笔跨链交易,这是一笔无效交易。然而,没有充分检查,源链Relayer就毫无防备地把它同步到了中继器 Poly Chain,继而通过中继器同步到目标链Relayer。之后,中继器将这笔交易纳入了联盟链的哈希树并签字。
接着,黑客在目标链上用刚刚拿到的有效哈希证明,调用Poly Network的ECCM合约,获取了Keeper公钥并拿到了keeper地址。到这一步,黑客就可以自由执行修改Keeper的操作了。最后,获取Keeper权限后,黑客就可以将资产都转移到自己指定的地址了。

阿喀琉斯之踵 & 达摩克利斯之剑

近来,跨链相关协议接连发生攻击事件,频次较以前明显增多。那么,为什么跨链会成为黑客攻击的靶子呢?跨链的弱点在何处?首先,正如黑客留言里说的,“因为跨链很火”,随着这一赛道的飞速发展,资本涌入,链上资金快速膨胀。其次,跨链赛道尚处于起步阶段,很多细节还有待优化,此次攻击就是由于智能合约存在漏洞,被黑客钻了空子。并且,跨链相关的协议通常会涉及到多条链,各个合约之间的交互流程也十分复杂,因此风险系数会比较大。
随着黑客将所有资金退回,此次攻击事件基本落下帷幕。事后,Poly Network也宣布启动智能合约漏洞赏金计划,每个有效漏洞的发现者将获得10万美元奖金。能够亡羊补牢固然为时未晚,但如果可以未雨绸缪,复盘反思跨链和DeFi安全问题,将能够有效避免可能的损失。


在DeFi项目中,最常见的三种攻击分别是预言机攻击、重入攻击和代码攻击。

预言机攻击

在说明预言机攻击之前,有几个概念要需要提前说明。首先是预言机。绝大部分DeFi合约是无法获取自身合约外有关数字货币价格信息的,需要另一个协议将外部的价格信息交给它。而负责导入数字货币价格信息的协议就是预言机。其次是闪电贷。闪电贷是一种无须抵押物的借贷形式,用户可以在无抵押的状态下迅速借出大量资金。但是要求贷款人必须在同一交易中将贷款还给借款人。
而预言机攻击是指攻击者通过篡改预言机报价,干扰其他DeFi项目的应用,从而进行套利攻击的行为。在此类攻击中,攻击者通常会利用闪电贷从其他项目中获取大量货币,然后在DeFi项目进行各种金融操作,再利用被篡改的价格信息,实现套利。Valley、Cheese Bank、Wrap Finance都曾经遭受过预言机攻击。

重入攻击

智能合约可以实现内部与外部合约函数的调用。在调用过程中,攻击者可以篡改合约调用的内容和参数,让调用函数的接受者施行攻击者设定的行为。相对于预言机攻击,重入攻击的损害性更高,导致的损失规模更大。重入攻击可以轻而易举的盗取合约内所有资产。 此次Poly Network遭受的攻击就是智能合约攻击。

代码攻击

代码攻击又叫做合约漏洞攻击或者代码漏洞攻击。攻击者利用项目开发者在编写合约时留下的代码漏洞攻击合约。一种比较常见的代码攻击就是利用合约的漏洞,提取合约中资金池的流动货币,最终导致合约的冻结。作为目前规模最大的去中心化交易所UNISWAP就曾经遭受过代码攻击,攻击者利用UNISWAP的代码漏洞盗取了1278个以太坊。
近几年来,DeFi领域发展速度惊人,黑客攻击事件也层出不穷。正如黑客在留言中说的,我们难道不应该从这么多的攻击事件中学到些什么吗?DeFi的确颇有前景,但是安全问题就像达摩克利斯之剑,永远悬停在DeFi领域上方,一日不解决,项目方和用户就一日不安心。

结语

那么对于用户来说,除了DeFi,有没有在安全性方面更好的选择呢?
大家不妨将目光转回中心化交易所。相较去中心化金融项目,可靠的中心化交易所往往能在保证安全性的同时保证较高的收益率,并且,用户参与交易、理财的难度也较低。作为全球历史最长和交易量最大的交易平台之一,Gate.io深知区块链资产安全的重要性,始终把用户资产安全放在首位,投入大量资金,通过中心化和去中心化双重手段保障用户资产安全,始终致力于为广大用户提供安全、简便的投资方案和创新产品。Gate.io也是权威第三方机构CER评定的全球最安全的平台之一,在区块链行业迅猛发展的大背景下,受到更多主流媒体和机构的关注,也获得越来越多的用户信任。
Gate.io平台上线了一系列优质理财产品,如流动性挖矿、双币宝等。流动性挖矿是Gate.io近日上线的拳头产品,在Gate.io未来发展规划中扮演的重要角色,有着全球顶级的安全保障。在平台的大力支持下,Gate.io流动性挖矿很有可能成为目前低迷市场行情下最好的加密货币理财产品之一。
点击链接了解Gate.io流动性挖矿:
重磅:Gate.io流动性挖矿会是当下最好的投资产品吗?
科普: 投资流动性挖矿产品 你必须知道的几件事儿
流动性挖矿科普:流动性有多重要?从做市商谈起
作者:Gate.io研究员 Ashley. H
*本文仅代表观察员观点,不构成任何投资建议。
*本文内容为原创,版权为Gate.io所有,如需转载请注明作者和出处,否则将追究法律责任。




分享一下
gate logo
荣誉积分榜
完成动态任务,升级荣誉等级