DeFi前车之鉴,复盘DeFi中的攻击逻辑
与以太坊早期相比,每次黑客攻击的平均损失价值已经明显下降。在2020年的10次攻击中,有8次的攻击金额低于100万美元。
作者:Mika Honkasalo,翻译:Liam
摘要
-
越来越多的人希望通过攻击智能合约来窃取资金,他们正在利用当智能合约组合在一起时出现的漏洞进行攻击。
-
2020年,对DeFi的攻击中,被套取或盗取的总金额已经达到了3600万美元。但因为dForce的攻击者退还了被盗的2500万美元,所以实际金额大约有 1100 万美元。
-
与以太坊早期相比,每次黑客攻击的平均损失价值已经明显下降。在2020年的10次攻击中,有8次的攻击金额低于100万美元。
与传统的网络犯罪相比,区块链上的信息对攻击者来说更有价值,因为对智能合约的成功攻击可以带来直接的经济回报。传统被黑客攻击的信息,如被盗取的个人信息,还需要通过出售来赚钱,但智能合约上是直接存有资产的。
在以太坊早期,大多数攻击都是基于找到个别漏洞,让攻击者有能力冻结或耗尽智能合约。2016年臭名昭著的DAO黑客事件就是如此,1.6亿美元的ETH被盗,以太坊最终因此分叉。同样,2017年的Parity多签袭击让黑客盗取了3000万美元,Parity钱包中1.5亿美元被冻结,都是这类漏洞造成的后果。
这类智能合约的漏洞仍不时被人利用。最近,一名攻击者成功地从代币合约中窃取了所有的VETH,仅通过耗尽VETH-ETH Uniswap池就获利了90万美元。但这是VETH造成的一个简单失误,因为VETH修改ERC20代币标准的方式有逻辑上的错误。
总的来说,现在的安全性有所提高,特别是那些关注度比较高的项目。它们的安全性提升是由于用户对审计的期望和围绕测试的工具改进推动的。最近DeFi中最大的安全问题是dForce 2500万美元的数字资产在借贷市场中被盗。然而,由于攻击者的IP地址被发现并与新加坡警方共享,因此这些资金被退了回去。
dForce的攻击也可以认为是开发团队特别严重的疏忽造成的结果,因为被利用的漏洞是重入(re-entrancy)。重入攻击是DAO被耗尽的原因,这也一直是开发者在与ERC777代币交互时需要考虑的一个众所周知的问题。
ERC777代币的一个显著特点是可以通知将接收或发送资金的智能合约–并允许合约根据这些信息采取行动。如允许用户从合约中提取所有资金,这个例子就展示了合约为何容易受到重入攻击。
想象一下,一个合约有以下四个提现步骤:
-
用户调用合同,准备从合同中提取所有的资金。
-
合约检查用户在合约中是否有资金。
-
合约将用户在合约中的资金发送给用户。
-
合约自行更新用户在合约中没有资金。
重入漏洞允许恶意用户在合同完全执行之前再次调用合同( "重入")。在上面的例子中,攻击者可以在第三步和第四步之间重新进入合约,并在用户的余额更新之前再次提取。通过重复这个过程,他们可以从合约中提取所有存在的资金。
这个原理被用来攻击dForce,当合约认为用户在持续增加imBTC抵押品(一种ERC777代币)数量的时候–然后合约就会允许用户从系统中借到更多资金。攻击者将他们假的imBTC抵押品增加到远远超过2500万美元,然后以借贷交易的方式提取出dForce中的所有流动资金。
通过可组合性(composability)进行黑客攻击
区块链上的智能合约是基于去信任(permissionless)来和用户以及其他智能合约交互的。对于那些设计智能合约的人来说,很难考虑到未来有人可能与他们的合约进行交互的每一种方式。其他人可以构建一种智能合约,以一种原作者不希望看到的方式与合约进行交互。
一个用户使用在dForce攻击中基于ERC-777标准的相同漏洞,从imBTC-ETH Uniswap池中抽走了22万美元。在Uniswap的案例中,攻击者从ETH-imBTC代币池中移出了ETH,但imBTC代币余额并没有增加。这样的操作通常会增加ETH的价格。
与dForce案例不同的是,Uniswap的开发团队在这并没有真正的责任,他们几乎不可能阻止人们落入这种类型的陷阱。即使Uniswap团队确保他们的交互界面不允许用户将流动性添加到一个可能被耗尽的池中,他们也无法阻止其他交互界面建立在允许它的智能合约之上。事实上,这种特殊的攻击方式在多年前就已经被广泛讨论过。
最近6月18日针对Balancer的攻击,就是一个类似的在特定市场中利用非标准编程模式的例子。STA是一种ERC20代币,有一种额外的通缩模型,即从每次转账中抽取1%的费用。攻击者使用智能合约在单笔交易中自动执行多个操作将WETH与STA 代币来回交换24次,耗尽了其中一个Balancer流动性池中的STA代币,直到池中只剩下0.000000000000000001 STA(1个weiSTA)。Balancer池没有意识到STA的通缩模型,并根据1 weiSTA为其资产设定了一个新的价格。之后攻击者对池中的WETH、LINK、SNX和WBTC进行了交易。通过这次攻击,使两个池子的资金损失超过了50万美金。
一天后,Balancer遭受了第二个漏洞问题,同样是由于与其他智能合约交互的意外行为造成的。Compound的代币分发要求用户通过与Compound的智能合约交互来领取自己的COMP。想要同时获得COMP和BAL(通过提供流动性赚取的Balancer代币)的用户要用COMP创建流动性池,这样他们就有资格获得这两种代币。
攻击者意识到,Balancer流动性池中的资产所产生的新COMP并不属于任何人,所以攻击者可以进入一个池中,获得这些可用的COMP代币,然后再带着比他们放入流动性池更多的钱离开。就像现在发现的漏洞情况一样,攻击者利用闪电贷来最大化自己的资本,然后获取最大收益。
利用区块链的独特属性来进行攻击
第三类攻击涉及利用区块链本身的属性。
一个长期遭受此类问题困扰的协议是Synthetix。从2019年9月到2020年2月,这个协议的套利机器人不断地在预言机更新之前运行。在Synthetix中,交易不是买卖双方通过匹配进行交易,而是针对预言机提供的价格反馈进行交易,流动性由SNX代币持有者提供。
当Synthetix的预言机在链上发布价格反馈时,机器人会通过支付高额的交易费用,在预言机有机会更新价格之前被纳入以太坊区块之中。因为这种抢占先机的套利行为,Synthetix的交易量在单日最高达到了6900万美元,而如今没有套利机会的Synthetix平均交易量仅为150万美元。
在3月12日("黑色星期四”),资金库(vault)的所有者在MakerDAO清算中意外损失830万美元,交易费用也是造成这次意外的原因之一。当MakerDAO的资金库(用户存放抵押品并生成Dai的地方)的抵押品不足时,它们的抵押品(如ETH)就会被拍卖,筹集DAI并偿还被清算资金库的债务。通常情况下,拍卖中的中标者(keepers)会用DAI来换取金库中的ETH,然后这些DAI会被销毁掉。一旦债务被还清,资金库的原主人就会收到剩余的ETH。
3月12日的时候由于ETH价格突然下跌超过50%,很多资金库进入清算程序。与此同时,以太坊的网络变得非常拥堵,gas飙升至400gwei或正常价格的20倍,这导致大多数keepers无法即时报价。有一位keeper持续触发清算,并以0美元的竞价赢得了可用的ETH。
将来存在的治理攻击?
随着项目从开发团队的集中控制转向代币持有者社区的去中心化治理,治理攻击的问题可能会变得更加普遍。理论上,区块链可能成为一个通过链上买选票来实现贿赂的绝佳工具。
买选票可以用于敌意收购,让有敌意的一方购买另一个项目的多数投票权(代币)更便宜。例如,一个借贷协议可以向另一个借贷协议的代币持有者提供折扣,让他们出售另一协议的代币来换取协议自己的代币。
敌意收购的例子已经发生在Steemit上。当这个社交媒体平台背后的团队将Steemit出售给Tron时,社区试图让Tron拥有的代币投票权失效,但这种努力最终被火币和币安等大型交易所的投票权所消除。
随着DeFi中工具的改进,攻击者的“工具箱”也变得越来越高级。闪电贷让任何拥有必要专业知识的人都可以攻击其中的一个系统,并获得更多的资本来实现利润最大化。
如果说从COMP和BAL代币发行中可以学到一件事,那就是无论什么激励方案,只要是有利可图,总会有人去钻空子。
来源:加密谷Live
比推快讯
更多 >>- 一巨鲸从3月1日至4月15日买入近2.5万枚BTC,价值达 16.8 亿美元
- Sam Altman、黄仁勋等科技巨头高管加入美国联邦人工智能安全委员会
- PENDLE 持仓第二巨鲸疑似在持有近一年后卖出 120 万枚 PENDLE ,预计获利 645 万美元
- 福克斯记者:马萨诸塞州参议员候选人John Deaton将提交法庭之友陈述,以支持Coinbase的上诉动议
- Azuki将Azuki #723捐赠给Arbitrum DAO财库
- 链上借贷协议Venus Protocol已于以太坊主网部署DAI市场
- 花旗现预计美联储将于7月降息,2024年共降息100个基点
- 零信任DePIN网络Staex完成战略轮融资,Moonrock Capital参投
- 灰度向Coinbase Prime等地址转入约1811.1枚BTC
- 比特币波动指数昨日降至60.53,日跌幅8.07%
- 美国利率期货合约交易员预计美联储九月首次降息的可能性增加
- 稳定币公司OpenDelta完成250万美元Pre-Seed轮融资
- 美国3月核心PCE物价指数年率2.8%,预期2.7%
- Web3游戏L3E7完成1000万美元融资
- 芝加哥期权交易所拟将数字资产衍生品业务整合到其全球衍生品和结算业务中
- 某鲸鱼地址将3527枚ezETH PT和3300枚ETH存入Zircuit
- Quantix Capital投资NFA Labs 1000万美美元
- Uniswap基金会向Auditless拨款120万美元以创建Protocol Grants Program
- Arthur Hayes:美财长耶伦或将推出天量流动性注入计划,加速加密牛市回归
- RWA协议The Conlony完成新一轮融资,TechStars等参投
- 名义价值93亿美元的BTC与ETH期权即将到期
- Amaranth基金会创始人花费2470万美元购买7814枚ETH
- Vitalik:PoW也相当中心化,PoW只是转向PoS之前的临时阶段
- 中国证监会科技监管司司长、信息中心主任姚前接受审查调查
- 比特币长期持有者已从1月份开始抛售仓位
- PenPad宣布获得加密投资机构Animoca Brands投资
- 富达现货比特币ETF首次录得资金流出
- 华盛证券成为首批虚拟资产现货ETF承销商
- Lava Network发布LAVA代币经济学,6.6%代币将用于API提供者奖励
- Apple工程师辞职构建以太坊Blobspace的衍生品产品
- BNB Chain宣布在BSC区块链中纳入原生流动性质押功能
- Base协议负责人:Base网络上USDC数量仅次于以太坊
- FBI 警告美国人不要使用未经注册的加密货币传输服务
- SEC 向 Consensys 发出关于 MetaMask 的 Wells 通知,称其作为无牌经纪商运营
- Pantera Capital计划为其新的加密基金筹集10亿美元
- Consensys 对 SEC 提起诉讼,以捍卫以太坊生态系统
- Axelar宣布将通过Filecoin虚拟机提供链上去中心化存储
- 金融科技巨头Stripe时隔六年后再次接受加密支付,目前支持 USDC 稳定币
- Paxos Treasury新增铸造1亿枚PYUSD
- 链上文化创意平台Spotlight完成200万美元Pre-Seed轮融资,Folius Ventures领投
- Starknet面向永续合约和期权协议开启DeFi Spring第三阶段
- 美众议院金融服务委员会高级议员:稳定币法案可能很快会出台
- Arkham:贝莱德在其 2 个 ETF 钱包中收到了超过 2万美元的符文代币空投
- 去中心化物理基础设施网络Natix完成460万美元战略融资,拟空投 10 亿枚 NATIX 代币
- Coinbase国际交易所将上线AEVO、ENA、ETHFI永续合约
- BTC突破64000美元,日内跌幅收窄至1.07%
比推专栏
更多 >>观点
项目
比推热门文章
- 一巨鲸从3月1日至4月15日买入近2.5万枚BTC,价值达 16.8 亿美元
- Sam Altman、黄仁勋等科技巨头高管加入美国联邦人工智能安全委员会
- PENDLE 持仓第二巨鲸疑似在持有近一年后卖出 120 万枚 PENDLE ,预计获利 645 万美元
- 福克斯记者:马萨诸塞州参议员候选人John Deaton将提交法庭之友陈述,以支持Coinbase的上诉动议
- Azuki将Azuki #723捐赠给Arbitrum DAO财库
- 链上借贷协议Venus Protocol已于以太坊主网部署DAI市场
- 花旗现预计美联储将于7月降息,2024年共降息100个基点
- 零信任DePIN网络Staex完成战略轮融资,Moonrock Capital参投
- 灰度向Coinbase Prime等地址转入约1811.1枚BTC
- 比特币波动指数昨日降至60.53,日跌幅8.07%