作者 | indigo
14个项目发生重大安全事件,涉及资金逾3亿美元。
这是刚刚过去5月,黑客交出的成绩单。不用细看,也能发现,币安智能链BSC成为了黑客攻击的主要目标——12个项目遭攻击,造成约2.5亿美元的损失。
自DeFi火爆以来,庞大的财富效应吸引投资者的同时也吸引着黑客,在以太坊Gas费长期居高不下、拥堵问题一直得不到解决的时候,BSC等主打高性能、低手续费的公链强势崛起,吸引了大量的资金流入,同时也吸引了黑客的目光。
不过,为什么黑客瞄准了BSC生态的项目,为什么这些攻击会如此密集的发生,这背后的真相到底是什么?
在解答这些问题之前我们不妨先回顾一下黑客事件、项目方的应对以及当前的进展。
「 12个项目被黑,2.5亿美元损失 」
1、AMM、合成资产协议Spartan Protocol
Spartan Protocol是一个BSC生态上的资产流动性协议,旨在解决现有AMM协议以及合成资产所出现的各类问题。其流动性池是此协议的核心,所有一切系统内的相关应用都离不开流动性池的支持。
5月2日,攻击者使用了6100万美元的BNB闪电贷攻击了Spartan兑换池,由于流动性份额计算不当的漏洞,攻击者从资金池中转移了约3000万美元的资金。
事件进展:发行新的SPARTA代币,并将原本未发行的2000万枚代币补偿此前因攻击遭受损失的资金池LP。
2、收益聚合器Value DeFi
Value DeFi原来名称是YFValue,是以太坊的原声协议,后来扩展到BSC上,也是收益聚合器协议。vSwap是一个基于以太坊和BSC的自动代理做市商,允许任何人创建具有灵活比率对的交易池、提供流动性,并赚取交易费用,也是Value DeFi的旗舰产品之一。
值得注意的是,vSwap fork了去中心化交易所Uniswap的代码。其中,Uniswap仅支持按50:50的价值比例添加流动性,而Value DeFi效仿Bancor允许用户按不同的价值比例投入到资金池,因而在组合过程中出现了漏洞。
在这5月5日、5月7日两次攻击发生前,Value DeFi已经被攻击足足6次了,而本次漏洞造成了约1500万美元的损失。Value DeFi原本10亿美元的锁仓量也跳水至2000万美元,跌去80%。
事件进展:官方Reserve Fund中的所有vBSWAP和来自Value DeFi部署者的205658枚BUSD将用于补偿池中的所有用户,资金池中剩余的4540 vBSWAP将被铸造用于补偿所有受影响的用户。
3、跨链收益聚合协议bEarnFi
5月16日,基于BSC的跨链收益聚合协议bEarnFi bVaults的BUSD-Alpaca策略池遭遇闪电贷攻击,池中近1086万枚BUSD被盗取。
这起事件源于其协议内部提款逻辑中的错误,该错误不一致地读取了相同的输入金额,但Bvaults Bank与其关联策略Bvaults Strategy之间的资产面额不同。Bvaults Bank的提款逻辑是假定提款金额以BUSD计价,而Bvaults Strategy的提款逻辑是假定提款金额以ibBUSD计价,但ibBUSD是带息的代币,与BUSD存在价差。
事件进展:bEarn Fi将分为两个阶段对此前被攻击损失的近1100万BUSD进行补偿。目前进行第一阶段:bEarn Fi更新了界面,用户可通过访问bEarn Fi,连接钱包点击提款按钮以领取赔偿。第二阶段将在未来进行,团队需要时间来为用户损失的另一部分资金建立赔偿系统。团队将按照承诺按总额的105%补偿漏洞受害者的巨额资金损失,但团队表示目前没有足够的经济能力立即补偿,建议使用剩余的DAO资金以及该团队的未来薪金和运营资金来补偿用户损失。
4、借贷协议Venus Protocol
Venus是BSC最大的借贷项目,存款额最高的时候超过150亿美元,几乎和同时期的Aave的存款额相当。
Venus饱受诟病,包括上线初期随意添加CAN代币作为抵押物,导致3000个BTC被借空,XVS代币价格也因此暴跌;未经提醒收取提款手续费,导致BSC上大量机枪池遭受不同程度的损失;项目进展缓慢,对社区投资者的诉求不尊重等等。
如果说此前的“CAN事件”的发生是团队经验不足,5月19日发生的“抵押XVS恶意借贷”则说明团队在犯错后没有丝毫悔改,更有可能是内部人员故意为之。
根据官方给出的报告显示,本次大额清算的主要原因为:其Swipe OTC系统被滥用,向XVS买方和BTC卖方下达了几个大的OTC订单。由于遭遇清算,0xef044开头的账户净损失达到6600万美元。自1月以来,该账户已积累130万枚XVS,但在本次事件中损失了全部资金。5月19日当天,XVS在现货市场的买入量约为1.77亿美元,卖方获利约5500万美元。之后,清算人利用闪电贷低价买入抵押品,持续进行套利,导致了协议进行了大量的链上清算,Venus平台也产生了超过1亿美元的坏账,数以百计的用户遭受了损失和清算。
事件进展:Venus Grants计划将拿出大约120万枚XVS到场外交易市场,并通过交易对手换成BTC和ETH并存回协议。这些XVS将在不少于3个月内逐步清算,以尽量减少对XVS持有者的影响。另外,Swipe将和Venus的资源与团队完全隔离,并关闭旧的OTC业务,Venus 原有的团队和管理层也将重组。
5、收益聚合器PancakeBunnyPancakeBunny是BSC上最大的机枪池,也是曾经DeFi领域最大的机枪池,锁仓量最高的时候超过75亿美元。它的最大功劳就是帮助PancakeSwap锁住了CAKE代币的流动性,推动CAKE市值的不断走高。
由于PancakeBunny使用了PancakeSwap来进行资产价格计算的,5月20日,攻击者于利用闪电贷操纵了PancakeSwap中BNB-BUSDT和BNB-BUNNY池的资产价格,导致PancakeBunny协议损失了114631枚BNB和697245枚BUNNY,BUNNY代币也被黑客大量铸造并抛售,价格从240美元闪崩,一度跌破2美元。
事件进展:PancakeBunny将通过发行新代币pBUNNY并创建补偿池,补偿BUNNY原始持有者由于代币价格大跌造成的损失。
6、Bogged Finance
基于BSC的DeFi协议Bogged Finance旨在提供去中心化的链上预言机和代码执行。5月22日,BOG代币的合约质押功能漏洞遭遇了闪电贷攻击,黑客利用Pancake Pair Swap代码,在合约验证完成前提取了质押收益,导致铸造了超过1500万枚BOG代币,而这些代币大部分原本应该分配给BOG的质押者。
初始的BOG代币合约对所有交易都收取交易额的5%作为手续费,其中4%按比例分配给流动性提供者,1%被销毁。然而,在此次攻击中,该合约对所执行的交易仅收取了1%的交易额作为交易费用,分配给包括攻击者在内的流动性提供者额外的4%作为奖励,攻击者通过闪电贷加大质押的金额,并不断地自我转账使得质押奖励通胀。
受攻击事件的影响,BOG的价格闪崩,险些归零,从8.5美元跌至0.15美元,跌幅达到98%,损失约300万美元。
事件进展:官方发布了代币重启计划,现已完成快照和开启空投,并将于UTC时间5月31日21:00启动预质押和认领、UTC时间6月1日21:00重新开启BOG交易。BOG合约地址以0xd7开头的旧BOG代币将不再具有价值,将迁移至新BOG代币合约(0xB0开头)。
7、指数基金DeFi 100
5月23日,DeFi指数基金DeFi 100的官网显示:“我们欺骗了你们,但你们做什么都没用了。”随后官方确认,因遭受黑客攻击,DeFi 100损失了超过3200万美元。
官方也表示,如此狂妄的言论是黑客制造的,但这一切是真被盗还是监守自盗,我们无法解析黑暗的一面。
处理方式:官方计划重启项目。
8、收益聚合、固定利率协议Auto Shark
5月24日,基于BSC的固定利率、收益聚合协议AutoShark Finance遭到闪电贷攻击,损失金额约80万美元。
攻击源于在LP价值错误和手续费获取错误的情况下,Shark Minter合约最后在计算攻击者的贡献的时候计算出了一个非常大的值,导致SharkMinter合约为攻击者铸造出了大量的SHARK代币,致使其币价闪崩,从1.2美元快速跌至0.01美元,险些归零。
可以说Auto Shark不仅Fork了PancakeBunny的代码,其被攻击的手法也与PancakeBunny如出一辙。
事件进展:官方表示将发行新代币JAWS补偿受损用户。
9、收益聚合器Merlin Finance
在Auto Shark遭到攻击不到48小时后,也就是5月26日,BSC生态自动收益聚合器Merlin Finance遭到黑客的同源攻击。攻击者通过调用函数getReward()抬高了LP代币的价值,获得了额外价值4500万美元的BUNNY奖励。
事件进展:团队将向用户空投补偿代币cMERL,该代币持有者将能够从补偿池中获得BNB奖励。同时,额外的开发团队资金将被用于执行销毁和回购活动,以恢复代币价格。
10、AMM协议BurgerSwap、JulSwap
5月28日,基于BSC的链上首个自主治理协议BergerSwap遭到闪电贷攻击,攻击者利用重入攻击,在智能合约正常启动第二次存入之前,调用_update()函数,致使协议有超过432874个BURGER代币被盗。
当日,另一个AMM协议JulSwap也遭到类似攻击,币价最高下跌90%。
值得注意的是,BurgerSwap和JulSwap的代码都是Fork Uniswap的,但似乎它们并没有完全理解Uniswap背后的逻辑。
事件进展:计划发行cBURGER以赔偿在此前闪电贷攻击中收到损失的用户。BurgerSwap将依据攻击前持有BURGER LP数量进行cBURGER空投,并创建一个价值700万美元的BURGER/cBURGER补偿金池,用户可将获得的cBURGER质押进该池获得补偿。补偿将在 90 天内线性释放,补偿金将使用原本分配给团队的BURGER与BurgerSwap产生的收入来支付。
11、链上多策略收益优化AMM协议Belt Finance
Belt Finance是以太坊稳定币兑换协议Curve Finance的Fork版本。5月30日,攻击者通过重复买卖BUSD并利用bEllipsisBUSD策略余额计算中的漏洞操纵了beltBUSD的价格进行获利。
根据事故报告,本次攻击黑客共获利623万美元。Belt Finance的BUSD金库用户遭受了21.36%的资金损失,4Belt池的用户遭受了5.51%的资金损失,而其他资金池或保险库则没有受到影响。
事件进展:在攻击发生之后,官方表示将在接下来的48小时内恢复取款和存款,并发布补偿计划。截至目前,仍未有具体赔偿措施公布。
「 黑客事件背后的“真相” 」
DeFi玩家们都知道,2020年下半年,以太坊链上的项目也经历过⼤规模的闪电贷攻击,利用预言机操纵价格、重入攻击等等都造成了无数的资金损失。
背靠币安这座大山并作为以太坊的“二层网络”,BSC上的新项⽬虽然蓬勃发展,资金体量也不断飙升,但一些项目却没有“敬畏心”,在黑客面前成了“人傻钱多”的优质攻击目标:
不少项目简单fork以太坊生态协议的代码,肆意的组合不同协议,在他人的代码上进行微创新,或是本就没有长期做项目的“初心”。
要知道,随着DeFi在协议的可组合性方面愈发丰富,如果没有完全理解原协议背后的逻辑,进行随意的组合或创新,过程中的排斥性就会出现,从⽽导致潜在的漏洞和⻛险,给予黑客可乘之机。
区块链安全公司PeckShield派盾在接受深链财经的采访表示,从BSC安全事件的攻击共性来看,攻击者⼤多从已知的漏洞下⼿,经过不断地试验,找到漏⽹之⻥。
例如,PancakeBunny遭到攻击后,Fork其代码的AutoShark、Merlin接连遭受同源攻击。
而从攻击⼿法来看,攻击者并不需要太⾼的技术和资⾦⻔槛,只要耐⼼地将同源漏洞在Fork PancakeBunny的DeFi协议上重复试验就能捞上可观的⼀笔。
在传统的条件下,黑客们攻击金融系统时所凭借的主要是他们在计算机技术上的优势,而在现有的DeFi生态下,由于各链、各应用之间的互通性还并不是那么好,因此跨链、跨应用之间的套利机率可能较大。这时,即使一个计算机本领不那么强的人,只要他有足够的金融知识和足够的市场嗅觉,就也可以成为黑客,对DeFi系统进行攻击。
另外,相比以太坊上高昂的Gas费,黑客在BSC链上进行攻击的成本可能最多只需要几百美元。
值得注意的是,近几次发生的闪电贷攻击,攻击者在获利后,都通过Nerve协议(Anyswap)的跨链桥将所获资产快速转移到以太坊上并将资产重新投⼊到DeFi的流动性挖矿中,或通过Tornado.cash等隐私协议将资产转⾛。DeFi领域的技术创新也衍⽣出新型洗钱⽅式,对于反洗钱提出了新的挑战。
不过,跟闪电贷一样,跨链桥本身是⼀种创新,它并不是⼀种恶意⼯具,它打破了各类加密资产的流通存在的壁垒,协助资产⾃由流动以及公链交互,进⽽使得DeFi能够⾛向纵深发展。
这也给开发者带来了考验,只有不断提升自身协议的安全系数、积累代码安全的经验后,才能从容地防范和应对黑客的攻击。
「 黑客事件的警示 」
频频发生的黑客攻击事件给DeFi开发团队们亮起了警示灯,毕竟没有玩家愿意将自己的资金放在一个有漏洞的项目上,区块链世界也是用脚投票。
事实上,The Block数据也显示,因为黑客攻击事件,BSC已有部分锁仓资金回流至以太坊,总锁仓量回落至20亿美元。
对于DeFi项目开发团队而言,需要提⾼安全意识,不能只是简单的复制其他协议的代码,务必⾃查逻辑,排除可能的漏洞,或寻求专业代码审计团队的帮助。
PeckShield派盾表示,新合约上线之前除了要进⾏全⾯⽽专业的智能合约安全审计,排查已知的各类漏洞外,还要注意排查与其他DeFi产品进⾏组合时的业务逻辑漏洞,避免出现跨合约等逻辑兼容性漏洞。
另外,更重要的是要引入一定的风控熔断机制,引⼊第三⽅安全公司的威胁感知情报和数据态势情报服务等,做到第⼀时间响应安全⻛险,及时排查封堵安全攻击。
在攻击事件发⽣时,应联动⾏业各⽅⼒量,搭建⼀套完善的资产追踪机制,事后需做到查缺补漏,完善防御系统。
所有的DeFi协议都存在着变数,即使⼀个协议被⾮常彻底地进⾏多次审计,但是⼀个⼩的更新也会让静态的审计变得毫无疑义。
不光是DeFi协议的安全事件频发,随着各种应用落地,区块链数字资产引发的安全问题总体呈上升趋势,加密资产犯罪五花八门,盗币、诈骗、洗钱等案件频发,各种原因造成的“黑天鹅”事件也层出不穷。
区块链既是未知的,又是充满可能性的。如何让区块链迸发出更大的能量,如何规避和抵御各种风险和问题将是一个永恒的话题,而这也需要从业者一同努力。